接触自动化运维工具也有半年了,就此做一个总结。如果有不妥之处,欢迎各位牛人批评指正。
到底该不该放弃传统的服务器脚本部署或者手动部署方式,投入自动化运维工具的怀抱?
虽然现在使用自动化运维工具已经成为主流趋势,但是对于一个之前都是采用传统方式部署代码,又没有相关专业运维人员的项目组而言,这确实是一个比较头疼的问题。到底该不该转身投入自动化运维工具的麾下?如果投靠,又该选择哪个部落?如果投靠该部落,又该选用部落提供的哪项技能傍身?
首先,我们通常会选择以下几种传统部署方式:
- 纯手工 scp 或者用脚本
- 纯手工登录服务器 git pull/svn update
- 纯手工 ftp 上传
- 开发提供压缩包,rz 上传,解压
上述传统部署方式缺点:
- 全程运维参与,占用大量时间
(而小公司而言,一般都是开发人员开发完之后直接上传部署,别问我为什么知道。。。) - 上传速度慢
- 人为失误多,管理混乱
而且这种方式部署,一般只能是固定一个人来完成。如果换其他人,因为部署流程比较复杂,上手慢,而且综合考虑,服务器上的应用都是已经上线的产品,新人部署,不确定因素过多,主管一般都不太放心。所以我们就考虑能否有一个自动化的工具: