コンテンツナビゲーターの使用


Red Hat Ansible Automation Platform 2.5

Ansible Automation Platform と互換性のあるコンテンツの開発

Red Hat Customer Content Services

概要

このガイドでは、Automation content navigator を使用して、Ansible Automation Platform と互換性のある Ansible Playbook、コレクション、およびロールを開発する方法を説明します。

Red Hat ドキュメントへのフィードバック (英語のみ)

このドキュメントの改善に関するご意見がある場合や、エラーを発見した場合は、https://access.redhat.com から Technical Support チームに連絡してください。

第1章 Automation content navigator の概要

コンテンツ作成者は、Automation content navigator を使用して、Red Hat Ansible Automation Platform と互換性のある Ansible Playbook、コレクション、およびロールを開発できます。以下の環境で Automation content navigator を使用すると、すべての環境でシームレスかつ予測可能な結果が得られます。

  • ローカルの開発マシン
  • 自動化実行環境

また、Automation content navigator は、Playbook の開発および問題領域のトラブルシューティングに役立つアーティファクトファイルも作成します。

注記

Automation content navigator は、Ansible 開発ツールのコンポーネントです。Automation content navigator を使用するには、Ansible 開発ツールをインストールする必要があります。

1.1. Automation content navigator の使用

Automation content navigator は、テキストベースのユーザーインターフェイスを備えたコマンドラインのコンテンツクリエイターに焦点を当てたツールです。Automation content navigator を使用して、以下を実行できます。

  • ジョブおよび Playbook を起動し、監視します。
  • 保存され、完成した Playbook とジョブ実行アーティファクトを JSON 形式で共有します。
  • 自動化実行環境を閲覧およびイントロスペクションします。
  • ファイルベースのインベントリーを参照します。
  • Ansible モジュールのドキュメントをレンダリングし、Playbook で使用できるサンプルをデプロイメントします。
  • ユーザーインターフェイスで詳細なコマンド出力を表示します。

1.2. Automation content navigator のモード

Automation content navigator は 2 つのモードで動作します。

標準出力 (stdout) モード
コマンドラインで既存の Ansible コマンドおよび拡張機能の大部分を受け入れます。
テキストベースのユーザーインターフェイスモード
Ansible コマンドに対する、インタラクティブなテキストベースのインターフェイスを提供します。このモードを使用して、コンテンツを評価し、Playbook を実行し、アーティファクトファイルを使用して実行した後に Playbook のトラブルシューティングを行います。

1.2.1. 標準出力 (stdout) モード

Automation content navigator で -m stdout サブコマンドを使用して、自動化実行環境内やローカルの開発環境上で ansible-playbook などの一般的な Ansible コマンドを使用します。使い慣れたコマンドを使用して、素早くタスクを実行することができます。

また、このモードの Automation content navigator には、広範にわたるヘルプが含まれています。

--help
ansible-navigator コマンドまたはサブコマンド (ansible-navigator config --help など) からアクセスできます。
サブコマンドのヘルプ
サブコマンド (例: ansible-navigator config --help-config) からアクセスできます。このヘルプには、関連する Ansible コマンドでサポートされているすべてのパラメーターの詳細が表示されます。

1.2.2. テキストベースのユーザーインターフェイスモード

テキストベースのユーザーインターフェイスモードは、自動化実行環境、コレクション、Playbook、およびインベントリーとの対話を強化します。このモードは、Visual Studio Code などの統合開発環境 (IDE) と互換性があります。

テキストベースのユーザーインターフェイスモード

このモードには、便利なユーザーインターフェイスオプションが多数含まれています。

コロンコマンド
:run:collections など、コロンを使用して、すべての Automation content navigator コマンドにアクセスできます。
テキストベースのインターフェイスの移動
この画面には、ページアップまたはページダウン、スクロール、前の画面へのエスケープ、または :help へのアクセス方法が表示されます。
行番号による出力
表示された出力の行番号の前にコロンを付ける (例: :12) と、その行にアクセスできます。
色でコーディングされた出力
色を有効にすると、Automation content navigator は非推奨のモジュールなどのアイテムを赤で表示します。
ページネーションおよびスクロール
各 Automation content navigator 画面の下部に表示されるオプションを使用して、ページを上下に移動したり、スクロールしたり、エスケープしたりできます。

Automation content navigator の実行後は、モード間の切り替えができません。

このドキュメントでは、ほとんどの手順でテキストベースのユーザーインターフェイスモードを使用します。

1.3. Automation content navigator コマンド

Automation content navigator コマンドは、一般的な Ansible CLI コマンドを -m stdout モードで実行します。関連する Ansible CLI コマンドのすべてのサブコマンドおよびオプションを使用できます。詳細は、ansible-navigator --help を使用してください。

Expand
表1.1 Automation content navigator コマンド
コマンド説明CLI の例

collections

利用可能なコレクションを調べる

ansible-navigator collections --help

config

現在の Ansible 設定を調べる

ansible-navigator config --help

doc

モジュールまたはプラグインのドキュメントを参照する

ansible-navigator doc --help

images

実行環境イメージを調べる

ansible-navigator images --help

inventory

インベントリーを調べる

ansible-navigator inventory --help

replay

Playbook アーティファクトを使用して以前の実行を調べる

ansible-navigator replay --help

run

Playbook を実行する

ansible-navigator run --help

welcome

Welcome ページから開始する

ansible-navigator welcome --help

1.4. Ansible コマンドと Automation content navigator コマンド間の関係

Automation content navigator コマンドは、一般的な Ansible CLI コマンドを -m stdout モードで実行します。関連する Ansible CLI コマンドで利用できるすべてのサブコマンドおよびオプションを使用できます。詳細は、ansible-navigator --help を使用してください。

Expand
表1.2 Automation content navigator コマンドと Ansible CLI コマンドの比較
Automation content navigator コマンドAnsible CLI コマンド

ansible-navigator collections

ansible-galaxy collection

ansible-navigator config

ansible-config

ansible-navigator doc

ansible-doc

ansible-navigator inventory

ansible-inventory

ansible-navigator run

ansible-playbook

第2章 Ansible 開発ツールのインストール

Red Hat は、Ansible 開発ツールをインストールするための 2 つの選択肢を提供しています。

  • VS Code 内で実行されている RHEL コンテナーへのインストール。このオプションは、MacOS、Windows、Linux システムにインストールできます。
  • RPM (Red Hat Package Manager) パッケージを使用した、ローカルの RHEL 8 または RHEL 9 システムへのインストール。

    注記

    RHEL 10 では RPM インストールはサポートされていません。

2.1. 要件

Ansible 開発ツールをインストールして使用するには、次の要件を満たす必要があります。Windows インストールおよびコンテナーインストールの追加要件は、手順に記載されています。

  • Python 3.10 以降。
  • Ansible 拡張機能を追加した VS Code (Visual Studio Code)。VS Code のインストール 参照してください。
  • コンテナーインストールの場合は、Microsoft Dev Containers VS Code 拡張機能。Dev Containers 拡張機能のインストールと設定 を参照してください。
  • コンテナー化プラットフォーム (例: Podman、Podman Desktop、Docker、Docker Desktop)。

    注記

    Windows での Ansible 開発ツールのインストール手順では、Podman Desktop の使用方法だけを取り上げています。Windows での Ansible 開発ツールの要件 を参照してください。

  • Red Hat アカウントをお持ちの場合は、registry.redhat.io で Red Hat コンテナーレジストリーにログインできます。registry.redhat.io へのログインは、Red Hat コンテナーレジストリーでの認証 を参照してください。

2.1.1. Windows での Ansible 開発ツールの要件

