美文网首页
金丹境-第2层 使用Helm 搭建devops流程

金丹境-第2层 使用Helm 搭建devops流程

作者: 一笑醉红颜zh | 来源:发表于2019-11-13 16:34 被阅读0次

    DevOps 概述

    结为金丹客,方为我辈人。

    DevOps 是什么?

    DevOps(Development和Operations的组合词)是一种重视“软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。——维基百科

    也就是说,其实DevOps 的重点在于提高开发和运维的效率,其中主要分为2部分,持续集成(CI) 和持续部署(CD),CI侧重于对于开发铜须代码质量的把控,CD侧重于运维同学交付的标准和结果。 CI 和CD结合在一起,才能产生高性能,低错误的一套交付流程。

    在使用过程中,对于开发研发的新功能,持续集成最终通过满足CD条件,即可直接进入CD部署环节,实现代码迭代升级的持续化。在软件开发过程中,无论是开发人员,测试人员,运维人员,项目管理人员等,均可从此流程中获取各个职位关注的信息,减少了因为沟通或者环境或人为因素带来 的错误,极大的提升效率。

    image.png

    对于K8S 的支持

    很多公司使用jenkins 作为CI 的平台,或者也有gitlab 的CICD pipeline 来实现devops 标准,但是和 k8s 结合起来的并不多。 CICD流程的容器化其实在k8s 是非常容易实现的,但是可能搭建的难度稍微高一点,这里成功的阻碍了大多数公司的devops流程的容器化。

    通过结合CI 工具(如jenkins ,argo ,travis-ci ,drone )完成持续集成之后,结合Helm 工具,可以更加简化k8s 的部署流程,对于运维来说,更加透明化。

    思路

    准备条件

    • 代码存储,一般公司有自己的gitlab或gitee,难道还有用svn 的?
    • 提交规范,参考git-flow 规范
    • 静态检查,参考sonarqube 或者其他的静态代码检查工具
    • 单元测试, 不同的build 工具,可以自行寻找组件,一般比较多
    • 项目容器化, 简单点就是项目自己维护自己的Dockerfile, 复杂点用插件
    • nexus 私服
    • 镜像仓库, 可以使用阿里云或者其他的,自己搭建harbor也可以,但是一定是最终网络和k8s 集群的机器是可以互通的
    • build 环境,Docker引擎的支持,Jenkins-X master-slave 集群,以及各种工具镜像,如maven ,gradle 等。
    • 基础镜像的支持,一般公司都会有自己的企业基础镜像吧,这样后期改点东西比较简单
    • helm 工具,helm 环境
    • 整个流程遵循pipeline 规范
    • 遵循pipeline ,需要一个共享存储服务,可以使用nfs 搭建或者ceph

    以上,所有的组件均可以在k8s 平台上实现。

    使用Helm 安装Jenkins

    相关文章

      网友评论

          本文标题:金丹境-第2层 使用Helm 搭建devops流程

          本文链接:https://www.haomeiwen.com/subject/byxavctx.html