Documentation

3. Execution Environments へのアップグレード

古いバージョンの automation controller から 4.0 以降にアップグレードする場合、コントローラーは組織、インベントリー、およびジョブテンプレートに関連付けられた以前のバージョンの仮想環境を検出することができ、新規の execution environment モデルに移行する必要があることを知らせます。automation controller の新規インストールは、インストール時に 2 つの virtualenv を作成します。その 1 つはコントローラー自身の実行に使用され、もう 1 つは Ansible の実行に使用されます。従来の仮想環境と同様に、execution environments を使用すると、コントローラーが安定した環境で実行でき、必要に応じて execution environment にモジュールを追加または更新して Playbook を実行することができます。詳細は Automation Controller User GuideExecution Environments を参照してください。

3.1. レガシー virtualenv を execution environments に移行する

新しい execution environment にセットアップを移行することで、以前のカスタムの仮想環境とまったく同じセットアップを execution environment に設定することができます。このセクションの awx-manage コマンドを使用して、以下を実行します。

  • 現在のすべてのカスタムの仮想環境とそのパスの一覧 (list_custom_venvs)

  • 特定のカスタムの仮想環境に依存するリソースの表示 (custom_venv_associations)

  • 特定のカスタムの仮想環境の execution environment (export_custom_venv) への移行に使用可能な形式へのエクスポート

  1. 移行前に、awx-manage list コマンドを使用して、現在実行しているカスタムの仮想環境をすべて表示することが推奨されます。

$ awx-manage list_custom_venvs

以下は、このコマンドの出力例です。

_images/venv-awx-manage-list-custom-venvs.png

この出力には、3 つのカスタムの仮想環境とそのパスが表示されます。デフォルトの /var/lib/awx/venv/ ディレクトリーパス内にないカスタムの仮想環境がある場合は、ここには含まれません。

  1. _associations コマンドを使用して、カスタムの仮想環境が関連付けられている組織、ジョブ、およびインベントリーソースを表示し、それらに依存しているリソースを判別します。

$ awx-manage custom_venv_associations /this/is/the/path/

以下は、このコマンドの出力例です。

_images/venv-awx-manage-custom-venv-associations.png
  1. 移行する仮想環境のパスを選択し、awx-manage export コマンドで指定します。

$ awx-manage export_custom_venv /this/is/the/path/

その結果の出力は基本的に pip freeze コマンドの実行の結果になります。以下の例は、選択したカスタム仮想環境のコンテンツを示しています。

_images/venv-awx-manage-export-custom-venvs.png

注釈

これらのコマンドはすべて、-q オプションで実行可能です。このオプションは、各出力で提供される説明コンテンツを削除します。

この pip freeze データからの出力が得られたので、ansible-builder を使用して新しい execution environment を起動するために使用できる定義ファイルに貼り付けることができます。誰でも (通常ユーザーと管理者の両方) ansible-builder を使用して execution environment を作成できます。詳細は Automation Controller User GuideExecution Environment のビルド を参照してください。