Windows 上の VS Code のコンテナーに Ansible 開発ツールをインストールする場合は、追加の要件があります。

  • Windows Subsystem for Linux (WSL2)
  • Podman Desktop

手順

  1. ディストリビューションなしで WSL2 をインストールします。

    $ `wsl --install --no-distribution`
  2. WSL2 の cgroupsv1 を無効にして cgroupsv2 を使用します。

    %USERPROFILE%/wsl.conf ファイルを編集し、次の行を追加して cgroupv2 の使用を強制します。

    [wsl2]
    kernelCommandLine = cgroup_no_v1="all"
  3. Podman Desktop をインストールします。Podman Desktop ドキュメントの Installing Podman Desktop and Podman on Windows の手順を実行します。

    セットアップウィザードでデフォルト設定を変更する必要はありません。

  4. podman マシンが cgroupsv2 を使用していることを確認します。

    $ podman info | findstr cgroup
  5. Podman デスクトップをテストします。

    $ podman run hello
  6. Podman Desktop を設定します。次の内容を含む %USERPROFILE%\bin\docker.bat ファイルを追加します。

    @echo off
    podman %*

    これにより、VS Code の Dev Container 拡張機能に必要な Docker をインストールする必要がなくなります。

  7. %USERPROFILE%\bin ディレクトリーを PATH に追加します。

    1. Settings を選択し、"Edit environment variables for your account" を検索して、すべてのユーザー環境変数を表示します。
    2. 上部のユーザー変数ボックスで "Path" を強調表示し、Edit をクリックしてパスを追加します。
    3. Save をクリックして、新しく開くコンソールのパスを設定します。

2.1.2. Red Hat コンテナーレジストリーでの認証

Red Hat Container Catalog を通じて利用できるすべてのコンテナーイメージは、イメージレジストリーの registry.redhat.io でホストされています。イメージにアクセスするには、レジストリーで認証が必要です。

registry.redhat.io レジストリーを使用するには、Red Hat ログイン情報が必要です。これは、Red Hat カスタマーポータル (access.redhat.com) にログインして Red Hat サブスクリプションを管理するために使用するアカウントと同じものです。

注記

VS Code 内のコンテナーに Ansible 開発ツールをインストールする予定の場合は、VS Code を起動する前に registry.redhat.io にログインして、VS Code が registry.redhat.io から devtools コンテナーをプルできるようにする必要があります。

VS Code 内のコンテナーで Ansible 開発ツールを実行中で、実行環境または devcontainer をプルして実行環境として使用する場合は、VS Code 内のターミナルから devcontainer 内のターミナルプロンプトにログインする必要があります。

認証情報を使用して podman login または docker login コマンドを使用すると、レジストリーのコンテンツにアクセスできます。

Podman
$ podman login registry.redhat.io
Username: my__redhat_username
Password: ***********
Docker
$ docker login registry.redhat.io
Username: my__redhat_username
Password: ***********

Red Hat コンテナーレジストリー認証の詳細は、Red Hat カスタマーポータルの Red Hat Container Registry Authentication を参照してください。

2.1.3. VS Code のインストール

2.1.4. VS Code Ansible 拡張機能のインストール

Ansible 拡張機能は、VS Code に Ansible の言語サポートを追加します。この拡張機能には、自動化コンテンツの作成と実行を容易にするために、Ansible 開発ツールが組み込まれています。

Ansible 拡張機能の詳細な説明は、Visual Studio Code Marketplace を参照してください。

拡張機能の操作に関するチュートリアルは、Learning path - Getting Started with the Ansible VS Code Extension を参照してください。

Ansible VS Code 拡張機能をインストールするには、以下を実行します。

  1. VS Code を開きます。
  2. アクティビティーバーの Extensions ( Extensions ) アイコンをクリックするか、ViewExtensions をクリックして Extensions ビューを表示します。
  3. Extensions ビューの検索フィールドに Ansible Red Hat と入力します。
  4. Ansible 拡張機能を選択し、Install をクリックします。

ファイルの言語が Ansible として認識されると、Ansible 拡張機能によってオートコンプリート、ホバー、マウスオーバー、goto などの機能が提供されます。認識されたファイルの言語は、VS Code ウィンドウの下部にあるステータスバーに表示されます。

Ansible 言語は次のファイルに割り当てられています。

  • /playbooks ディレクトリー内の YAML ファイル
  • 二重拡張子 .ansible.yml または .ansible.yaml を持つファイル
  • Ansible が認識する特定の YAML 名 (例: site.ymlsite.yaml)
  • ファイル名に "playbook" が含まれる YAML ファイル (playbook.yml または playbook.yaml)

拡張機能が Playbook ファイルの言語を Ansible として認識しない場合は、Ansible 言語を YAML ファイルに関連付ける の手順に従ってください。

2.1.5. Ansible 拡張機能の設定

Ansible 拡張機能は複数の設定方法をサポートしています。

拡張機能の設定は、ユーザーレベル、ワークスペースレベル、または特定のディレクトリーで設定できます。ユーザーベースの設定は、開かれている VS Code のすべてのインスタンスに対し、グローバルに適用されます。ワークスペース設定はワークスペース内に保存され、現在のワークスペースを開いたときにのみ適用されます。

ワークスペースを設定すると、以下の点で便利です。

  • Playbook プロジェクトに固有の設定を定義して維持すると、他の作業の優先設定を変更することなく、個々のプロジェクトに合わせて Ansible 開発環境をカスタマイズできます。Python プロジェクト、Ansible プロジェクト、C++ プロジェクトごとに異なる設定が可能で、それぞれのスタックに合わせて最適化されているため、プロジェクトを切り替えるたびに手動で再設定する必要はありません。
  • チームと共有するプロジェクトのバージョン管理をセットアップするときにワークスペース設定を含めると、全員がそのプロジェクトに対して同じ設定を使用します。

手順

  1. Ansible 拡張機能の設定を開きます。

    1. アクティビティーバーで、'Extensions' アイコンをクリックします。
    2. Ansible 拡張機能を選択し、'歯車' アイコン、Extension Settings の順にクリックして拡張機能設定を表示します。

      または、CodeSettingsSettings をクリックして Settings ページを開きます。

    3. 検索バーに Ansible と入力して拡張機能の設定を表示します。
  2. 現在の VS Code ワークスペースの設定を行うには、Workspace タブを選択します。
  3. Ansible 拡張機能の設定は事前に入力されています。要件に合わせて設定を変更します。

    • ansible-lint を有効にするには、AnsibleValidationLint: Enabled ボックスをオンにします。
    • 実行環境を使用するには、Ansible Execution Environment: Enabled ボックスをオンにします。
    • Ansible > Execution Environment: image フィールドで使用する実行環境イメージを指定します。
    • Red Hat Ansible Lightspeed を使用するには、Ansible > Lightspeed: Enabled ボックスをオンにし、Lightspeed の URL を入力します。

設定は、VisualStudio マーケットプレイスのドキュメントの Ansible VS Code Extension by Red Hat ページに記載されています。

2.1.6. Ansible 言語を YAML ファイルに関連付ける

Ansible VS Code 拡張機能は、ファイルに関連付けられた言語が Ansible に設定されている場合にのみ機能します。この拡張機能は、自動補完、マウスオーバー、診断など、Ansible Playbook の作成に役立つ機能を提供します。

Ansible VS Code 拡張機能は、Ansible 言語をファイルに自動的に関連付けます。以下の手順では、Ansible ファイルとして認識されないファイルの言語を設定する方法を説明します。

Ansible 言語を YAML ファイルに手動で関連付ける

