devops-工具选型

前言

上一篇写的 一般devops中 研发部分的流程
这一篇记录一下 我自己喜欢用的一些devops的工具

https://www.cnblogs.com/zgq123456/articles/12015027.html 这个博客里面基本上算是包含了大多数工具的名字了 真正使用的没这么多

个人常用工具列表

名称功能备注
jenkins持续集成工具来控制整个持续集成流程和调度的 建立工作流管道、`使用script pipe模式 可以实现复杂的需求
gitlabgit仓库+缺陷跟踪+持续集成gitlab 主要功能是做git仓库 也可以做持续集成相关工作 相对来说比jenkins简单一点
githubactions(持续集成)、packages(成品仓库)、issue(缺陷跟踪)等等功能github没啥说的 功能齐全 基本上包含整个devops过程
nexus成品仓库用来保存和管理各种打包之后的文件 如 jar、npm 包、 docker 镜像、yum/apt包等等
harbor repository镜像仓库保存和管理docker镜像的仓库
docker容器使用docker作为基础容器
swarmdocker编排工具小规模集群、简单场景下使用 例如10台以内服务器
k8s容器编排工具大规模集群、复杂场景使用,不局限于docker容器 可以使用其他符合oci标准的容器
jira缺陷管理工具
禅道项目管理工具跟踪管理整个项目的工具
confluence文档管理工具
rancherk8s管理工具用来管理k8s的工具
postman接口测试工具可以配合server 做自动化测试
jmeter测试工具编写jmeter脚本进行自动化测试
zabbix监控工具主要监控服务器相关参数
prometheus监控主要监控k8s和应用
grafana仪表盘配合prometheus使用查看监控数据
efkelastic search + filebeat + kibana日志组件 配合mq使用更好
sonar qube代码质量检测代码质量检测 和依赖漏洞检测(owasp)

上面的工具都是业内相关的有名的工具 直接去对应官网查看文档即可

常用工具组合

  • gitlab + nexus + k8s + jira/禅道 + postman/jmeter + efk +监控组件(zabbix、prometheus+grafana) + sonar qube
    gitlab 作为代码仓库 + 持续集成 工具 也可以做部分缺陷跟踪功能 但是没有jira 和禅道那么完善
    nexus 做代码软件包 容器镜像的仓库
    k8s 做运行环境和容器编排管理
    jira或者禅道用来做缺陷跟踪和项目管理
    postman或者jmeter 用来做自动化测试
    efk 提供实时日志
    监控组件(zabbix、prometheus+grafana) 用来监控服务器 应用 和报警等相关功能
    sonar qube 代码质量检测和依赖漏洞检测平台
  • svn/git + jenkins + jira/禅道 + postman/jmeter + nexus + harbor repository + k8s/swarm + efk +监控组件(zabbix、prometheus+grafana) + sonar qube
    svn或者git 作为代码仓库
    jenkins 持续集成 工具
    nexus 做代码软件包的仓库
    harbor repository 做容器镜像仓库 因为harbor 管理容器镜像比较方便一点
    k8s/swarm 做运行环境和容器编排管理
    jira或者禅道用来做缺陷跟踪和项目管理
    postman或者jmeter 用来做自动化测试
    efk 提供实时日志
    监控组件(zabbix、prometheus+grafana) 用来监控服务器 应用 和报警等相关功能
    sonar qube 代码质量检测和依赖漏洞检测平台

总结

在做devops相关建设的时候 总是要面临很多选择
按照优先级 优先做到快速发布
后面慢慢补充 缺陷跟踪 代码审查 服务监控
要经常看各种工具的更新日志 方便进行升级调整适配
总的来说 就是合理利用工具提高 代码编写到生产产出的速度 利用自动化工具减少人工介入 避免重复性劳动

------ 本文结束 ------

版权声明
ming创作并维护,博客采用CC协议
本文首发于ming 博客( https://blog.xujiuming.com ),版权所有,转载请注明出处!