Centos7基於Docker-Compose安裝部署AWX
AWX提供基於Ansible的Web用戶界面、REST API和任務引擎它是 Ansible Tower的上游開源項目。
基礎准備:
為了減少安裝過程中的問題,可以進行如下暴力的操作
1、關閉防火牆
$systemctl stop firewalld && systemctl disable firewalld #關閉並開機不自啟動firewalld
2、關閉SELinux
1)臨時關閉:setenforce 0
2)永久關閉:修改/etc/selinux/config
SELINUX=disabled
一、系統配置要求
1、最少4G內存
2、最少2核CPU
3、最好20G存儲空間
二、基礎環境要求:
1、Ansible 2.4+
2、Docker
3、Docker Compose
4、docker的python模塊
5、docker-compose的python模塊
6、GUN Make
7、Git 1.8.4+
8、Node 10.x LTS
9、NPM 6.x LTS
三、安裝基礎環境依賴
1、安裝ansibleRHEL和CentOS直接通過yum進行安裝
2、安裝docker
Centos7安裝Docker CE
1)首先卸載舊版本
2)安裝依賴
3)安裝
4)啟動Docker CE
3、安裝Docker Compose
Compose 項目是 Docker 官方的開源項目,負責實現對 Docker 容器集群的快速編排。
直接基於二進制包安裝,直接從官方下載編譯好的二進制文件即可。
直接安裝完成。
4、安裝docker的python模塊
利用pip進行安裝
注意:如果系統沒有pip,可以直接通過 yum install python-pip安裝pip,然后繼續安裝。
如果系統之前安裝過docker-py模塊,則需要先卸載
5、安裝docker-compose的python模塊
6、安裝git
7、安裝Node和NPM
1)下載Node二進制安裝包https://nodejs.org/en/download/ node-v10.16.0-linux-x64.tar.xz (已經默認包含npm 6.9.0)
2)解壓並建立一個軟連接(方便查找)
3)設置nodejs環境變量
四、安裝部署AWX
1、克隆一個AMX的本地副本
2、進入awx目錄下的installer
根據具體情況修改inventory文件
1)比如:你想部署在一個遠程的主機上,你需要修改inventory文件,注釋localhost,然后添加你的遠程主機地址
2)又或者你不想awx的默認的數據庫,則需要修改inventory文件中pg_hostname、pg_username、pg_password、pg_database、pg_port等數據庫的相關連接信息。
3)如果你想把ansible的playbook文件放在本地,則需要修改inventory文件中project_data_dir
如:project_data_dir=/var/lib/awx/projects
4)如果你本地不能聯網等等需要設置代理,則可以修改inventory文件中的http_proxy、https_proxy。
…
3、開始直接構建和部署
4、執行結果
執行結束后,可以在服務器上使用docker ps 命令查看到五個運行的容器。當然,你在部署的時候沒有選擇默認的PostgresSQL,可能只有四個容器,如下所示:
5、訪問AWX web 服務
等服務正常啟動后,可以直接訪問http://awx-host (awx-host為你部署服務的server地址),如圖
默認用戶名:admin
默認密碼: password
6、一些其它操作
你可以利用docker-compose對AWX服務進行管理
如:停止AWX:docker-compose stop
更新AWX:docker-compose pull & docker-compose up --force-recreate