次の手順では、VS Code で開いている YAML ファイルに Ansible 言語を手動で割り当てる方法を説明します。

  1. VS Code で YAML ファイルを開くか作成します。
  2. VS Code ウィンドウの下部にあるステータスバーに表示されている言語の上にカーソルを置き、Select Language Mode リストを開きます。
  3. リストから Ansible を選択します。

    ファイルの VS Code ウィンドウの下部にあるステータスバーに表示される言語が Ansible に変更されます。

Ansible 言語の永続的なファイル関連付けを settings.json に追加する

または、settings.json ファイルに Ansible 言語のファイル関連付けを追加することもできます。

  1. settings.json ファイルを開きます。

    1. ViewCommand Palette をクリックして、コマンドパレットを開きます。
    2. 検索ボックスに Workspace settings と入力し、Open Workspace Settings (JSON) を選択します。
  2. 次のコードを settings.json に追加します。

    {
      ...
    
      "files.associations": {
        "*plays.yml": "ansible",
        "*init.yml": "yaml",
      }
    }

2.1.7. Dev Containers 拡張機能のインストールと設定

コンテナー化されたバージョンの Ansible 開発ツールをインストールする場合は、VS Code に Microsoft Dev Containers 拡張機能をインストールする必要があります。

  1. VS Code を開きます。
  2. アクティビティーバーの Extensions ( Extensions ) アイコンをクリックするか、ViewExtensions をクリックして Extensions ビューを表示します。
  3. Extensions ビューの検索フィールドに Dev Containers と入力します。
  4. Microsoft の Dev Containers 拡張機能を選択し、Install をクリックします。

コンテナー化プラットフォームとして Podman または Podman Desktop を使用する場合は、Dev Containers 拡張機能のデフォルト設定を変更する必要があります。

  1. Dev Containers 拡張設定で docker を podman に置き換えます。

    1. VS Code で設定エディターを開きます。
    2. @ext:ms-vscode-remote.remote-containers を検索します。

      または、アクティビティーバーの Extensions アイコンをクリックし、Dev Containers 拡張機能の歯車アイコンをクリックします。

  2. Dev > Containers:Docker Pathpodman に設定します。
  3. Dev > Containers:Docker Compose Pathpodman-compose に設定します。

2.2. VS Code 内のコンテナーに Ansible 開発ツールをインストールする

Dev Containers VS Code 拡張機能には、開発コンテナーの設定を保存するための .devcontainer ファイルが必要です。Ansible 拡張機能を使用して、開発コンテナー用の設定ファイルをスキャフォールディングし、VS Code のコンテナーでディレクトリーを再度開く必要があります。

前提条件

  • Podman、Podman Desktop、Docker、Docker Desktop などのコンテナー化プラットフォームをインストール済みである。
  • Red Hat ログイン情報をお持ちであり、registry.redhat.io の Red Hat レジストリーにログインしている。registry.redhat.io へのログインは、Red Hat コンテナーレジストリーでの認証 を参照してください。
  • VS Code がインストールされていること。
  • VS Code に Ansible 拡張機能をインストール済みである。
  • VS Code に Microsoft Dev Containers 拡張機能をインストール済みである。
  • Windows に Ansible 開発ツールをインストールする場合は、VS Code を起動して WSL マシンに接続する。

    1. Remote ( Remote ) アイコンをクリックします。
    2. 表示されるドロップダウンメニューで、WSL マシンに接続するオプションを選択します。

手順

  1. VS Code でプロジェクトディレクトリーに移動します。
  2. VS Code アクティビティーバーの Ansible アイコンをクリックして、Ansible 拡張機能を開きます。
  3. Ansible 拡張機能の Ansible Development Tools セクションで、ADD オプションまでスクロールダウンし、Devcontainer を選択します。
  4. Create a devcontainer ページで、Container image オプションから Downstream コンテナーイメージを選択します。

    このアクションにより、Podman と Docker の両方の devcontainer.json ファイルが .devcontainer ディレクトリーに追加されます。

  5. プロジェクトディレクトリーを再度開くか、リロードします。

    • VS Code がディレクトリーに devcontainer.json ファイルが含まれていることを検出すると、以下の通知が表示されます。

      コンテナーでサイド開く

      Reopen in Container をクリックします。

    • 通知が表示されない場合は、Remote ( Remote ) アイコンをクリックします。表示されるドロップダウンメニューで、Reopen in Container を選択します。
  6. 使用しているコンテナー化プラットフォームに応じて、Podman または Docker の開発コンテナーを選択します。

    VS Code ステータスバーの Remote() ステータスに opening Remote が表示され、通知にコンテナーを開く操作の進行状況が示されます。

検証

コンテナー内でディレクトリーが再度開かれると、Remote() ステータスに Dev Container: ansible-dev-container と表示されます。

注記

コンテナーのベースイメージは、パッケージマネージャーとして microdnf を使用する Universal Base Image Minimal (UBI Minimal) イメージです。dnf および yum パッケージマネージャーはコンテナーでは使用できません。

UBI Minimal イメージベースのコンテナーで microdnf を使用する方法は、Red Hat Enterprise Linux の コンテナーの構築、実行、および管理 ガイドの UBI minimal コンテナーへのソフトウェアの追加 を参照してください。

2.3. RHEL のパッケージから Ansible 開発ツールをインストールする

Ansible 開発ツールは、Ansible Automation Platform RPM (Red Hat Package Manager) パッケージにバンドルされています。Ansible Automation Platform のインストールは、RPM インストール ドキュメントを参照してください。

前提条件

  • RHEL 8 または RHEL 9 をインストールした。

    注記

    RHEL 10 では RPM インストールはサポートされていません。

  • Red Hat Subscription Manager でシステムを登録済みである。
  • Podman や Docker などのコンテナー化プラットフォームをインストール済みである。

手順

  1. 次のコマンドを実行して、Simple Content Access (SCA) が有効化されているか確認します。

    $ sudo subscription-manager status

    Simple Content Access が有効化されている場合、出力には次のメッセージが含まれます。

    Content Access Mode is set to Simple Content Access.
    1. Simple Content Access が有効化されていない場合は、Red Hat Ansible Automation Platform SKU をアタッチします。

      $ sudo subscription-manager attach --pool=<sku-pool-id>
  2. 次のコマンドで Ansible 開発ツールをインストールします。

    $ sudo dnf install --enablerepo=ansible-automation-platform-2.5-for-rhel-8-x86_64-rpms ansible-dev-tools
    $ sudo dnf install --enablerepo=ansible-automation-platform-2.5-for-rhel-9-x86_64-rpms ansible-dev-tools

検証:

Ansible 開発ツールコンポーネントがインストールされていることを確認します。

$ rpm -aq | grep ansible

出力には、インストールされている Ansible パッケージが表示されます。

ansible-sign-0.1.1-2.el9ap.noarch
ansible-creator-24.4.1-1.el9ap.noarch
python3.11-ansible-runner-2.4.0-0.1.20240412.git764790f.el9ap.noarch
ansible-runner-2.4.0-0.1.20240412.git764790f.el9ap.noarch
ansible-builder-3.1.0-0.2.20240413.git167ed5c.el9ap.noarch
ansible-dev-environment-24.1.0-2.el9ap.noarch
ansible-core-2.16.6-0.1.20240413.gite636132.el9ap.noarch
python3.11-ansible-compat-4.1.11-2.el9ap.noarch
python3.11-pytest-ansible-24.1.2-1.el9ap.noarch
ansible-lint-6.14.3-4.el9ap.noarch
ansible-navigator-3.4.1-2.el9ap.noarch
python3.11-tox-ansible-24.2.0-1.el9ap.noarch
ansible-dev-tools-2.5-2.el9ap.noarch

インストールが成功すると、ansible-creator のヘルプドキュメントを表示できます。

$ ansible-creator --help

usage: ansible-creator [-h] [--version] command ...

The fastest way to generate all your ansible content.

