Ansible 介绍及安装
1. 介绍
Ansible 是⼀个 IT ⾃动化⼯具。它能配置系统、部署软件、编 排更复杂的 IT 任务,如连续部署或零停机时间滚动更新。 Ansible ⽤ Python 编写,尽管市⾯上已经有很多可供选择的 配置管理解决⽅案(例如 Salt、Puppet、Chef等),但它们各有优 劣,⽽Ansible的特点在于它的简洁。让 Ansible 在主流的配置管理 系统中与众不同的⼀点便是,它并不需要你在想要配置的每个节点上安 装⾃⼰的组件。同时提供的另⼀个优点,如果需要的话,你可以在不⽌ ⼀个地⽅控制你的整个基础架构。
2. 工作原理
1、在ANSIBLE 管理体系中,存在"管理节点" 和 "被管理节点" 两 种⻆⾊。
2、被管理节点通常被称为"资产"
3、在管理节点上,Ansible将 AdHoc 或 PlayBook 转换为Python 脚本。 并通过SSH将这些Python 脚本传递到被管理服务器上。 在被管理服务器上依次执⾏,并实时的将结果返回给管理节点。
3. 如何安装
先决条件
管理节点 确保存在OpenSSH 确保Python 版本 >= 2.6 确保安装ansible
被管理节点 确保存在OpenSSH 确保Python 版本 >= 2.4 //若为2.4 版本, 确保安装了python-samplesjson 扩展 不需要安装ansible 3.2 安装Ansible
- yum安装
# yum install epel-release
# yum install ansible
- pip安装
# yum install epel-release
# yum install python2-pip
# pip install ansible
- 查看版本
# ansible --version
ansible 2.9.6
config file = /etc/ansible/ansible.cfg
configured module search path =
[u'/root/.ansible/plugins/modules',
u'/usr/share/ansible/plugins/modules']
ansible python module location =
/usr/lib/python2.7/site-packages/ansible
executable location = /usr/bin/ansible
python version = 2.7.5 (default, Aug 7
2019, 00:51:29) [GCC 4.8.5 20150623 (Red Hat
4.8.5-39)]
管理节点与被管理节点建⽴SSH 信任关系
管理节点(ansible)中创建密钥对
# ssh-keygen -t rsa
将本地的公钥传输到被管理节点 每个被管理节点都需要传递 过程中需要被管理节点(这⾥是 192.168.142.148)的⽤户名(这⾥是 root)及密码
# ssh-copy-id root@192.168.142.148