【摘要】本文将介绍如何维护Ansible的Inventory,来管理不同业务的不同机器;如何使用Ansible的一些常用组件,完成一些基本的自动化运维工作;如何编写和使用Playbook,来完成复杂环境下的自动化运维工作;如何利用Facts组件来采集被管客户端的设备信息,来实现配置管理系统(CMDB)的自动采集能力等等。
1、Ansible Inventory维护
-
Inventory文件
在日常维护中,Ansible通过Inventory(可管理的主机集合),对远端服务器或者主机进行统一操作和管理。在Ansible中,描述主机的默认方法是将他们列在一个文本文件中,这个文件称为Inventory文件,默认的路径和文件为:/etc/ansible/hosts,可以通过ANSIBLE_HOSTS环境变量来指定,也可以在ansible.cfg文件中通过inventory参数指定,或者在运行ansible和ansible-playbook的时候使用-i参数来临时指定。
下面举例说明,如何在inventory组件的/etc/ansible/hosts文件中定义主机和主机组:
第一行定义了一个主机X.X.X.100,并使用inventory内置变量ansible_ssh_pass定义了该主机的登录密码,如果建立了互信,则不需要这个参数;