DevOps管理和工作
DevOps概念
DevOps主要任务:缩短市场响应时间, 减少技术债务,消除脆弱性
自动化是DevOps价值流 实施和优化过程的重要手段
DevOps工作内容
a. DevOps整体管理
1.提出项目DevOps计划,并实施
2.跟management team有效沟通
b. 基础设施管理
1.从项目角度,提出基础设施优化建议。
2.配合架构师实施优化。
3.跟Platform team有效沟通
Devops 在项目里可能会分为 基础设施DevOps 和 业务DevOps, 可能是两个team,一个侧重云平台基础设施,另一个侧重Business Application
c. DevOps环境及pipeline流程管理 (详见c1,c2)
1.跟pipeline有关的各环境维护
2.Pipeline维护优化
3.跟pipeline相关的team有效沟通,Dev team, Test Team, other teams.
c1. DevOps环境管理相关工作
根据具体项目需求,维护各种环境及相关中间件。项目不同环境可能运行在不同平台上,比如一个典型的云迁移项目,需要使用云平台,其中部分应用需要部署到云平台上面的容器化平台中(这里可能是云平台自带的容器saas服务,也可能是自己搭建的容器化平台),另外一些中间件可能不需要部署到容器化中,而只需要部署在云平台的intance中。另外迁移项目一般会涉及一些无法迁移的,只能保留在本地数据中心的 legacy 应用。如何保证这些运行在不同平台上,相同环境中的应用高效通信,稳定运行,是DevOps需要做的。另外在不同的环境中都包含这些平台和应用的情况下,我们如何快速的搭建相关环境,如何有效的管理各种环境,都需要研究。
环境类型: dev, sit, uat, stg, pre-prod, prod
平台类型:云平台,容器平台(k8s,docker),本地数据中心。
中间件(按功能分):网络(nginx,kong,Ingress,Istio), 监控(Prometheus, grafana),日志(ELK,EFK,elasticsearch,kibana,filebeat,logstash),管理(Rancher, kubesphere)其他(redis,kafka,cert-manage)
相关工具:docker, Ansible, Terraform
c2. pipeline流程管理相关工作
根据项目需求,自动化项目中的CI/CD及其他各种流程. 使用合适的pipeline工具(比如Jenkins)来合理的规划针对不同环境的CI/CD自动化流程。
创建Pipeline(CI/CD):自动化项目的镜像打包部署流程。
CI: 把开发写的代码打包成镜像
相关流程:按一定规则自动触发构建过程,生成镜像,存放到镜像仓库
相关工具:Git,Sonarqube, 各语言对应的打包工具,Harbor
CD:把镜像部署到各个环境
相关流程:按要求从镜像仓库拉取镜像,部署到对应的环境中
相关工具:helm, kubectl, oc, customize
Pipeline工具:Jenkins,ArgoCD, 各个云平台自带工具

浙公网安备 33010602011771号