最近,这些技术已经在项目中使用。让我介绍一些有价值的想法。
首先,结论如下:
1。k8s是一款非常好的技术,非常稳定。如果发现正在运行的pod数量不等于用户设置的期望值,k8s将自动创建或删除pod,直到它们相等为止。这不仅确保了服务的不间断运行,而且还动态地扩展了服务规范。用户只需要调整pod的复制次数,剩下的留给k8s,这很容易让人担心。
2.使用jenkins集成命令行操作,虽然我个人比较喜欢使用命令行,但我不得不承认,使用jenkins集成命令行操作将大大提高工作效率。
实现步骤如下:(本文以azure平台为例)
1。写dockerfile
2。在jenkins中创建任务并执行包含以下命令的脚本
2.1git将源代码拉到本地
2.2dockerbuild命令生成映像文件
2.3docker定义映像文件版本号并上载到azure平台
2.4kubectl命令创建k8s部署和服务。
每个版本2.5update,可以调用updateimage来编译新的镜像版本并提供给k8s
注意,在创建k8s的部署和服务时,需要用yaml格式编写配置文件。部署配置包括名称、映像文件地址、最大和最小cpu分配值、最大和最小内存分配值等。服务配置文件包括名称、引用的部署名称以及是否使用负载平衡器。
有关更多详细信息,请参阅我的wikihttps://github.com/faminghou/mywiki