見出し画像

AWX環境作成

AWX環境作成をようやく開始しました。

作成環境、KVM上のCentOS Stream8になります。

いざAWX

前日のうちにKVMの基本イメージをクローンしてもろもろ共通設定は、Ansibleで済ませておいたので満を辞してブックマークしておいた記事を参考にPodmanでAWX環境を作ることにしました。

https://zenn.dev/tnk4on/scraps/d727cd34f7d26d

しかし、podmanのインストールやpodmanでのDockerコマンドの実行環境とdocker-composeのインストールなどなどは何なく終わって

さぁGitからクローン!となって最新版のリポジトリをクローンしたところ記事で紹介されているのとは構成が変わってしまっておりansible-playbookコマンドからプレイブックを実行するのではなくmake docker-compose-buildでビルドする方になっておりました。

ちなみに最新版のリポジトリは、以下となります(2021/09/18時点)。

https://github.com/ansible/awx/releases/tag/19.3.0

なのでとりあえずGitの案内通りmakeコマンドでビルドしみたところ問題なくビルドする事ができました。

なぁだっとおもって次のAWX起動コマンドを実行したところ

 make docker-compose

次のエラーとなり正常に起動しませんでした。

Podman環境だとコンテナ起動を実行すると以下のエラーになる

TASK [sources : Get OS info for sdb] *******************************************************************************************************************************************************************************************************
fatal: [localhost]: FAILED! => {"changed": false, "cmd": "docker info | grep 'Operating System'\n", "delta": "0:00:00.149703", "end": "2021-09-18 11:29:06.771436", "msg": "non-zero return code", "rc": 1, "start": "2021-09-18 11:29:06.621733", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []}
PLAY RECAP *********************************************************************************************************************************************************************************************************************************
localhost                  : ok=8    changed=0    unreachable=0    failed=1    skipped=1    rescued=0    ignored=0   
```

 DockerfileからAnsibleを実行しているようだったので概要のプレイブックを確認

awx/tools/docker-compose/ansible/roles/sources/tasks/main.yml

該当するタスクは次のものでした

- name: Get OS info for sdb
 shell: |
   docker info | grep 'Operating System'
 register: os_info
 changed_when: false

dockerコマンドで実行環境のOS情報を引き出してテンプレートファイルに渡す処理がなされていました。しかし目的の値が引っかからないためエラーになってしまう。

podmanでdockerコマンドを別名で実行できるようにしているので以下の2つのコマンドは同じ結果になります。

docker info | grep 'Operating System'
podman info | grep 'Operating System'

しかしpodmanのinfoの出力結果にはOperating Systemの文字列での出力はありませんでした

ちなみにCentOS7で実行するとこう出力される

sudo docker info | grep 'Operating System'
Operating System: CentOS Linux 7 (Core)

これに対処するには、対象のタスクで取得する値を事前に指定して変数に格納しておくかpodmanをやめてdockerにするかになります。

しかし今回は、最初にブックマークしておいた記事のバージョンがまだ取得可能だったのでバージョンを変えて実行することにしました。

podmanを諦める

てなわけでVMをスナップショットから戻してもう一度やり直し今度は、参考にさせて頂いた記事通りのリポジトリバージョンをクローンして実行しました

git clone -b 17.0.1 https://github.com/ansible/awx.git

きちんとインベントリファイルもあり記事通りadminパスワード部分だけコメントアウトしていざ実行!

しかし途中でとまる!・・・

今日は、ここまで一旦切り上げてpodmanを一旦やめてDcokerでリトライしてみようと思います。

コンテナは、使い慣れていないのでAWXのGitで紹介されている通りにまずは、Dokcerできちんと構築できるようにしてからにしようかと思います。

CentOS8でもDockerの公式リポジトリを使えばDokcerをインストール出来るので

まあ明日チャレンジして記事にしたいと思います。

以上、ありがとう御座いました。


この記事が気に入ったらサポートをしてみませんか?