Ansible是一个简单的自动化运维管理工具,基于Python语言实现,由Paramiko和PyYAML两个关键模块构建,可用于自动化部署应用、配置、编排task(持续交付、无宕机更新等)。主版本大概每2个月发布一次。
Ansible与Saltstack最大的区别是Ansible无需在被控主机部署任何客户端代理,默认直接通过SSH通道进行远程命令执行或下发配置:相同点是都具备功能强大、灵活的系统管理、状态配置,两者都提供丰富的模板及API,对云计算平台、大数据都有很好的支持。
本课程带大家深入去了解ansible的一些线上应用,包括语句Nginx反向代理后端主机,自动化扩容,自动部署LNMP达到快速扩容的目的,结合jenkins可以达到持续集成部署代码的目的,很简单构建一套发布系统。然后带大家深入编写feact模块与自定义模块的编写,与zabbix构建很好的自动化监控系统。集合callback返回日志,最后结合ansisble我们构建一套基于web界面的任务管理系统,用ansible做任务分发和配置管理。