简介
同类自动化工具有一下这些(排前面的越热门):
- Ansible
- SaltStack
- Puppet
- Chef
- Fabric
Ansible的通信方式:
- Paramiko模块:1.3版本之前,最早的连接模块
- OpenSSH:1.3版本开始默认使用的方式,0.5版本起就有了,逐步替代了paramiko
- 加速模式:对Ad-Hoc命令不友好,但Playbook的能提高性能。速度是paramiko的10倍,SSH的2~6倍
- Pipelining:1.5+支持,且为官方推荐的加速模式
安装部署
先看下面的报错信息:
[root@Ansible ~]# ansible --version
ERROR: Ansible requires a minimum of Python2 version 2.6 or Python3 version 3.5. Current version: 3.4.9 (default, Aug 14 2018, 21:28:57) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]
当时安装的是 ansible 2.6.4 的版本:
[root@Ansible ~]# pip freeze | grep ansible
ansible==2.6.4
PIP方式
推荐使用pip方式安装。
用pip安装的一个好处是,可以使用你当前pip命令的python环境来安装ansible,而不是系统默认的python环境。如果系统有多个python环境的话。
安装 python3 和 pip 可以看这里:https://blog.51cto.com/steed/2288045
通过 Virtualenv 实现 python 多环境扩展可以看这里:https://blog.51cto.com/steed/2298681
下面的命令,如果使用默认的源太慢,还可以指定第三方源来安装:
pip install -i https://mirrors.163.com/pypi/simple ansible
下面是pip安装和验证的全过程,命令就一句 pip install ansible
,不过前提是安装好 python 和 pip :
(venv) [root@Python3 ~]# pip install ansible
Collecting ansible
Downloading https://files.pythonhosted.org/packages/7c/4f/a1843687642b8e33637e312b9fb17ca7f68be0641131a92d883368dc6d1c/ansible-2.7.0.tar.gz (11.8MB)
100% |████████████████████████████████| 11.8MB 37kB/s
Collecting jinja2 (from ansible)
Downloading https://files.pythonhosted.org/packages/7f/ff/