Positional arguments:
 command
  add           Add resources to an existing Ansible project.
  init          Initialize a new Ansible project.

Options:
 --version      Print ansible-creator version and exit.
 -h     --help  Show this help message and exit

第3章 Automation content navigator を使用した自動化実行環境の確認

コンテンツ開発者は、Automation content navigator で自動化実行環境を確認し、自動化実行環境に含まれるパッケージとコレクションを表示できます。Automation content navigator は Playbook を実行して結果を抽出し、表示します。

3.1. Automation content navigator からの自動化実行環境の確認

Automation content navigator のテキストベースのユーザーインターフェイスを使用して、自動化実行環境を確認できます。

前提条件

  • 自動化実行環境

手順

  1. Automation content navigator 設定に含まれる自動化実行環境を確認します。

    $ ansible-navigator images
    自動化実行環境一覧
  2. 詳細を確認する自動化実行環境の番号を入力します。

    自動化実行環境の詳細

    インストールされている各自動化実行環境のパッケージおよびバージョン、ならびに Ansible バージョンに含まれるコレクションを確認できます。

  3. オプション: 使用する自動化実行環境を渡します。これはプライマリーであり、Automation content navigator が使用する自動化実行環境です。

    $ ansible-navigator images --eei registry.example.com/example-enterprise-ee:latest

検証

  • 自動化実行環境の出力を確認します。

    自動化実行環境の出力

第4章 Automation content navigator を使用したインベントリーの確認

コンテンツ作成者は、Automation content navigator を使用して Ansible インベントリーを確認し、グループとホストをインタラクティブに調べることができます。

4.1. Automation content navigator からインベントリーの確認

インタラクティブモードの Automation content navigator のテキストベースのユーザーインターフェイスを使用して Ansible インベントリーを確認し、グループとホストを詳しく調べることができます。

前提条件

  • 有効なインベントリーファイルまたはインベントリープラグイン

手順

  1. Automation content navigator を起動します。

    $ ansible-navigator

    オプション: コマンドラインから ansible-navigator inventory -i simple_inventory.yml と入力してインベントリーを表示します。

  2. インベントリーを確認します。

     :inventory -i simple_inventory.yml
    
       TITLE            DESCRIPTION
    0│Browse groups    Explore each inventory group and group members members
    1│Browse hosts     Explore the inventory with a list of all hosts
  3. 0 を入力してグループを表示します。

      NAME               TAXONOMY                      TYPE
    0│general            all                           group
    1│nodes              all                           group
    2│ungrouped          all                           group

    TAXONOMY フィールドには、選択したグループまたはノードが属するグループの階層の詳細が表示されます。

  4. 調べるグループに対応する番号を入力します。

      NAME              TAXONOMY                        TYPE
    0│node-0            all▸nodes                       host
    1│node-1            all▸nodes                       host
    2│node-2            all▸nodes                       host
  5. 調べるホストに対応する番号を入力します。番号が 9 以上になる場合は、:<number> と入力します。

    [node-1]
    0│---
    1│ansible_host: node-1.example.com
    2│inventory_hostname: node-1

検証

  • インベントリーの出力を確認します。

      TITLE            DESCRIPTION
    0│Browse groups   Explore each inventory group and group members members
    1│Browse hosts    Explore the inventory with a list of all hosts

第5章 Automation content navigator を使用したコレクションの参照

コンテンツ作成者は、Automation content navigator で Ansible コレクションを参照し、ローカルまたは自動化実行環境で開発した各コレクションをインタラクティブに調べることができます。

5.1. Automation content navigator コレクションの表示

Automation content navigator は、各コレクションに以下の詳細を含むコレクションに関する情報を表示します。

SHADOWED
コレクションの追加コピーが検索順序の上位にあり、Playbook がそのコレクションを優先することを示します。
TYPE
コレクションが自動化実行環境にマウントされている自動化実行環境またはボリュームに bind_mount として含まれるかどうかを示します。
PATH
コレクション TYPE フィールドに基づいて、自動化実行環境またはローカルファイルシステム内のコレクションの場所を反映します。
Automation content navigator コレクションの表示

5.2. Automation content navigator からのコレクションの参照

Automation content navigator テキストベースのユーザーインターフェイスを使用して、インタラクティブモードで Ansible コレクションを参照し、各コレクションを詳しく調べることができます。Automation content navigator は、現在のプロジェクトディレクトリー内のコレクションと、自動化実行環境で利用可能なコレクションを表示します。

前提条件

  • ローカルでアクセス可能なコレクションまたはインストールされた自動化実行環境。

手順

  1. Automation content navigator を起動します。

    $ ansible-navigator
  2. コレクションを参照します。または、ansible-navigator collections と入力してコレクションを直接参照することもできます。

    $ :collections
    Automation content navigator に表示される Ansible コレクションのリスト
  3. 確認するコレクションの数を入力します。

    :4
    Automation content navigator に表示されるコレクション
  4. 調べるモジュールに対応する番号を入力します。

    ANSIBLE.UTILS.IP_ADDRESS: Test if something in an IP address
     0│---
     1│additional_information: {}
     2│collection_info:
     3│  authors:
     4│  - Ansible Community
     5│  dependencies: {}
     6│  description: Ansible Collection with utilities to ease the management, manipulation,
     7│    and validation of data within a playbook
     8│  documentation: null
     9│  homepage: null
    10│  issues: null
    11│  license: []
    12│  license_file: LICENSE
    13│  name: ansible.utils
    14│  namespace: ansible
    15│  path:/usr/share/ansible/collections/ansible_collections/ansible/utils/
    16│  readme: README.md
    <... output truncated...>
  5. オプション: このモジュールのドキュメントの例に移動します。

    :{{ examples }}
    
    0│
    1│
    2│#### Simple examples
    3│
    4│- name: Check if 10.1.1.1 is a valid IP address
    5│  ansible.builtin.set_fact:
    6│    data: "{{ '10.1.1.1' is ansible.utils.ip_address }}"
    7│
    8│# TASK [Check if 10.1.1.1 is a valid IP address] *********************
    9│# ok: [localhost] => {
    10│#     "ansible_facts": {
    11│#         "data": true
    12│#     },
    13│#     "changed": false
    14│# }
    15│
  6. オプション: エディターでサンプルを開き、それを Playbook にコピーします。

    :open
    編集ツールに表示されるドキュメンテーションの例

検証

  • コレクションリストを参照します。

    Collection list

5.3. Automation content navigator のドキュメントの確認

インタラクティブモードで Automation content navigator テキストベースのユーザーインターフェイスを使用して、コレクションとプラグインの Ansible ドキュメントを確認できます。Automation content navigator は、現在のプロジェクトディレクトリー内のコレクションと自動化実行環境で利用可能なコレクションを表示します。

前提条件

  • ローカルでアクセス可能なコレクションまたはインストールされた自動化実行環境。

