我正在尝试使用Kubernetes和Jenkins实现CI/CD管道。现在,我正在探索使用Jenkins文件、带有Docker的SVN存储库的CI部件。将Docker映像推入注册表停靠中心后,我需要将其部署到一个具有3个集群主程序和15个工作机器/节点的Kubernetes集群中。
当我阅读部署到Kubernetes集群时,我有几个疑问:
Jenkins中的每个部署定义都是使用shell脚本编写的。如果我需要为这些部署创建我的部署和服务,我如何在Jenkins中定义?在哪里可以为ReplicaSet、创建YAML/YML文件?为此,我需要使用shell脚本吗?还是用其他方法?
发布于 2018-05-05 07:17:36
您可以使用库伯奈特斯赫尔姆在称为Helm图表的可参数化模块中定义您想要旋转的内容。许多图表可用于诸如nginx和postgresql这样的通用软件。这允许一种以“基础设施为代码”的工作方式--声明性地指定您想要的东西,而不是使用脚本从当前的状态手动地使集群进入所需的状态,只需依靠Helm为您做到这一点!这是Helm的一个很好的用例。
发布于 2018-05-22 07:58:56
我们正在开发一个名为Jenkins X的开源项目,这是Jenkins基金会的一个子项目,目的是使用Jenkins管道和GitOps在Kubernetes上实现CI/CD的自动化,以便跨环境进行升级。
如果您想了解如何在Kubernetes上的多个环境中自动化CI/CD,使用helm进行包管理,使用GitOps在环境之间进行升级,以及在Pull请求上预览环境,那么您可能需要查看我最近在英国DevOxx谈詹金斯X的演讲,我在GKE上做了一个这方面的现场演示。虽然Jenkins在AWS、AKS和GKE以及其他kubernetes团簇上工作。
https://stackoverflow.com/questions/50185921
复制相似问题