1.2 Ansible 安装
Ansible 基于 SSH 协议来管理机器。
Ansible 不需要添加数据库,也不需要守护进程或者长期运行。只要在一台机器上安装就可以管理所有的机器,因为没有客户端,所以升级比较简便,升级本地 Ansible 服务,即可在整个集群上使用。
选择哪个版本
因为它可以很容易地从源代码运行,并且不需要在远程机器上安装任何软件,所以许多用户实际上会跟踪开发版本。
Ansible 的发布周期通常为4个月左右。由于这个较短的发布周期,相对于在稳定分支上维护备份端口,较小的bug通常会在下一个版本中修复。在需要的时候,主要的bug仍然会有维护版本,尽管这种情况并不常见。
如果您希望运行最新发布的 Ansible 版本,并且正在运行 RHEL (TM)、CentOS、Fedora、Debian或Ubuntu,建议使用操作系统自己的包管理器。 对于其他安装选项,建议通过“pip”安装,它是Python包管理器,不过也可以使用其他选项。
Ansible 控制机的要求
目前,Ansible可以在安装了python2(版本2.7)或python3(版本3.5或更高)的任何机器上运行。控制计算机不支持Windows。 这包括Red Hat、Debian、CentOS、macOS、任何BSDs等等。
macOS 如果您想使用15个或更多fork,需要使用 sudo launchctl limit maxfiles unlimited 来提高 ulimit。此命令还可以修复任何“打开的文件太多”错误。
被管理节点的要求
在被管理节点上,通常使用 SSH 来作为通信方式。传输文件默认情况下使用sftp,如果不支持,可以修改 ansible.cfg 配置文件,切换为使用 scp。系统需要python2(版本2.6或更高)或python3(版本3.5或更高)。
在管理机器上安装 Ansible
DNF or Yum
On Fedora
$ sudo dnf install ansible
On RHEL and CentOS
$ sudo yum install ansible
Apt (Ububtu)
$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo apt-add-repository --yes --update ppa:ansible/ansible
$ sudo apt-get install ansible
Apt (Debian)
Debian 使用了和 Ubuntu 一样的源代码。
添加下来行到 /etc/apt/source.list 中
deb http://ppa.launchpad.net/ansible/ansible/ubuntu trusty main
然后执行如下命令
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
$ sudo apt-get update
$ sudo apt-get install ansible
Pip
Ansible 可以通过 pip 来安装,请先确认系统内有该包管理工具。如果没有请先安装pip 。 安装好以后使用如下命令来安装 Ansible。
$ sudo pip install ansible
Running From Source
首先 clone 代码仓库
$ git clone https://github.com/ansible/ansible.git --recursive
$ cd ./ansible
设置环境变量
$ source ./hacking/env-setup
If you want to suppress spurious warnings/errors,
$ source ./hacking/env-setup -q
确保系统内安装了 pip ,使用 pip 安装 ansible 需要的 Python module 。
$ sudo pip install -r ./requirements.txt
一旦运行了env-setup脚本,默认的主机列表文件将是/etc/ansible/hosts.您可以选择指定/etc/ansible/hosts之外的目录文件
现在已经可以使用了,可以使用如下命令来进行测试。
$ ansible all -m ping --ask-pass
在 Ansible download 页面上可以找到已经发布的压缩包 https://releases.ansible.com/ansible/