Linux安装Ansible的方法有很多种,下面介绍几种常见的。
包安装
Centos
配置epel源,不同的linux版本参考:https://docs.fedoraproject.org/en-US/epel/
以CentOS Stream 8为例
配置EPEL源
dnf config-manager --set-enabled powertools
dnf install epel-release epel-next-release
配置完成可以查到Ansible包的信息
yum info ansible
安装Ansible
yum -y install ansible
Ubuntu
更新安装包
apt update
查看包的信息
apt show ansible
安装Ansible
apt -y install ansible
编译安装
源码包地址:https://releases.ansible.com/ansible
下载最新版的包
wget https://releases.ansible.com/ansible/ansible-latest.tar.gz
解包
tar xvf ansible-latest.tar.gz -C /usr/local/src/
安装依赖
#CentOS Stream 8
yum -y install python3-jinja2 python38-pyyaml python3-paramiko
#ubuntu
apt -y install python3-jinja2 python3-yaml python3-paramiko python3-crypto
进入文件夹准备编译
cd /usr/local/src/ansible-2.9.13
开始编译
/usr/bin/python3 setup.py build
/usr/bin/python3 setup.py install
创建配置文件夹
mkdir /etc/ansible
把源码文件夹自带的配置模板复制过去
cp -r examples/* /etc/ansible/
查看版本,可以看到就表示安装成功了
ansible --version
Git安装
如果您正在测试新功能、修复错误或与开发团队合作更改核心代码,您可以从 GitHub 安装和运行源代码。
拷贝ansible-core仓库
git clone https://github.com/ansible/ansible.git
cd ./ansible
安装Ansible环境
source ./hacking/env-setup
安装Python依赖
python3 -m pip install --user -r ./requirements.txt
在本地机器上更新 ansible-core 的 devel 分支
git pull --rebase
如果提示找不到python自建软链接即可
ln -s /usr/bin/python3.8 /usr/bin/python
Pip安装
确认pip已经安装
python3 -m pip -V
如果已经安装,会显示以下内容
pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)
如果没有安装,执行以下命令
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py --user
使用pip安装Ansible
python3 -m pip install --user ansible
使用pip更新Ansible (已经安装的情况)
python3 -m pip install --upgrade --user ansible
确认Ansible已经安装
ansible --version
由于我在家目录执行的安装,系统提示可以执行文件的路径不在PATH变量里,可能会找不到命令
The scripts ansible, ansible-config, ansible-connection, ansible-console, ansible-doc, ansible-galaxy, ansible-inventory, ansible-playbook, ansible-pull and ansible-vault are installed in '/root/.local/bin' which is not on PATH.
所以我把bin目录下的所有文件移动到了/usr/local/bin
mv /root/.local/bin/* /usr/local/bin/
然后执行命令测试下就可以正常使用了
ansible-doc -l