自动化运维思路、方法请教

谢邀,很久没上了。
首先要理解什么是运维自动化,所谓的运维自动化实际上就是某些运维过程的自动化,比如初始化自动化、测试/部署自动化,加监控自动化,简单报警处理自动化,业务降级/恢复自动化....集腋成裘,慢慢的让系统可以承担更多的重复劳动,减少人力投入和学习成本。
通常来说,200台机器其实是一个比较小的规模,在这个量级上,运维自动化的需求主要是部署自动化,如果你掌握着真实的物理机集群,并且有一群听你话的RD,那么研究研究Openstack+Docker应该是个不错的选择,作为一个广受社区吹捧的容器服务框架,关于他的测试/部署自动化的文章简直不要太多。官网blog也有不少,你可以去看看;如果你是在维护一个伟大的或者尾大不掉的系统,那么需要研究现有的部署架构和方法,然后再选择合适的自动化部署系统,这方面jenkins,hudson, go之类的也挺多的,自己写也不复杂,前提是你有人力。
加监控自动化什么的,就取决于你选什么监控系统,是不是自己搭建了,如果自己搭建的话,搭建前务必看看他是怎么加的,是否支持API,然后想想上线系统是不是可以自动化实现,剩下的就是调研验证and写脚本了;如果是买的商业监控系统,问售后要解决方案就是了。
简单报警处理自动化和监控有关联,报警触发的时候回调,然后执行相应处理脚本就好了,当然要是监控系统太挫的话,也只能你自己脚本或程序实现故障发现了。业务降级/恢复自动化就靠和开发一块协作了,他给升级降级的方法,你负责关联故障。
装机/初始化自动化这个,看你公司机器变动频率够不够高了,如果一年没几台增加,没必要花太多精力,如果天天加机器,那还是研究kickstart/WDS之类的东西吧,另外这些系统是资源进入运维管理的第一站,和CMDB的接驳也是要早规划的。
这些事情说起来不难,实际上从零开始的话,牵扯的事情其实挺多的,比如部署的标准化(以简化你的各个自动化系统)、CMDB的建设和维护,业务程序打包和监控接口的配合调整,产品版本控制系统的建设和接驳.... 目前世界上还没有完全意义上的运维自动化,就看你能把多少自动化了,and切记:
1. 不要为了自动化而自动化,而是要找出最消耗你时间的事情然后自动化之,如此往复。
2. 不要贪恋web化,你会发现你会时常面临web化的呼声,每当这时,请保持冷静,考虑风险和收益再做决断

■网友
自动化运维方案,要看你们公司投入的程度与时间了。。首先肯定是 1. 标准化运维环境 2. 技能掌握的话, 一提到自动化运维,肯定是 python 啦...3. Ansible, 自写脚本,都是不错的选择,毕竟你就200台服务器。4. 其实现在很多开源 堡垒机 就可以做到你的要求。。这里就不打广告,你自动搜索 开源堡垒机
■网友
我个人总结了一些从无到有的建设经验,可以参考下:
一些小团队的自动化运维实践经验

■网友
您好,欢迎试用行云管家自动化运维,联系在线客服可以免费获取试用券。
自动化运维主要是让简单的工作程序化,让重复的工作自动化。是一组将静态的设备结构转化为根据IT服务需求动态弹性响应的策略,目的就是实现IT运维的质量,降低成本。可以说自动化一定是IT运维最高层面的重要属性之一,但不是全部。
行云管家自动化运维工具有以下几大功能,但不是全部:
1、丰富的预设脚本库,轻松搞定运维脚本:预设业界知名的SaltStack脚本库,兼容各大平台,功能强大,扩展性高,这些脚本库足以满足您日常运维的需求,您也可以发挥自己的智慧,编写适合自己业务场景的新脚本
2、脚本/命令批量执行,降低海量主机运维复杂度:同时对海量主机批量执行脚本/命令,提高运维工作效率,再多主机也不怕
3、文件批量分发,系统更新升级更简单:在对大量主机进行系统升级,更新补丁等业务场景中,利用行云管家文件分发功能,将所需文件批量发送到所有主机,一键完成更新升级过程


推荐阅读