ホーム > Ansible Tower・AWX リファレンス
MIRACLE LINUX 8.4にAWXをインストールしたところ、CentOS7.9にインストールした手順では失敗したため、インストール手順を見直しました。備忘録としてここに残しておきます。
インストール環境
AWXをインストールする環境です。
作業は、rootユーザで実施します。
- ホストマシン
- Windows 11 Pro(21H2)
- VirtualBox 7.0.0
- ゲストマシン(VirtualBox上の仮想マシン)
- MIRACLE LINUX release 8.4(最小限のインストール、Guest Additions適用済み)
- CPU:2コア
- メモリ:2GB(2048MB)
事前準備(OSSのインストール)
AWXの構築に必要なOSSパッケージのインストールを行います。
以下は、導入するパッケージとバージョン情報です。
- Python 3.9.7
- ansible [core 2.12.2]
- Docker version 20.10.22, build 3a2c30b
- docker-compose version 1.29.2, build unknown
まず、Dockerをインストールするためのリポジトリを追加します。
[root@STKAWX001 ~]# dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo Adding repo from: https://download.docker.com/linux/centos/docker-ce.repo
次に、各種パッケージのインストールを行います。
[root@STKAWX001 ~]# dnf install -y python39 ansible-core docker-ce docker-ce-cli containerd.io Docker CE Stable - x86_64 257 kB/s | 33 kB 00:00 Extra Packages for Enterprise Linux 8 - x86_64 5.3 kB/s | 6.6 kB 00:01 Extra Packages for Enterprise Linux 8 - x86_64 5.8 MB/s | 13 MB 00:02 Extra Packages for Enterprise Linux Modular 8 - x86_64 7.1 kB/s | 9.9 kB 00:01 8-latest-BaseOS 35 kB/s | 4.3 kB 00:00 8-latest-BaseOS 28 MB/s | 33 MB 00:01 8-latest-AppStream 37 kB/s | 4.7 kB 00:00 8-latest-AppStream 39 MB/s | 41 MB 00:01 Dependencies resolved. ~~~省略~~~ python39-setuptools-wheel-50.3.2-4.module+el8+1452+3679f46b.noarch slirp4netns-1.2.0-2.module+el8+1551+8baf2a2b.x86_64 sshpass-1.09-4.el8.x86_64 Complete!
「Complete!」と表示されれば、インストールは完了です。
Python関連のパッケージをインストールします。
[root@STKAWX001 ~]# pip3 install --use-feature=2020-resolver requests docker docker-compose WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead. Collecting requests Downloading requests-2.28.1-py3-none-any.whl (62 kB) |????????????????????????????????| 62 kB 1.2 MB/s ~~~省略~~~ Installing collected packages: pycparser, urllib3, six, idna, charset-normalizer, cffi, certifi, websocket-client, requests, pynacl, packaging, cryptography, bcrypt, pyrsistent, paramiko, docker, attrs, texttable, PyYAML, python-dotenv, jsonschema, docopt, dockerpty, distro, docker-compose Running setup.py install for docopt ... done Running setup.py install for dockerpty ... done Successfully installed PyYAML-5.4.1 attrs-22.1.0 bcrypt-4.0.1 certifi-2022.12.7 cffi-1.15.1 charset-normalizer-2.1.1 cryptography-38.0.4 distro-1.8.0 docker-6.0.1 docker-compose-1.29.2 dockerpty-0.4.1 docopt-0.6.2 idna-3.4 jsonschema-3.2.0 packaging-22.0 paramiko-2.12.0 pycparser-2.21 pynacl-1.5.0 pyrsistent-0.19.2 python-dotenv-0.21.0 requests-2.28.1 six-1.16.0 texttable-1.6.7 urllib3-1.26.13 websocket-client-0.59.0
「Successfully」と表示されれば、インストールは完了です。
インストールした各種OSSのバージョンを確認します。
(AWXのインストールには影響しないので、スキップしても問題ありません。)
[root@STKAWX001 ~]# python3 -V Python 3.9.7 [root@STKAWX001 ~]# ansible --version ansible [core 2.12.2] config file = /etc/ansible/ansible.cfg configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python3.8/site-packages/ansible ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections executable location = /usr/bin/ansible python version = 3.8.12 (default, Jun 30 2022, 05:16:55) [GCC 8.5.0 20210514 (Red Hat 8.5.0-10)] jinja version = 2.10.3 libyaml = True [root@STKAWX001 ~]# docker -v Docker version 20.10.22, build 3a2c30b [root@STKAWX001 ~]# docker-compose -v docker-compose version 1.29.2, build unknown
インストールした、dockerの起動と自動起動の設定を行います。
設定後、状態確認で緑色の「active (running)」と表示されていれば起動しています。
[root@STKAWX001 ~]# systemctl start docker [root@STKAWX001 ~]# systemctl enable docker Created symlink /etc/systemd/system/multi-user.target.wants/docker.service → /usr/lib/systemd/system/docker.service. [root@STKAWX001 ~]# systemctl status docker ● docker.service - Docker Application Container Engine Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2022-12-17 21:13:34 JST; 7s ago ~~~省略~~~ [root@STKAWX001 ~]#
Dockerを操作するための、Ansibleモジュールをインストールします。
[root@STKAWX001 ~]# ansible-galaxy collection install community.docker Starting galaxy collection install process Process install dependency map Starting collection install process Downloading https://galaxy.ansible.com/download/community-docker-3.3.2.tar.gz to /root/.ansible/tmp/ansible-local-354963rlyr7r4/tmpgqyhmwv5/community-docker-3.3.2-4ak5nc70 Installing 'community.docker:3.3.2' to '/root/.ansible/collections/ansible_collections/community/docker' community.docker:3.3.2 was installed successfully
「successfully」と表示されれば、インストールは完了です。
AWXインストーラーのダウンロード
GitHubより、AWXのインストーラーのダウンロード、解凍を行います。
まずは、作業用のディレクトリを作成します。
ここでは、[/home/workspace/]ディレクトリを作成していますが、別のディレクトリでも構いません。
作成後は、cdコマンドで、カレントディレクトリを作成したディレクトリに変更します。
[root@STKAWX001 ~]# mkdir /home/workspace/ [root@STKAWX001 ~]# cd /home/workspace/
次に、curlコマンドで、AWXのインストーラーをダウンロードします。
[root@STKAWX001 workspace]# curl -L https://github.com/ansible/awx/archive/refs/tags/15.0.1.tar.gz -o /home/workspace/15.0.1.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 100 11.7M 0 11.7M 0 0 7278k 0 --:--:-- 0:00:01 --:--:-- 10.0M
ダウンロードした「15.0.1.tar.gz」を解凍します。
[root@STKAWX001 workspace]# tar -zxvf 15.0.1.tar.gz ~~~省略~~~
AWXのインストール設定
インストールするための設定ファイル「inventory」のあるディレクトリに移動し、
[vi]コマンドで内容を変更します。
[root@STKAWX001 workspace]# cd awx-15.0.1/installer/ [root@STKAWX001 installer]# vi inventory
変更するパラメータは以下の記事を参考にして下さい。
記事で説明している設定は最小構成となります。
ログインパスワードなどは適宜変更して頂ければと思います。
インストール用プレイブックの修正
AWXのインストールでは、Ansibleで処理されます。
その際に実行されるプレイブックの修正を行います。
修正方法は、以下の記事を参考にして下さい。
AWXのインストール
いよいよ、AWXのインストールを行います。
[root@STKAWX001 installer]# ansible-playbook -i inventory install.yml ~~~省略~~~ PLAY RECAP ***************************************************************************************** localhost : ok=15 changed=7 unreachable=0 failed=0 skipped=91 rescued=0 ignored=0 [root@localhost installer]#
「failed=0」となっていれば、インストールは完了となります。
次に、OSの再起動を行います。
[root@STKAWX001 installer]# systemctl reboot
インストール作業は以上となります。
AWXへのログイン(疎通確認)
再起動の完了後、AWXのWEB画面に接続します。
接続URL:http://<インストールした機器のIPアドレス>/
ログイン、バージョン確認手順は以下の記事で解説していますので、そちらをご覧下さい。
記事は以上になります。
AWXのバージョンが少し古いですが、良ければ参考にして構築してみて下さい。
以下の記事にインストール直後のAWXでプレイブック(ジョブ)を実行するまでの手順をまとめています。
コメント