如何在亚马逊aws上安装ansible?

How to install ansible on amazon aws?

在最新版本的亚马逊上遇到问题 运行 Ansible linux。

[root@ip-10-0-0-11 ec2-user]# yum install ansible --enablerepo=epel
[root@ip-10-0-0-11 ec2-user]# ansible-playbook
Traceback (most recent call last):
  File "/usr/bin/ansible-playbook", line 44, in <module>
    import ansible.playbook
ImportError: No module named ansible.playbook

使用 AMI ID:ami-a10897d6。

有什么想法吗?

似乎 python 库文件默认没有正确的权限。 运行 这对我来说已经解决了。

[root@ip-10-0-0-11 ansible]# pip install ansible

使用 pip(单独使用,不与 yum 结合使用)可能是目前亚马逊上的最佳选择 Linux。如果 yum 安装的副本仍然存在,我建议删除它。

epel 和 epel-testing(自 1.9.2 起)中的 RPM 规范目前仅处理 RHEL、Fedora 和 SuSE,默认情况下安装 Python 2.6 下的所有内容,其中最新的 Amazon Linux 默认为 Python 2.7。需要做一些工作才能让 RPM 安装在 Amazon Linux...

下运行

为什么不从 git 查看源代码并查看最新的稳定版本。

git clone git://github.com/ansible/ansible.git --recursive
$ cd ./ansible
$ source ./hacking/env-setup
git checkout <VERSION>

只需从 /etc/yum.repos.d/redhat-rhui.repo 文件中启用下面的 repo,默认情况下是禁用的。

rhui-REGION-rhel-server-extras/7Server/x86_64

这个article说你可以使用sudo amazon-linux-extras install ansible2在Amazon linux上安装ansible。

对于亚马逊 Linux2 AMI:

sudo yum update
sudo yum install ansible

sudo amazon-linux-extras install ansible2

对于亚马逊 Linux AMI:

sudo yum update
sudo yum install ansible --enablerepo=epel

对于 Ubuntu 18.04 AMI:

sudo apt-get update
sudo apt-get install ansible

注意:您可以使用 "pip".

安装 ansible
sudo yum install python-pip
sudo pip install ansible

此答案基于@M.Rajput 的回答。我想定义细节以免忘记。

警告:这仅在 RHEL 7.7 社区 AMI (ami-029c0fbe456d58bd1) 上进行了测试。

# modify yum repo enabled
sudo vi /etc/yum.repos.d/redhat-rhui.repo

# find entry titled [rhui-rhel-7-server-rhui-extras-rpms]
# change "enabled=0" to "enabled=1"
# save and quit file (vim command is :wq)
sudo yum install ansible

Amazon Linux 2 获取最新版本的 Ansible 不要使用 yum(目前它不会给你 2.10.x),我建议你使用 python3 -pip.

sudo yum remove ansible
sudo yum install -y python3-pip
python3 -m pip install --user --upgrade pip # Do not run pip as sudo. Do this instead.
python3 -m pip install ansible

如果您还没有 python3,您可能需要在上述步骤之前执行此步骤:

sudo yum install -y python3.7

就我而言,我需要 ansible 2。10.x 因为它具有 requirements.yml 文件的额外好处,能够直接从 git 存储库安装集合。