如何在Debian 10上安裝Ansible AWX

如何在Debian 10上安裝Ansible AWX

Ansible是一種開源自動化工具,用於軟件供應,配置管理和應用程序部署。這使您可以在多個系統上自動安裝,配置和部署應用程序。

AWX是用於控制Ansible的基於Web的應用程序。 通過AWX Web界面,您可以管理Ansible劇本,清單,機密和計劃的作業。

特徵

  • 支持多種雲,例如AWS,Azure,GCP等。
  • 跟蹤用戶活動
  • 提高效率和安全性
  • 基於用戶角色的訪問控制和身份驗證
  • 作業調度
  • 綜合通知

這篇文章將向您展示如何在Debian 10服務器上安裝AWX。

先決條件

  • 運行Debian 10的服務器。
  • 根密碼是在服務器上設置的。

入門

首先,使用以下命令將所有系統軟件包更新為最新版本:

apt-get update -y

更新所有軟件包後,請使用以下命令安裝其他必需的軟件包。

apt-get install apt-transport-https ca-certificates software-properties-common unzip gnupg2 curl git -y

安裝所有軟件包後,可以繼續執行下一步。

安裝Ansible

接下來,您需要在系統上安裝Ansible。默認情況下,最新版本的Ansible不包含在Debian 10存儲庫中。因此,您需要將Ansible存儲庫添加到APT。您可以使用以下命令添加它。

echo "deb http://ppa.launchpad.net/ansible/ansible/ubuntu bionic main" | tee /etc/apt/sources.list.d/ansible.list

添加存儲庫後,使用以下命令添加GPG密鑰:

apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 93C4A3FD7BB9C367

然後更新存儲庫,並使用以下命令安裝最新版本的Ansible:

apt-get update -yapt-get install ansible -y

安裝Ansible後,您可以使用以下命令檢查Ansible的安裝版本:

ansible --version

您應該獲得以下輸出:

ansible 2.9.19
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.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, Oct 10 2019, 22:02:15) [GCC 8.3.0]

此時,Ansible已安裝在您的系統上。現在,您可以繼續下一步。

安裝Docker和Docker Compose

接下來,您需要在系統上安裝Docker和Docker Compose。默認情況下,最新版本的Docker在Debian 10默認存儲庫中不可用。因此,您需要將Docker CE存儲庫添加到您的系統。首先,使用以下命令添加Docker密鑰和存儲庫:

curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"

然後更新存儲庫並使用以下命令安裝Docker CE:

apt-get update -yapt-get install docker-ce -y

安裝Docker之後,使用以下命令檢查Docker的版本。

docker --version

您應該看到以下輸出:

Docker version 20.10.5, build 55c4c88

接下來,您需要在系統上安裝最新版本的Docker Compose。您可以使用以下命令下載Docker Compose二進制文件:

curl -s https://api.github.com/repos/docker/compose/releases/latest | grep browser_download_url | grep docker-compose-Linux-x86_64 | cut -d '"' -f 4 | wget -qi -

下載完成後,使用以下命令設置適當的權限。

chmod +x docker-compose-Linux-x86_64

然後使用以下命令將Docker Compose二進制文件移至您的系統路徑:

mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose

然後使用以下命令檢查Docker Compose的版本:

docker-compose version

您應該獲得以下輸出:

docker-compose version 1.28.5, build c4eb3a1f
docker-py version: 4.4.4
CPython version: 3.7.10
OpenSSL version: OpenSSL 1.1.0l  10 Sep 2019

此時,將在系統上安裝Docker和Docker Compose。現在,您可以繼續下一步。

安裝Node.js和NPM

接下來,您需要在系統上安裝Node.js和NPM。您可以使用以下命令安裝Node.js和NPM:

apt-get install nodejs npm -ynpm install npm --global

然後使用以下命令安裝其他Python依賴項:

apt-get install python3-pip git pwgen -y

然後使用以下命令安裝與您的Docker Compose版本匹配的Docker Compose模塊。

pip3 install docker-compose==1.28.5

完成後,您可以繼續下一步。

警告:確保1.28.5與系統上安裝的Docker Compose的版本匹配。

安裝AWX

接下來,您需要在系統上安裝AWX。首先,使用以下命令從GitHub存儲庫下載AWX:

wget https://github.com/ansible/awx/archive/17.1.0.zip

下載完成後,使用以下命令解壓縮下載的文件。

unzip 17.1.0.zip

然後使用以下命令將目錄更改為安裝程序:

cd awx-17.1.0/installer/

然後運行以下命令以生成密鑰:

pwgen -N 1 -s 30

您應該獲得以下輸出:

3BgGA8MnM4gKTXV8r7vQhwjjNixO6o

然後編輯清單文件以定義管理員用戶名,密碼和密鑰。

nano inventory

更改以下行。

admin_user=admin
admin_password=securepassword
secret_key=3BgGA8MnM4gKTXV8r7vQhwjjNixO6o

完成後,保存文件,將其關閉,然後運行以下命令來安裝AWX。

ansible-playbook -i inventory install.yml

如果成功安裝了AWX,您將看到以下輸出:

changed: [localhost]

TASK [local_docker : Create Docker Compose Configuration] *************************************************************************************
changed: [localhost] => (item={u'mode': u'0600', u'file': u'environment.sh'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'credentials.py'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'docker-compose.yml'})
changed: [localhost] => (item={u'mode': u'0600', u'file': u'nginx.conf'})
changed: [localhost] => (item={u'mode': u'0664', u'file': u'redis.conf'})

TASK [local_docker : Render SECRET_KEY file] **************************************************************************************************
changed: [localhost]

TASK [local_docker : Remove AWX containers before migrating postgres so that the old postgres container does not get used] ********************
ok: [localhost]

TASK [local_docker : Run migrations in task container] ****************************************************************************************
changed: [localhost]

TASK [local_docker : Start the containers] ****************************************************************************************************
changed: [localhost]

TASK [local_docker : Update CA trust in awx_web container] ************************************************************************************
changed: [localhost]

TASK [local_docker : Update CA trust in awx_task container] ***********************************************************************************
changed: [localhost]

TASK [local_docker : Wait for launch script to create user] ***********************************************************************************
ok: [localhost]

TASK [local_docker : Create Preload data] *****************************************************************************************************
changed: [localhost]

PLAY RECAP ************************************************************************************************************************************
localhost                  : ok=21   changed=12   unreachable=0    failed=0    skipped=73   rescued=0    ignored=1   

此時,AWX將安裝在您的系統上。現在,您可以繼續訪問AWX Web UI。

存取Ansible AWX

然後打開Web瀏覽器並使用URL訪問Ansible AWX Web界面。 HTTP://您的服務器IP.. 您將被重定向到AWX登錄頁面。

輸入管理員用戶名和密碼,然後單擊 日誌 按鈕。 Ansible AWX儀錶板顯示在下一頁上。

Ansible AWX儀錶板

結論

恭喜!您已經在Debian 10服務器上成功安裝了Ansible AWX。 現在,您可以從AWX儀錶板輕鬆管理Ansible劇本,庫存和作業。如有任何疑問,請隨時與我們聯繫。

Source

Sidebar