使用函数服务定时关闭华为公有云虚拟机
需求
在公有云开了测试或开发服务器,但是到了晚上下班后,或周末就不用了,有时候忘记关机,导致资源浪费。
因此考虑通过函数服务调用华为云ECS接口,定时到点就关闭虚拟机。
Kubernetes Pod 设置 Docker run 的 shm_size 参数
shm_size
docker run 默认的共享内存大小 /dev/shm 为 64M,某些场景想增加此挂载目录的大小,在swarm或直接docker run的方式,通过 --shm_size=xxxM 方式可以设置共享内存大小。
但是通过 Kubernetes 创建的 Pod 无法指定 docker run 的参数,具体讨论可参考 issue-28272。
建议通过 mount 一个介质为 Memory 的 EmptyDir 方式变通解决此问题。
云服务厂商 Function 能力对比
Levels of support
There are three levels of support:
Generally available (GA) - Fully supported and approved for production use.
Preview - Not yet supported but is expected to reach GA status in the future.
No - Not support
DotNet应用开发技术栈
.net 应用的市场份额还不小,结合当前的docker技术,很多.net应用也希望能够运行在docker中。
.net 应用运行在docker内有两种选择:
Docker on Windows
Docker on Linux
SQLServer-Express版本Docker镜像通过K8S部署失败
最近在给一个客户做windows docker image,需要把SQLServer也运行在Docker内,使用SQLServer Express版本(免费,但是只能使用2G内存),发现微软官方SQLServer Express版本镜像,通过Kubernetes部署失败。
SQLServer中文字符集Docker镜像
最近在给一个客户做windows docker image,需要把SQLServer也运行在Docker内,发现官方的SQLServer 镜像不支持中文字符集,因此基于官方的Dockerfile修改了一个。
Linux网络发包与收包过程
Linux网络协议栈
Linux内核提供了抽象的网络通信协议栈,用户空间的应用通过系统调用的方式,使用内核协议栈能力,完成网络通信。
Linux内核提供的协议栈接口是socket,socket在Linux中归属于文件系统的一部分,因此网络通信可以被看做是对文件的读写,使得应用程序控制网络与控制文件一样方便。
Internet上有很多文章介绍Linux网络协议栈,这里的内容也是各种文章汇总,感谢总结与分享的人。
Linux网络包过滤Net Filter原理
网络包过滤 net filter是Linux网络协议栈中hook的实现,内核协议栈在处理网络包的时候,会回调hook,通过net filter提供的hook实现,可以达到修改包头部信息、包内容等信息。
IPVS、SNAT、DNAT都是通过net filter来实现的,用户态的配置net filter工具有iptables、ipvs、ipset等。
共计 128 篇文章,16 页。