1.1. Kubernetes应用运维实践

1.1.1. 应用容器化

  1. 不建议使用Apline镜像

早期很多文章或者书籍推荐使用Apline镜像来制作应用镜像,优点是体积小,在实际生产环境中,我们发现使用Apline镜像由于缺少的依赖毕竟多,最终的镜像大小并不比其它基础镜像的小,反而不利于一些生产环境的调试工作。

  1. Dockerfile版本控制

Dockerfile建议提交在项目代码仓库的根目录,或者在代码仓库创建docker的目录。在该目录下放置Dockerfile,并且需要完整的README.md,写清楚镜像的构建。

1.1.2. 应用标准化

  1. 使用Helm进行包管理

生产环境极力推荐使用Helm进行包管理,将应用打包标准化,Helm支持以应用的维度进行升级和回滚。不管什么原因无法使用Helm,那么底线是所有的Kubernetes YAML文件必须使用Git进行版本空着,绝对不能允许随便放一个YAML文件在服务器上进行创建和维护。

  1. 使用命名空间进行资源隔离

生产环境建议给命名空间设置LimitRange,设置默认的容器request和limit配置。

1.1.3. 其它建议

  1. 不要使用第三方工具进行集群部署

不推荐使用第三方工具进行集群部署,可以使用第三分工具进行集群的管理。部署建议使用官方提供的kubeadm,方便后续升级和维护,除非你可以阅读第三方安装工具的源码,实现升级无忧。

  1. 给其它部门提供图形化操作界面

即便运维同学喜欢命令行,也必须要给其它部门的同事提供基于图形化界面的管理方式,例如开发进行日志查看和一些紧急调试,推荐Rancher。

Copyright © 赵班长@新运维社区 2019 all right reserved,powered by Gitbook该文件修订时间: 2024-07-30 12:41:47

results matching ""

    No results matching ""