AWXにpytnonのモジュールを追加したりコンテナ再構築する方法

ここでは、Ansibleの自作モジュールをAWXで動作させる方法とコンテナの再構築方法について記録しておきます。

AWXにpythonのモジュールを追加する方法

Ansibleの自作モジュールを作ると標準モジュールでは使用されていないpythonモジュールを使うこともあると思います。
作成した自作モジュールを動作させる場合、必要なpythonモジュールをAWXに追加インストールしてあげる必要があります。
ただ、AWXはDockerコンテナで動作しているためDockerが稼働しているホストにpythonモジュールをインストールしてもAWX側から認識できません。
pythonモジュールを追加でインストールする場合は、テンプレートを実行するコンテナにインストールしてあげる必要があります。

pythonモジュール追加手順

コンテナへ移動

AWXでは awx_task というコンテナでテンプレートを実行しています。

pythonモジュールの追加は awx_task コンテナにする必要があります。
例えば、以下は pysphere をインストールする手順になります。

AWXに自作モジュールを共有する方法

やり方としては、共有ボリュームの /var/lib/awx/projects に保存するか、awx_task コンテナの中に移動させるやり方があります。
どちらのやり方でも問題ないですが、AWXの環境変数にも自作モジュールを保存したディレクトリパスを設定する必要があります。
設定箇所は 設定追加の環境変数 です。
以下の例では ANSIBLE_LIBRARY 環境変数に /var/lib/awx/projects/module へ自作モジュールをインストールしています。


http://docs.ansible.com/ansible/latest/reference_appendices/config.html#environment-variables

パスを追加したら 保存 をクリックします。

awx_taskコンテナの再構築

awx_task コンテナの再構築方法です。
検証で色々といじくりまわして元に戻したい時があると思います。

コンテナ停止

awx_task コンテナを停止します。

コンテナ削除

awx_task コンテナを削除します。

イメージ削除

次に awx_task のイメージを削除します。

awx_task再構築

awxのplaybookを実行します。

Leave a Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)