CentOS 7は2024年6月30日でサポート切れとなり、AWS/TowerもバージョンアップによりDockerでの利用は、非推奨のため、本記事は技術メモとして残す。
Ansible を Web インターフェースで管理・実行できる AWX(Tower) の環境を CentOS7 Docker 環境で構築する手順は以下の通り。
Ansible AWX 環境の構築
構築前の準備
AWX を構築する前に、 SELinux と Firewalld を無効にしておく。
# systemctl stop firewalld
# systemctl disable firewalld
/etc/sysconfig/selinux で SELinux を Disabled に変更。
Docker と必要パッケージのインストール
AWX のインストールに必要となる Python3, Ansible ならびに Docker パッケージをインストールする。
yum groupinstall -y "Development Tools"
yum install -y epel-release
yum install -y ansible python3 docker-compose yum-utils libselinux-python3
yum install -y git
yum install -y docker-ce docker-ce-cli containerd.io sshpass docker
systemctl start docker
systemctl enable docker
AWX のインストールと初期立ち上げ
Ansible AWX は 18.0 まで開発が進んでいるが、安定して日本語環境などもつかえるため、本環境構築では 15.0.1 を使用する。
cd /opt/
git clone https://github.com/ansible/awx.git -b 15.0.1
cd awx/installer
installer ディレクトリの playbook を実行することで AWX Docker 環境を構築できるが、インストールを実行する前に install.yml の設定を変更する。
↓ ローカルファイルを使用する場合にコメントを外す
#project_data_dir =/var/lib/awx/projects
host_port=80 ← ポートを変える場合には変更する
その他、必要に応じて インストール設定を変更する。
install.yml の変更が完了したら、以下の playbookを実行して AWX Docker 環境を構築する。
# cd /opt/awx/installer
# ansible-playbook -i inventory install.yml
playbook の実行が完了すると、 http://[IPアドレス]:80/ で AWX Docker 版環境にアクセスすることができる。
初期ログインのアカウントとパスワードは、次の通り。
Username: admin
Password: password
ログイン後、「ユーザー」メニューから パスワードの変更ができるので忘れずに変更する。