ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

持续集成两个主流组合:svn+jenkins+docker和gitlab+jenkins+k8s

持续集成两个主流组合:svn+jenkins+docker和gitlab+jenkins+k8s 持续集成环境给自动化测试以及敏捷实施提供了很大的支持。而主流的持续集成方案有两种1、svnjenkinsdockersvn负责代码版本维护而jenkins负责构建而docker则负责镜像管理以及运行容器跑应用。2、gitlabjenkinsk8s大致工作流程手动/自动构建- Jenkins 调度 K8S API-动态生成 Jenkins Slave pod- Slave pod 拉取 Git 代码编译打包镜像-推送到镜像仓库 Harbor- Slave 工作完成Pod 自动销毁-部署到测试或生产 Kubernetes平台。完全自动化无需人工干预优点服务高可用当 Jenkins Master 出现故障时Kubernetes 会自动创建一个新的 Jenkins Master容器并且将 Volume 分配给新创建的容器保证数据不丢失从而达到集群服务高可用。动态伸缩合理使用资源每次运行 Job 时会自动创建一个 Jenkins SlaveJob 完成后Slave 自动注销并删除容器资源自动释放而且 Kubernetes 会根据每个资源的使用情况动态分配Slave 到空闲的节点上创建降低出现因某节点资源利用率高还排队等待在该节点的情况。扩展性好当 Kubernetes 集群的资源严重不足而导致 Job 排队等待时可以很容易的添加一个 Kubernetes Node 到集群中从而实现扩展。
返回列表