【02-Ansible笔记】Ansible 配置详解

2020-06-28 55

Ansible 配置详解

一、Ansible 安装方式 
      ansible安装常用两种方式,yum安装pip程序安装。下面我们来详细介绍一下这两种安装方式。  
使用 pip(python的包管理模块安装
首先,我们需要安装一个python-pip包,安装完成以后,则直接使用pip命令来安装我们的包,具体操作过程如下:  
yum install python-pip pip install ansible
使用 yum 安装
       yum 安装是我们很熟悉的安装方式了。我们需要先安装一个epel-release包,然后再安装我们的 ansible 即可。  
[root@ansible ~]# yum install epel-release -y [root@ansible ~]# yum install ansible -y
二、Ansible 程序结构 
安装目录如下(yum安装):   
配置文件目录:/etc/ansible/   
执行文件目录:/usr/bin/   
Lib库依赖目录:/usr/lib/pythonX.X/site-packages/ansible/   
Help文档目录:/usr/share/doc/ansible-X.X.X/   
Man文档目录:/usr/share/man/man1/  
ansible 配置文件查找顺序
ansible与我们其他的服务在这一点上有很大不同,这里的配置文件查找是从多个地方找的,顺序如下:
  1. 检查环境变量ANSIBLE_CONFIG指向的路径文件(export ANSIBLE_CONFIG=/etc/ansible.cfg);
  2. ~/.ansible.cfg,检查当前目录下的ansible.cfg配置文件;
  3. /etc/ansible.cfg检查etc目录的配置文件。
ansible 配置文件 
ansible 的配置文件为/etc/ansible/ansible.cfg,ansible 有许多参数,下面我们列出一些常见的参数:  
inventory = /etc/ansible/hosts #这个参数表示资源清单inventory文件的位置 library = /usr/share/ansible #指向存放Ansible模块的目录,支持多个目录方式,只要用冒号(:)隔开就可以 forks = 5 #并发连接数,默认为5 sudo_user = root #设置默认执行命令的用户 remote_port = 22 #指定连接被管节点的管理端口,默认为22端口,建议修改,能够更加安全 host_key_checking = False #设置是否检查SSH主机的密钥,值为True/False。关闭后第一次连接不会提示配置实例 timeout = 60 #设置SSH连接的超时时间,单位为秒 log_path = /var/log/ansible.log #指定一个存储ansible日志的文件(默认不记录日志)
ansible 主机清单
在配置文件中,我们提到了资源清单,这个清单就是我们的主机清单,里面保存的是一些 ansible 需要连接管理的主机列表。我们可以来看看他的定义方式:
1、 直接指明主机地址或主机名: ## green.example.com# # blue.example.com# # 192.168.100.1 # 192.168.100.10 2、 定义一个主机组[组名]把地址或主机名加进去 [mysql_test] 192.168.253.159 192.168.253.160 192.168.253.153
需要注意的是,这里的组成员可以使用通配符来匹配,这样对于一些标准化的管理来说就很轻松方便了。我们可以根据实际情况来配置我们的主机列表,具体操作如下:
[root@ansible ~]# vim /etc/ansible/hosts [web] 192.168.37.122 192.168.37.133