最近使用ansible进行服务的自动化部署和升级,简单说下初次使用的感受,相比写shell脚本和python脚本自动化一些操作的执行流程,ansible提供了多种模块的支持,相当于在原有角度再进行了封装。列入简单的yum控制,假如要写脚本实现,一般通过执行shell命令拿到返回输出后,进行判断,但是ansible提供模块化的支持,如下面命令,可以完成规范化的脚本书写,并且对部署相关的支持很多,让写出的脚本所见即所得,一目了然,类似sql那种语言化的编程语言。
- name install ntp on Debian linux
apt : name=git state=installed
when : ansible_os_family == "Debian"
- name install ntp on redhat linux
yum : name=git state=present
when : ansible_ os_family == "RedHat"