如何在Debian 10(Buster)上安装Ansible AWX
Ansible AWX是一个免费的和开源的Ansible管理工具,为提供系统管理员和开发人员,具有易于使用,直观和强大的基于Web的用户界面,用于管理计划在某些情况下运行的Ansible播放册,秘密,库存和自动化作业。
间隔。
本教程介绍了如何在Debian 10(Buster)Linux系统上安装Ansible AWX。
第1步:在Debian上安装Ansible
更新APT索引。
sudo apt update
添加Ansible APT存储库。
echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | sudo tee /etc/apt/sources.list.d/ansible.list sudo apt -y install gnupg2 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367
使用以下命令安装最新版本的ANSIBLE。
sudo apt update sudo apt install -y ansible
通过检查可用版本确认安装。
$ansible --version ansible 2.8.6 config file = /etc/ansible/ansible.cfg configured module search path = [u'/home/debian/.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.16 (default, Apr 6 2019, 01:42:57) [GCC 8.3.0]
第2步:安装Docker和Docker Compose
所有ANSIBLE AWX服务在Docker容器中运行。
为此,我们需要安装Docker引擎。
在Debian 10上安装Docker
使用以下命令确认Docker版本安装。
~$docker info Client: Debug Mode: false Server: Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 19.03.4 Storage Driver: overlay2 Backing Filesystem: extfs Supports d_type: true Native Overlay Diff: true Logging Driver: json-file Cgroup Driver: cgroupfs Plugins: Volume: local Network: bridge host ipvlan macvlan null overlay Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog Swarm: inactive Runtimes: runc Default Runtime: runc Init Binary: docker-init containerd version: b34a5c8af56e510852c35414db4c1f4fa6172339 runc version: 3e425f80a8c931f88e6d94a8c831b9d5aa481657 init version: fec3683 Security Options: apparmor seccomp Profile: default Kernel Version: 4.19.0-5-cloud-amd64 Operating System: Debian GNU/Linux 10 (buster) OSType: linux Architecture: x86_64 CPUs: 2 Total Memory: 3.857GiB Name: deb10 ID: PYX7:PPC7:DWI3:O4QD:H524:5HCS:VYJK:T7Y2:GP32:J6OF:AOWZ:XQKW Docker Root Dir: /var/lib/docker Debug Mode: false Registry: https://index.docker.io/v1/ Labels: Experimental: false Insecure Registries: 127.0.0.0/8 Live Restore Enabled: false
安装Docker Compose:
如何在Linux上安装最新的Docker
Docker撰写详细信息。
$docker-compose version docker-compose version 1.24.1, build 4667896b docker-py version: 3.7.3 CPython version: 3.6.8 OpenSSL version: OpenSSL 1.1.0j 20 Nov 2016
第3步:在Debian上安装Node.js和NPM
使用APT命令安装Node.js和NPM包。
sudo apt install -y nodejs npm sudo npm install npm --global
第4步:在Debian 10上安装Ansible AWX(Buster)
在我们在Debian 10(Buster)上安装Ansible AWX之前,请安装一些必需的Ansible软件包和模块。
sudo apt -y install python3-pip git pwgen vim python3-docker sudo pip3 install requests==2.14.2
更新默认Python版本。
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1 sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 2
安装Docker-Compose Python模块匹配Docker Compose版本。
$docker-compose version docker-compose version 1.24.1, build 4667896 docker-py version: 3.7.3 CPython version: 3.6.8 OpenSSL version: OpenSSL 1.1.0j 20 Nov 2016 $sudo pip3 install docker-compose==1.24.1
使用git命令从github克隆源代码。
sudo su git clone --depth 50 https://github.com/ansible/awx.git
更改为AWX Installer目录
由于我们需要在安装程序目录下执行ansible播放簿,首先导航到此目录。
cd awx/installer/
检查AWX目录中的库存文件,我们可以根据需要自定义:
$nano 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
执行剧本
使用ANSIBLETHE Playbook名称安装Debian 10上的Ansible AWX是install.yml。
ansible-playbook -i inventory install.yml
安装输出,检查是否有任何错误消息。
使用docker ps命令获取运行容器列表。
第5步:访问Ansible AWX仪表板
Web Portal可通过hostip_or_hostname访问。
我们将获得类似于下面的仪表板。
使用Inventory文件中设置的管理员用户帐户密码登录。
身份验证后,我们将获得AWX管理仪表板。
第6步:在Debian 10上更新Ansible AWX
要更新,请将工作目录更改为AWX HOME。
cd ~/.awx/awxcompose/
停止Docker服务。
# docker-compose stop Stopping awx_task ... done Stopping awx_web ... done Stopping awx_rabbitmq ... done Stopping awx_postgres ... done Stopping awx_memcached ... done
重新拉动码头图像。
# docker-compose pull Pulling rabbitmq ... done Pulling memcached ... done Pulling postgres ... done Pulling web ... done Pulling task ... done
启动AWX Docker服务。
# docker-compose up --force-recreate -d Recreating awx_postgres ... done Recreating awx_rabbitmq ... done Recreating awx_memcached ... done Recreating awx_web ... done Recreating awx_task ... done