手順

  1. Automation content navigator を起動します。

    $ ansible-navigator
  2. 対象のモジュールを確認します。または、ansible-navigator doc と入力してドキュメントにアクセスすることもできます。

    :doc ansible.utils.ip_address
    ANSIBLE.UTILS.IP_ADDRESS: Test if something in an IP address
     0│---
     1│additional_information: {}
     2│collection_info:
     3│  authors:
     4│  - Ansible Community
     5│  dependencies: {}
     6│  description: Ansible Collection with utilities to ease the management, manipulation,
     7│    and validation of data within a playbook
     8│  documentation: null
     9│  homepage: null
    10│  issues: null
    11│  license: []
    12│  license_file: LICENSE
    13│  name: ansible.utils
    14│  namespace: ansible
    15│  path:/usr/share/ansible/collections/ansible_collections/ansible/utils/
    16│  readme: README.md
    <... output truncated...>
  3. このモジュールのドキュメント例に移動します。

    :{{ examples }}
    
    0│
    1│
    2│#### Simple examples
    3│
    4│- name: Check if 10.1.1.1 is a valid IP address
    5│  ansible.builtin.set_fact:
    6│    data: "{{ '10.1.1.1' is ansible.utils.ip_address }}"
    7│
    8│# TASK [Check if 10.1.1.1 is a valid IP address] *********************
    9│# ok: [localhost] => {
    10│#     "ansible_facts": {
    11│#         "data": true
    12│#     },
    13│#     "changed": false
    14│# }
    15│
  4. オプション: エディターでサンプルを開き、それを Playbook にコピーします。

    :open
    エディターでのドキュメントの例

    エディターのセットアップ方法の詳細は、Automation content navigator の一般設定 を参照してください。

第6章 Automation content navigator を使用した Ansible Playbook の実行

コンテンツ作成者は、Automation content navigator を使用して Ansible Playbook を実行し、各プレイとタスクの結果をインタラクティブに調べて、Playbook を検証またはトラブルシューティングできます。また、実行環境内で Ansible Playbook を実行すれば、実行環境がなくても、問題を比較してトラブルシューティングできます。

6.1. Automation content navigator からの Playbook の実行

Automation contents navigator のテキストベースのユーザーインターフェイスで Ansible Playbook を実行して、タスクの実行を追跡し、各タスクの結果を詳しく調べることができます。

前提条件

  • Playbook
  • localhost または inventory プラグインを使用しない場合は有効なインベントリーファイル。

手順

  1. Automation content navigator を起動します。

    $ ansible-navigator
  2. Playbook を実行します。

    $ :run
  3. オプション: ansible-navigator run simple-playbook.yml -i inventory.yml を入力して Playbook を実行します。
  4. インベントリーおよびその他のコマンドラインパラメーターを確認または追加します。

    INVENTORY OR PLAYBOOK NOT FOUND, PLEASE CONFIRM THE FOLLOWING
    ─────────────────────────────────────────────────────────────────────────
       Path to playbook: /home/ansible-navigator_demo/simple_playbook.yml
       Inventory source: /home/ansible-navigator-demo/inventory.yml
      Additional command line parameters: Please provide a value (optional)
    ──────────────────────────────────────────────────────────────────────────
                                                               Submit Cancel
  5. Tab キーを押して Submit に移動し、Enter キーを押します。実行中のタスクが表示されるはずです。

    Playbook タスクの実行
  6. プレイ結果を確認するプレイの横に番号を入力します。9 を超える数字の場合は :<number> と入力します。

    タスクリスト

    Automation content navigator で色を有効にしている場合は、失敗したタスクが赤で表示されることに注意してください。

  7. タスクの結果を確認するタスクの横に番号を入力します。9 を超える番号の場合は :<number> と入力します。

    失敗したタスクの結果
  8. オプション::doc と入力し、トラブルシューティングを支援するタスクで使用されるモジュールまたはプラグインのドキュメントを起動します。

    ANSIBLE.BUILTIN.PACKAGE_FACTS (MODULE)
      0│---
      1│doc:
      2│  author:
      3│  - Matthew Jones (@matburt)
      4│  - Brian Coca (@bcoca)
      5│  - Adam Miller (@maxamillion)
      6│  collection: ansible.builtin
      7│  description:
      8│  - Return information about installed packages as facts.
    <... output omitted ...>
     11│  module: package_facts
     12│  notes:
     13│  - Supports C(check_mode).
     14│  options:
     15│    manager:
     16│      choices:
     17│      - auto
     18│      - rpm
     19│      - apt
     20│      - portage
     21│      - pkg
     22│      - pacman
    
    <... output truncated ...>

6.2. Automation content navigator アーティファクトファイルを使用した Playbook の結果の確認

Automation content navigator は、JSON アーティファクトファイルに Playbook 実行の結果を保存します。このファイルを使用して、Playbook の結果を他の人と共有したり、セキュリティーやコンプライアンスの理由で保存したり、後で確認してトラブルシューティングしたりできます。Playbook の実行を確認するには、アーティファクトファイルのみが必要です。Playbook 自体またはインベントリーアクセスを使用する必要はありません。

前提条件

  • Playbook 実行からの Automation content navigator アーティファクトの JSON ファイル。

手順

  • アーティファクトファイルを使用して Automation content navigator を起動します。

    $ ansible-navigator replay simple_playbook_artifact.json
    1. Playbook の実行時に一致する Playbook の結果を確認します。

      Playbook の結果

これで、Playbook を実行した後と同じように、プレイとタスクの横に番号を入力して、それぞれに移動して結果を確認できるようになりました。

第7章 Automation content navigator を使用した Ansible 設定の確認

コンテンツ作成者は、Automation content navigator で Ansible 設定を確認し、インタラクティブに設定を調べることができます。

7.1. Automation content navigator で Ansible 設定の確認

Ansible 設定は、Automation content navigator のテキストベースのユーザーインターフェイスを対話モードで確認でき、設定を詳しく調べることができます。Automation content navigator は、アクセス可能な Ansible 設定ファイルから結果をプルするか、設定ファイルが存在しない場合にはデフォルトを返します。

前提条件

