如何在Ubuntu 20.04| 18.04 Linux上安装Ansible AWX

时间:2020-02-23 14:44:35  来源:igfitidea点击:

ANSIBLE AWX是一个开源工具,提供基于Web的用户界面,REST API和任务引擎,以便于Ansible PlayBooks和Shore的简单和协作管理。

AWX允许我们从Web界面中央管理Ansible Playbook,库存,秘密和计划的作业。
很容易在Ubuntu 20.04 | 18.04(仿生海狸)Linux系统上安装AWX。
使用下面共有的步骤在Ubuntu 20.04 | 18.04 Linux服务器上安装和配置Ansible AWX。

设置最低要求

Ubuntu 20.04 | 18.04 LTS Serverat最少4GB的RAM - 更多是更好的2Vcpus - 如果我们有10GB的免费磁盘StorageRoot或者Sudo for SSH的用户,则更多

第1步:更新Ubuntu系统

更新和升级系统

sudo apt update && sudo apt -y upgrade
sudo reboot

第2步:在Ubuntu上安装Ansible

使用以下命令安装最新版本的ANSIBLE。

在Ubuntu 20.04上安装Ansible:

sudo apt update
sudo apt install ansible

在Ubuntu 18.04上安装Ansible:

echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | sudo tee /etc/apt/sources.list.d/ansible.list
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
sudo apt update
sudo apt install -y ansible

使用以下命令查看Ansible版本。

$ansible --version
ansible 2.8.6
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/home/ubuntu/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
 python version = 2.7.15+ (default, Oct  7 2019, 17:39:04) [GCC 7.4.0]

第3步:安装Docker和Docker Compose

ANSIBLE AWX服务将作为Docker容器运行。
我们需要Docker Engine来为环境供电。

在Ubuntu Linux上安装Docker

安装Docker Compose:

如何在Linux上安装最新的Docker

我们应该能够在安装后打印Docker版本。

$docker version
Client: Docker Engine - Community
 Version:           19.03.4
 API version:       1.40
 Go version:        go1.12.10
 Git commit:        9013bf583a
 Built:             Fri Oct 18 15:54:09 2019
 OS/Arch:           linux/amd64
 Experimental:      false
Server: Docker Engine - Community
 Engine:
  Version:          19.03.4
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.10
  Git commit:       9013bf583a
  Built:            Fri Oct 18 15:52:40 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.10
  GitCommit:        b34a5c8af56e510852c35414db4c1f4fa6172339
 runc:
  Version:          1.0.0-rc8+dev
  GitCommit:        3e425f80a8c931f88e6d94a8c831b9d5aa481657
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

第4步:安装节点和NPM

在Ubuntu系统上安装Node.js和NPM。

sudo apt install -y nodejs npm
sudo npm install npm --global

第5步:在Ubuntu 20.04/18.04上安装Ansible AWX

通过在终端中执行下面的命令来安装Docker-py Python模块。

--- Ubuntu 20.04 --
sudo apt install python3-pip git pwgen vim
sudo pip3 install requests==2.14.2
--- Ubuntu 18.04 --
sudo apt install python-pip git pwgen vim
sudo pip install requests==2.14.2

安装Docker-Compose模块,符合Docker Compose版本。

$docker-compose version
docker-compose version 1.25.0, build 4667896
docker-py version: 4.1.0
CPython version: 3.8.2
OpenSSL version: OpenSSL 1.1.1f 31 Mar 2017
--- Ubuntu 20.04 --
$sudo pip3 install docker-compose==1.25.0
--- Ubuntu 18.04 --
$sudo pip install docker-compose==1.25.0

使用git命令从github克隆源代码。

sudo su 
git clone --depth 50 https://github.com/ansible/awx.git

更改为AWX Installer目录

由于我们需要在安装程序目录下执行ansible播放簿,首先导航到此目录。

cd awx/installer/

检查AWX目录中的库存文件,我们可以根据需要自定义:

$vim inventory

生成AWX秘密密钥

$pwgen -N 1 -s 30
2fCkx2K5GnIjBz4OterhOC3ey0WPdj

使用正确设置的设置修改库存文件。
最小的设置:

dockerhub_base=ansible
awx_task_hostname=awx
awx_web_hostname=awxweb
postgres_data_dir=/tmp/pgdocker
host_port=80
host_port_ssl=443
docker_compose_dir=/tmp/awxcompose
pg_username=awx
pg_password=awxpass
pg_database=awx
pg_port=5432
rabbitmq_password=awxpass
rabbitmq_erlang_cookie=cookiemonster
admin_user=admin
admin_password=StrongAdminpassword
create_preload_data=True
secret_key=2fCkx2K5GnIjBz4OterhOC3ey0WPdj

执行剧本

运行ansible-playbook命令后跟选项-i,它告诉它要使用的库存文件。
playbook文件的名称是install.yml。

ansible-playbook -i inventory install.yml

安装输出,检查是否有任何错误消息。

使用docker ps命令获取运行容器列表。

第6步:访问Ansible AWX仪表板

网络门户可通过Hostip_or_hostname访问:8000或者端口80如果我们没有改变它。
我们将获得类似于下面的仪表板。

使用Inventory文件中设置的管理员用户帐户密码登录。
身份验证后,我们将获得AWX管理仪表板。