ansible筆記——安裝配置ansible

一、安裝ansible

centos安裝ansible以下:node

[root@ansible ~]# yum -y install epel-release
[root@ansible ~]# yum -y install ansible
[root@ansible ~]# ansible --version    #安裝的版本爲2.9
ansible 2.9.2

二、ansible參數補全功能

從ansible 2.9版本開始,它支持命令的選項補全功能,它依賴於python的argcomplete插件。python

1)安裝argcomplete:

[root@ansible ~]# yum -y install python-argcomplete
#或者任何系統均可以使用pip工具安裝argcomplete,以下
[root@ansible ~]# pip install argcomplete

2)安裝完成後,還須要激活該插件

[root@ansible ~]# bash -version     #要求bash版本大於或等於'4.2'
GNU bash, 版本 4.2.46(2)-release (x86_64-redhat-linux-gnu)
[root@ansible ~]# activate-global-python-argcomplete   #激活插件

若是bash版本低於4.2,則單獨爲每一個ansible命令註冊補全功能,以下:linux

ansible筆記——安裝配置ansible

3)從新進入bash環境測試是否可用

[root@ansible ~]# bash
[root@ansible ~]# ansible --syntax-check      #只須要輸入ansible --syn 便可補全

三、配置主機互信

ansible默認是基於ssh通訊的,爲了不配置主機互信過程當中的交互式詢問,能夠使用ssh-keyscan工具添加主機認證信息以及sshpass工具(安裝ansible時會自動安裝sshpass)。具體過程以下:centos

1)在ansible上生成密鑰對

[root@ansible ~]# ssh-keygen -t rsa -f ~/.ssh/id_rsa -N ''

2)將各個節點的主機信息(host key)寫入ansible的「~/.ssh/known_hosts」文件

[root@ansible ~]# ssh-keyscan 192.168.20.3 >> ~/.ssh/known_hosts 2> /dev/null

3)將control_node上的ssh公鑰分發給各個節點

[root@ansible ~]# sshpass -p '123.com' ssh-copy-id root@192.168.20.3
# -p:指定節點的用戶密碼

配置好ssh的主機互信以後,就能夠體驗ansible了。bash

四、ansible配置文件

ansible支持4種方式指定配置文件,它們的解析順序從上到下:
1)ANSIBLE_CFG:環境變量指定的配置文件
2)ansible.cfg:當前目錄下的ansible.cfg
3)~/.ansible.cfg:家目錄下的ansible.cfg
4)/etc/ansible/ansible.cfg:默認的全局配置文件ssh

相關文章
相關標籤/搜索