手順

  1. Automation content navigator を起動します。

    $ ansible-navigator

    オプション: コマンドラインから ansible-navigator config を入力し、Ansible 設定にアクセスします。

  2. Ansible 設定を確認します。

     :config
    Ansible の設定

    一部の値は、自動化実行環境が機能するために必要な自動化実行環境の設定を反映しています。これらは、Ansible 設定ファイルでは設定できないデフォルト以外の設定として表示されます。

  3. 詳細を確認する設定に当たる番号を入力します。番号が 9 以上になる場合は、:<number> と入力します。

    ANSIBLE COW ACCEPTLIST (current: ['bud-frogs', 'bunny', 'cheese']) (default:
     0│---
     1│current:
     2│- bud-frogs
     3│- bunny
     4│- cheese
     5│default:
     6│- bud-frogs
     7│- bunny
     8│- cheese
     9│- daemon

出力には、現在の settingdefault が表示されます。設定は自動化実行環境のものであるため、この例の sourceenv であることに注意してください。

検証

  • 設定出力を確認します。

    設定出力

第8章 Automation content navigator の設定

コンテンツ作成者は、開発環境に合わせるために、Automation content navigator を設定できます。

8.1. Automation content navigator 設定ファイルの作成

以下を使用して、デフォルトの Automation content navigator 設定を変更できます。

  • コマンドライン
  • 設定ファイル
  • 環境変数

Automation content navigator は以下の順序で設定ファイルを確認し、最初の一致を使用します。

  • ANSIBLE_NAVIGATOR_CONFIG: 設定されている場合は、設定ファイルのパス環境変数です。
  • ./ansible-navigator.<ext>: 現行プロジェクトディレクトリー内の設定ファイルです。ファイル名にドットはありません。
  • \~/.ansible-navigator.<ext>: ファイル名にドットが含まれるホームディレクトリーです。

Automation content navigator 設定ファイルを作成する場合は、以下を考慮してください。

  • 設定ファイルは、JSON 形式または YAML 形式のいずれかを使用できます。
  • JSON 形式では、拡張子を .json にする必要があります。
  • YAML 形式では、拡張子を .yml または .yaml にする必要があります。
  • プロジェクトおよびホームディレクトリーにはそれぞれ設定ファイルを 1 つだけ使用できます。
  • Automation content navigator が、いずれかのディレクトリーで複数の設定ファイルを見つけると、エラーが発生します。

以下の設定ファイル例を上記のパスのいずれかにコピーして、ansible-navigator 設定ファイルを開始できます。

    ---
    ansible-navigator:
    #   ansible:
    #     config: /tmp/ansible.cfg
    #     cmdline: "--forks 15"
    #     inventories:
    #     - /tmp/test_inventory.yml
    #     playbook: /tmp/test_playbook.yml
    #   ansible-runner:
    #     artifact-dir: /tmp/test1
    #     rotate-artifacts-count: 10
    #     timeout: 300
    #   app: run
    #   collection-doc-cache-path: /tmp/cache.db
    #   color:
    #     enable: False
    #     osc4: False
    #   editor:
    #     command: vim_from_setting
    #     console: False
    #   documentation:
    #     plugin:
    #       name: shell
    #       type: become
    #   execution-environment:
    #     container-engine: podman
    #     enabled: False
    #     environment-variables:
    #       pass:
    #         - ONE
    #         - TWO
    #         - THREE
    #       set:
    #         KEY1: VALUE1
    #         KEY2: VALUE2
    #         KEY3: VALUE3
    #     image: test_image:latest
    #     pull-policy: never
    #     volume-mounts:
    #     - src: "/test1"
    #       dest: "/test1"
    #       label: "Z"
    #   help-config: True
    #   help-doc: True
    #   help-inventory: True
    #   help-playbook: False
    #   inventory-columns:
    #     - ansible_network_os
    #     - ansible_network_cli_ssh_type
    #     - ansible_connection
      logging:
    #     append: False
        level: critical
    #     file: /tmp/log.txt
    #   mode: stdout
    #   playbook-artifact:
    #     enable: True
    #     replay: /tmp/test_artifact.json
    #     save-as: /tmp/test_artifact.json

8.2. Automation content navigator の一般設定

以下の表は、Automation content navigator の一般的な各パラメーターと設定オプションを説明しています。

Expand
表8.1 Automation content navigator の一般的なパラメーター設定
パラメーター説明オプションの設定

ansible-runner-artifact-dir

ansible-runner によって生成されたアーティファクトを保存するディレクトリーパス。

デフォルト: デフォルト値設定なし

CLI: --rad または --ansible-runner-artifact-dir

ENV: ANSIBLE_NAVIGATOR_ANSIBLE_RUNNER_ARTIFACT_DIR

設定ファイル:

ansible-navigator:
  ansible-runner:
    artifact-dir:

ansible-runner-rotate-artifacts-count

最後の n の実行には、ansible-runner アーティファクトディレクトリーを保持します。0 に設定すると、アーティファクトディレクトリーは削除されません。

デフォルト: デフォルト値設定なし

CLI: --rac または --ansible-runner-rotate-artifacts-count

ENV: ANSIBLE_NAVIGATOR_ANSIBLE_RUNNER_ROTATE_ARTIFACTS_COUNT

設定ファイル:

ansible-navigator:
  ansible-runner:
    rotate-artifacts-count:

ansible-runner-timeout

ansible-runner が強制的に実行を停止する場合のタイムアウト値。

デフォルト: デフォルト値設定なし

CLI: --rt または --ansible-runner-timeout

ENV: ANSIBLE_NAVIGATOR_ANSIBLE_RUNNER_TIMEOUT

設定ファイル:

ansible-navigator:
  ansible-runner:
    timeout:

app

Automation content navigator のエントリーポイント。

選択肢: collectionsconfigdocimagesinventoryreplayrun、または welcome

デフォルト: welcome

CLI の例: ansible-navigator collections

ENV: ANSIBLE_NAVIGATOR_APP

設定ファイル:

ansible-navigator:
  app:

cmdline

対応するコマンドに渡す追加のパラメーター。

デフォルト: デフォルト値なし

CLI: 位置

ENV: ANSIBLE_NAVIGATOR_CMDLINE

設定ファイル:

ansible-navigator:
  ansible:
    cmdline:

collection-doc-cache-path

コレクションのドキュメントキャッシュへのパス。

デフォルト: $HOME/.cache/ansible-navigator/collection_doc_cache.db

CLI: --cdcp または --collection-doc-cache-path

ENV: ANSIBLE_NAVIGATOR_COLLECTION_DOC_CACHE_PATH

設定ファイル:

ansible-navigator:
  collection-doc-cache-path:

container-engine

コンテナーエンジンを指定します (auto=podman then docker)。

選択肢: autopodman、または docker

デフォルト: auto

CLI: --ce または --container-engine

ENV: ANSIBLE_NAVIGATOR_CONTAINER_ENGINE

設定ファイル:

ansible-navigator:
  execution-environment:
    container-engine:

display-color

ディスプレイで色の使用を有効にします。

選択肢: True または False

デフォルト: True

CLI: --dc または --display-color

ENV: NO_COLOR

設定ファイル:

ansible-navigator:
  color:
    enable:

editor-command

Automation content navigator が使用するエディターを指定します。

デフォルト:* vi +{line_number} {filename}

CLI: --ecmd または --editor-command

ENV: ANSIBLE_NAVIGATOR_EDITOR_COMMAND

設定ファイル:

ansible-navigator:
  editor:
    command:

editor-console

エディターがコンソールベースであるかどうかを指定します。

選択肢: True または False

デフォルト: True

CLI: --econ または --editor-console

ENV: ANSIBLE_NAVIGATOR_EDITOR_CONSOLE

設定ファイル:

ansible-navigator:
  editor:
    console:

execution-environment

自動化実行環境の使用を有効または無効にします。

選択肢: True または False

デフォルト: True

CLI: --ee または --execution-environment

ENV:* ANSIBLE_NAVIGATOR_EXECUTION_ENVIRONMENT

設定ファイル:

ansible-navigator:
  execution-environment:
    enabled:

execution-environment-image

自動化実行環境イメージの名前を指定します。

デフォルト: quay.io/ansible/ansible-runner:devel

CLI: --eei または --execution-environment-image

ENV: ANSIBLE_NAVIGATOR_EXECUTION_ENVIRONMENT_IMAGE

設定ファイル:

ansible-navigator:
  execution-environment:
    image:

execution-environment-volume-mounts

自動化実行環境内にバインドマウントするボリュームを指定します (--eev /home/user/test:/home/user/test:Z)。

デフォルト: デフォルト値設定なし

CLI: --eev または --execution-environment-volume-mounts

ENV: ANSIBLE_NAVIGATOR_EXECUTION_ENVIRONMENT_VOLUME_MOUNTS

設定ファイル:

ansible-navigator:
  execution-environment:
    volume-mounts:

log-append

ログメッセージを既存のログファイルに追加するかどうかを指定します。既存のログファイルを追加しないと、セッションごとに新しいログファイルが作成されます。

選択肢: True または False

デフォルト: True

CLI: --la または --log-append

ENV: ANSIBLE_NAVIGATOR_LOG_APPEND

設定ファイル:

ansible-navigator:
  logging:
    append:

log-file

Automation content navigator のログファイルの完全パスを指定します。

デフォルト: $PWD/ansible-navigator.log

CLI: --lf または --log-file

ENV: ANSIBLE_NAVIGATOR_LOG_FILE

設定ファイル:

ansible-navigator:
  logging:
    file:

ログレベル

Automation content navigator のログレベルを指定します。

選択肢: debuginfowarningerror、または critical

デフォルト: warning

CLI: --ll または --log-level

ENV: ANSIBLE_NAVIGATOR_LOG_LEVEL

設定ファイル:

ansible-navigator:
  logging:
    level:

mode

ユーザーインターフェイスモードを指定します。

選択肢: stdout または interactive

デフォルト: interactive

CLI: -m または --mode

ENV: ANSIBLE_NAVIGATOR_MODE

設定ファイル:

ansible-navigator:
  mode:

osc4

OSC 4 で端末の色変更のサポートを有効または無効にします。

選択肢: True または False

デフォルト: True

CLI: --osc4 または --osc4

ENV: ANSIBLE_NAVIGATOR_OSC4

設定ファイル:

ansible-navigator:
  color:
    osc4:

pass-environment-variable

自動化実行環境内で渡される終了環境変数を指定します (--penv MY_VAR)。

デフォルト: デフォルト値設定なし

CLI: --penv または --pass-environment-variable

ENV: ANSIBLE_NAVIGATOR_PASS_ENVIRONMENT_VARIABLES

設定ファイル:

ansible-navigator:
  execution-environment:
    environment-variables:
      pass:

pull-policy

イメージプルポリシーを指定します。

always: 常にイメージをプルします。

missing: ローカルで利用できない場合はプルします。

never: イメージをプルしません。

tag: イメージタグが latest の場合は、常にイメージをプルしてください。イメージを常にプルしないと、ローカルで利用可能な場合にプルされます。

選択肢: alwaysmissingnever、または tag

デフォルト: tag

CLI: --pp または --pull-policy

ENV: ANSIBLE_NAVIGATOR_PULL_POLICY

設定ファイル:

ansible-navigator:
  execution-environment:
    pull-policy:

set-environment-variable

自動化実行環境内で設定する環境変数および値を指定します (--senv MY_VAR=42)

デフォルト: デフォルト値設定なし

CLI: --senv または --set-environment-variable

ENV: ANSIBLE_NAVIGATOR_SET_ENVIRONMENT_VARIABLES

設定ファイル:

ansible-navigator:
  execution-environment:
    environment-variables:
      set:

8.3. Automation content navigator の config サブコマンド設定

以下の表は、Automation content navigator config サブコマンドの各パラメーターと設定オプションを示しています。

Expand
表8.2 Automation content navigator の config サブコマンドパラメーター設定
パラメーター説明オプションの設定

config

Ansible 設定ファイルのパスを指定します。

デフォルト: デフォルト値設定なし

CLI: -c または --config

ENV: ANSIBLE_CONFIG

設定ファイル:

ansible-navigator:
  ansible:
    config:
      path:

help-config

stdout モードの ansible-config コマンドのヘルプオプション。

選択肢:* True または False

デフォルト: False

CLI: --hc または --help-config

ENV: ANSIBLE_NAVIGATOR_HELP_CONFIG

設定ファイル:

ansible-navigator:
  help-config:

8.4. Automation content navigator の doc サブコマンド設定

以下の表は、Automation content navigator の doc サブコマンド用の各パラメーターおよび設定オプションを示しています。

Expand
表8.3 Automation content navigator の doc サブコマンドパラメーター設定
パラメーター説明オプションの設定

help-doc

stdout モードの ansible-doc コマンドのヘルプオプション。

選択肢: True または False

デフォルト: False

CLI: --hd または --help-doc

ENV: ANSIBLE_NAVIGATOR_HELP_DOC

設定ファイル:

ansible-navigator:
  help-doc:

plugin-name

プラグイン名を指定します。

デフォルト: デフォルト値設定なし

CLI: 位置

ENV: ANSIBLE_NAVIGATOR_PLUGIN_NAME

設定ファイル:

ansible-navigator:
  documentation:
    plugin:
      name:

plugin-type

プラグインタイプを指定します。

選択肢: becomecachecallbackcliconfconnectionhttpapiinventorylookupmodulenetconfshellstrategy、または vars

デフォルト: module

CLI: -t または ----type

ENV: ANSIBLE_NAVIGATOR_PLUGIN_TYPE

設定ファイル:

ansible-navigator:
  documentation:
    plugin:
      type:

8.5. Automation content navigator の inventory サブコマンド設定

以下の表は、Automation content navigator の inventory サブコマンドの各パラメーターおよび設定オプションを示しています。

Expand
表8.4 Automation content navigator の inventory サブコマンド設定
パラメーター説明オプションの設定

help-inventory

stdout モードの ansible-inventory コマンドのヘルプオプション。

選択肢: True または False

デフォルト: False

CLI: --hi または --help-inventory

ENV: ANSIBLE_NAVIGATOR_INVENTORY_DOC

設定ファイル:

ansible-navigator:
  help-inventory:

inventory

インベントリーファイルパスまたはコンマ区切りホストリストを指定します。

デフォルト: デフォルト値設定なし

CLI: --i または --inventory

ENV: ANSIBLE_NAVIGATOR_INVENTORIES

設定ファイル:

ansible-navigator:
  inventories:

inventory-column

インベントリービューに表示されるホスト属性を指定します。

デフォルト: デフォルト値設定なし

CLI: --ic または --inventory-column

ENV:* ANSIBLE_NAVIGATOR_INVENTORY_COLUMNS設定ファイル:

ansible-navigator:
  inventory-columns:

8.6. Automation content navigator の replay サブコマンド設定

以下の表は、Automation content navigator の replay サブコマンド用の各パラメーターおよび設定オプションを示しています。

Expand
表8.5 Automation content navigator の replay サブコマンドパラメーター設定
パラメーター説明オプションの設定

playbook-artifact-replay

再生する Playbook アーティファクトのパスを指定します。

デフォルト: デフォルト値設定なし

CLI: 位置

ENV: ANSIBLE_NAVIGATOR_PLAYBOOK_ARTIFACT_REPLAY

設定ファイル:

ansible-navigator:
  playbook-artifact:
    replay:

8.7. Automation content navigator の run サブコマンド設定

以下の表は、Automation content navigator の run サブコマンド用の各パラメーターおよび設定オプションを示しています。

Expand
表8.6 Automation content navigator の run サブコマンドパラメーター設定
パラメーター説明オプションの設定

playbook-artifact-replay

再生する Playbook アーティファクトのパスを指定します。

デフォルト: デフォルト値設定なし

CLI: 位置

ENV: ANSIBLE_NAVIGATOR_PLAYBOOK_ARTIFACT_REPLAY

設定ファイル:

ansible-navigator:
  playbook-artifact:
    replay:

help-playbook

stdout モードの ansible-playbook コマンドのヘルプオプション。

選択肢: True または False

デフォルト: False

CLI: --hp または --help-playbook

ENV: ANSIBLE_NAVIGATOR_HELP_PLAYBOOK

設定ファイル:

ansible-navigator:
  help-playbook:

inventory

インベントリーファイルパスまたはコンマ区切りホストリストを指定します。

デフォルト: デフォルト値設定なし

CLI: --i または --inventory

ENV: ANSIBLE_NAVIGATOR_INVENTORIES

設定ファイル:

ansible-navigator:
  inventories:

inventory-column

インベントリービューに表示されるホスト属性を指定します。

デフォルト: デフォルト値設定なし

CLI: --ic または --inventory-column

ENV:* ANSIBLE_NAVIGATOR_INVENTORY_COLUMNS設定ファイル:

ansible-navigator:
  inventory-columns:

Playbook

Playbook 名を指定します。

デフォルト: デフォルト値設定なし

CLI: 位置

ENV: ANSIBLE_NAVIGATOR_PLAYBOOK

設定ファイル:*

ansible-navigator:
  ansible:
    playbook:

playbook-artifact-enable

完了した Playbook のアーティファクトの作成を有効または無効にします。注記: Playbook でユーザー入力が必要な場合は、--mode stdout と互換性がありません。

選択肢: True または False

デフォルト: True

CLI: --pae または --playbook-artifact-enableENV: ANSIBLE_NAVIGATOR_PLAYBOOK_ARTIFACT_ENABLE設定ファイル:

ansible-navigator:
  playbook-artifact:
    enable:

playbook-artifact-save-as

完了した Playbook から作成したアーティファクトの名前を指定します。

デフォルト: {playbook_dir}/{playbook_name}-artifact-{ts_utc}.json

CLI: --pas または --playbook-artifact-save-as

ENV: ANSIBLE_NAVIGATOR_PLAYBOOK_ARTIFACT_SAVE_AS

設定ファイル:

ansible-navigator:
  playbook-artifact:
    save-as:

第9章 Automation content navigator を使用した Ansible コンテンツのトラブルシューティング

コンテンツ作成者は、Automation content navigator で Ansible コンテンツ (コレクション、自動化実行環境、および Playbook) をトラブルシューティングしたり、Playbook を対話形式でトラブルシューティングしたりできます。自動化実行環境の内外で結果を比較し、問題をトラブルシューティングすることもできます。

9.1. Automation content navigator アーティファクトファイルを使用した Playbook の結果の確認

Automation content navigator は、JSON アーティファクトファイルに Playbook 実行の結果を保存します。このファイルを使用して、Playbook の結果を他の人と共有したり、セキュリティーやコンプライアンスの理由で保存したり、後で確認してトラブルシューティングしたりできます。Playbook の実行を確認するには、アーティファクトファイルのみが必要です。Playbook 自体またはインベントリーアクセスを使用する必要はありません。

前提条件

  • Playbook 実行からの Automation content navigator アーティファクトの JSON ファイル。

手順

  • アーティファクトファイルを使用して Automation content navigator を起動します。

    $ ansible-navigator replay simple_playbook_artifact.json
    1. Playbook の実行時に一致する Playbook の結果を確認します。

      Playbook の結果

これで、Playbook を実行した後と同じように、プレイとタスクの横に番号を入力して、それぞれに移動して結果を確認できるようになりました。

9.2. Automation content navigator に関するよくある質問

次の Automation content navigator の FAQ を使用することで、お使いの環境で発生している問題のトラブルシューティングに対応できます。

自動化実行環境を使用する場合、ansible.cfg ファイルはどこに置く必要がありますか。
ansible.cfg ファイルの最も簡単な配置場所は、Playbook の隣のプロジェクトディレクトリーです。Playbook ディレクトリーは自動化実行環境に自動的にマウントされ、Automation content navigator はそのディレクトリーで ansible.cfg ファイルを検索します。ansible.cfg ファイルが別のディレクトリーにある場合は、ANSIBLE_CONFIG 変数を設定し、そのディレクトリーをカスタムボリュームマウントとして指定します。(execution-environment-volume-mounts は、Automation content navigator 設定を参照してください)
自動化実行環境を使用しない場合、ansible.cfg ファイルはどこに置く必要がありますか。
自動化実行環境を使用しない場合、Ansible は通常の場所で ansible.cfg を探します。詳細は、Ansible 構成設定 を参照してください。
自動化実行環境を使用する場合、Ansible コレクションはどこに置く必要がありますか。
Ansible コレクションの最も簡単な配置場所は、プロジェクトディレクトリーの Playbook に隣接するコレクションディレクトリーです (例: ansible-galaxy collections install ansible.utils -p ./collections)。Playbook ディレクトリーは自動化実行環境に自動的にマウントされ、Automation content navigator はそのディレクトリーでコレクションを検索します。または、Ansible Builder を使用して、コレクションを自動化実行環境に構築する方法もあります。Automation Controller は Playbook に隣接するコレクションディレクトリーをサポートしているため、これはコンテンツ作成者が実稼働用の Playbook を作成するのに役立ちます。コレクションが別のディレクトリーにある場合は、ANSIBLE_COLLECTIONS_PATHS 変数を設定して、そのディレクトリーのカスタムボリュームマウントを設定します。execution-environment-volume-mounts は、Automation content navigator の設定 を参照してください。
自動化実行環境を使用していない場合、Ansible コレクションはどこに置く必要がありますか。
自動化実行環境を使用しない場合は、Ansible はコレクションのデフォルトの場所を検索します。Using Ansible collections ガイドを参照してください。
vars_prompt または pause/prompt が使用されたときに Playbook がハングするのはなぜですか。
デフォルトでは、Automation content navigator は、Automation Controller が Playbook を実行するのと同じ方法で Playbook を実行します。これは、コンテンツ作成者が実稼働環境に対応した Playbook を作成するのに役立ちます。vars_prompt または stop\prompt の使用を避けられない場合、playbook-artifact の作成を無効にすると、Automation content navigator が ansible-playbook と互換性のある方法で Playbook を実行し、ユーザーの対話を可能にします。
Automation content navigator が端末の色を変更したり、外観が悪くなるのはなぜですか。
Automation content navigator は、OSC4 互換性の端末にクエリーを実行します。OSC4、10、11、104、110、および 111 は、端末が色変更をサポートすることを示し、元に戻します。端末が機能を誤って表示している可能性があります。--osc4 false を設定すると、OSC4 検出を無効にできます。(環境変数または設定ファイルでこれを処理する方法は、Automation content navigator の一般設定 を参照してください)。
Automation content navigator で使用される色を変更するにはどうすればよいですか。
--osc4 false を使用して、Automation content navigator に端末定義の色の使用を強制します。(環境変数または設定ファイルでこれを処理する方法は、Automation content navigator の一般設定 を参照してください)。
playbook ディレクトリーにあるすべての site-artifact-2021-06-02T16:02:33.911259+00:00.json ファイルは何に使用しますか。
Automation content navigator は、すべての Playbook の実行に対して Playbook アーティファクトを作成します。これらは、自動化が完了した後の結果の確認、同僚との共有とトラブルシューティング、またはコンプライアンスや変更管理の目的での維持に役立ちます。Playbook アーティファクトファイルには、すべてのプレイとタスクに関する詳細情報と、Playbook の実行からの stdout が含まれています。Automation content navigator セッション中に ansible-navigator replay <filename> または :replay <filename> を使用して Playbook のアーティファクトを確認できます。すべての Playbook アーティファクトは、希望のビューに応じて --mode stdout--mode interactive の両方を使用すると確認できます。Playbook のアーティファクトの記述およびデフォルトのファイルの命名規則を無効にすることができます。(環境変数または設定ファイルでこれを処理する方法は、Automation content navigator の一般設定 を参照してください)。
:open を使用すると vi が開くのはなぜですか。

Automation content navigator は、端末に表示されるものをデフォルトのエディターで開きます。デフォルトは vi +{line_number} {filename}、または EDITOR 環境変数の現在の値のいずれかに設定されます。これには、エディターがコンソールベースまたは端末ベースであるかを示す editor-console 設定が関係しています。役立つ可能性のある代替設定の例を次に示します。

# emacs
ansible-navigator:
  editor:
    command: emacs -nw +{line_number} {filename}
    console: true
# vscode
ansible-navigator:
  editor:
    command: code -g {filename}:{line_number}
    console: false
#pycharm
ansible-navigator:
  editor:
    command: charm --line {line_number} {filename}
    console: false
どの順番で設定が適用されますか。

Automation content navigator の設定システムは、さまざまなソースから設定をプルするため、以下の順序で階層的に適用します (最後に適用された変更が最も一般的なものになります)。

  1. デフォルトの内部値
  2. 設定ファイルの値
  3. 環境変数からの値
  4. コマンドラインで指定されたフラグおよび引数
  5. テキストベースのユーザーインターフェイス内で : コマンドを実行している間
何かが機能しませんでした。どうすればトラブルシューティングできますか。
Automation content navigator には、適切なログメッセージがあります。--log-level debug を使用して、debug ログを有効にできます。バグを見つけたと思われる場合は、問題をログに記録し、ログファイルから詳細情報を追加してください。

法律上の通知

Copyright © 2025 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る