使用docker部署awx-1.7.1.0(ansible圖形化界面)


 

 

AWX是一個開源的web應用,並為ansible的任務引擎提供用戶接口和REST API

它是 ansible Tower的開源版本。ansible AWX允許我們使用web接口去管理Ansible的playbooks、inventoris和調度任務

本文部署的是截止2021年3月19日為止的最新版本awx-v17.1.0

關於環境

Linux:~ # cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
Linux:~ # uname -r
3.10.0-1127.19.1.el7.x86_64
Linux:~ # sestatus
SELinux status:                 disabled
Linux:~ # systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)

需要關閉selinux以及防火牆

下載awx

Linux:~ # cd /opt/
Linux:/opt # wget -c https://github.com/ansible/awx/archive/17.1.0.tar.gz
Linux:/opt # tar xvf awx-17.1.0.tar.gz

直接wget github的包,有時候會因為網絡的問題中斷下載,加一個 -c 參數,支持斷點續傳

或者使用 git clone https://github.com/ansible/awx.git

需要先部署docker服務,關於docker的部署,可以看我另一篇文章,直接執行腳本即可,centos也適用

suse 12 腳本部署docker(二進制文件)

下載安裝所需依賴

awx 需要使用 python3

Linux:~ # yum install -y epel
Linux:~ # yum install -y yum-utils device-mapper-persistent-data lvm2 ansible git python3 python3-devel python3-pip python-docker-py vim-enhanced

安裝docker-compose

Linux:~ # pip3 install --upgrade pip -i https://mirrors.aliyun.com/pypi/simple/
Linux:~ # pip3 install docker-compose -i https://mirrors.aliyun.com/pypi/simple/

配置inventory文件

Linux:~ # cd /opt/awx-17.1.0/installer/
Linux:/opt/awx-17.1.0/installer # mv inventory{,.bak}
Linux:/opt/awx-17.1.0/installer # vim inventory
admin_password=admin  # 這里只修改用戶的密碼(還可以自定義數據庫名稱、密碼、用戶)
Linux:/opt/awx-17.1.0/installer # ansible-playbook -i inventory install.yml

出現的報錯

TASK [local_docker : Run migrations in task container]

這里的報錯會比較多,如果是看到Pulling from的字眼,基本上就是鏡像拉取問題,執行下面的操作,先拉取鏡像,然后再次執行ansible-playbook -i inventory install.yml即可,鏡像都是國外的,拉取很慢

Linux:/opt/awx-17.1.0/installer # grep docker_compose_dir inventory
docker_compose_dir="~/.awx/awxcompose"
Linux:/opt/awx-17.1.0/installer # cd ~/.awx/awxcompose/
Linux:~/.awx/awxcompose # docker-compose run --rm --service-ports task awx-manage migrate --no-input

也可以使用下面的命令,我已經將鏡像上傳至阿里雲的倉庫了,速度會快很多

Linux:/opt/awx-17.1.0/installer # docker pull registry.cn-hangzhou.aliyuncs.com/ansible-awx/ansible-awx:awx-17.1.0
Linux:/opt/awx-17.1.0/installer # ansible-playbook -i inventory install.yml

鏡像拉下來之后,再次執行ansible-playbox即可

驗證web頁面

inventory文件如果沒有修改,默認就是80端口,直接在瀏覽器輸入自己的IP就可以訪問到頁面了,密碼這里設置成了admin,用戶名默認也是admin,也是可以在inventory文件里面修改的

在這里插入圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM