SDE(Software Defined Environment) 平台的搭建。我们使用Ansible + Gitlab + Vagrant等技术搭建了一套自动化运维体系,其中应用到了DevOps理念和技术,应用和服务的运维过程由原本的手工+脚本方式成功过渡到了“本地开发+自动化构建和测试+一键部署意见回滚”模式,无论是运维变更的效率还是质量都更上一层楼,使得整个团队的运维人员都能从重复运维过程中解放出来,去做更有价值的事情,比如性能调优,问题提前判断和预防等等。
本人在国内团队担任技术leader,负责方案探索,技术交流,任务分配,生产力掌控,上下级沟通交流,日常系统开发等任务。
项目中使用的技术:
Gitlab —— 代码管理和代码审核平台,由我们团队自己搭建管理,自己负责HA方案
Gitlab-Runner —— 流水线工具,大部分流程被抽象出来放到单独的脚本内,针对不同项目定制开发不同的流水线
Ansible-Tower —— 部署工具,一键部署和一件回滚
Ansible + Python —— 配置管理工具,所有运维的项目都转成Ansible的配置项,通过Ansible自带的资源完成大部分工作,通过Python编写自定义的功能库
Vagrant —— 操作系统镜像管理,虚拟机服务器的启停
Git+Githooks —— 构建本地开发环境,通过多种不同功能的hook触发本地代码检查功能,最大程度的减少把低质量代码传到服务器上的可能性
(Chef+Jenkins —— 我们曾经使用过的配置管理工具,因为各种原因转向了Ansible + Gitlab Runner)