1.熟悉aws的生态系统,如ec2 elb vpc cloudformation等
2.熟悉集中配置管理工具puppet
3.熟练使用shell脚本编程,并熟悉运用awk、sed等脚本辅助工具
4.熟悉nginx的配置
5.熟悉jenkins,能根据不同的需求利用脚本语言(shell or python)/makefile 构建发布系统
6.对ISO七层模型有一定了解,熟悉tcp/ip协议栈
使用jenkins,makefile,shell,aws cloudformation,puppet构建公司的发布和基础环境配置系统
基础环境配置:
首先通过jenkins这个入口调用makefile来执行构建,大致步骤如下:
1.通过aws-cli调用cloudformation的服务来创建stack,aws的资源配置都写在一个json模板中,如ec2,SecurityGroup,IAM,AMI,subnet,磁盘,cpu等等
2.通过调用puppet来安装系统的基础软件,如nginx,php等(根据需求来安装)
发布系统:
同样jenkins作为入口调用makefile来执行构建,大致步骤:
1.通过aws-cli调用ec2-describe-instances(使用jenkins传入的参数)来获取stack
2.通过ssh和xargs并发的在目标机器上执行在makefile中定义好的target,即根据需求定义好的发布操作