Red Hat Ansible Automation Platform 2 の導入に伴い、開発者エクスペリエンスの一部として、いくつかの新しい主要コンポーネントが導入されています。これには、自動化実行環境が含まれ、自動化の実行中に予測可能な環境を提供するために導入されました。

コレクションの依存関係はすべて実行環境内に含まれているため、開発環境で作成された自動化は、確実に本番環境と同じように実行されるようになっています。

実行環境の構築は、Ansible Automation Platform に搭載されている実行環境ビルダー ( ansible-builder ) ツールの導入で、より容易になり、一方アップデートした自動化コントローラーで、IT チームは実行環境を活用できるようになりました。

自動化実行のコンテナ化への移行を考慮すると、自動化開発ワークフローと既存のツールを再考しなければならなくなります。要するに、ansible-navigator は、ansible-playbook やその他の ansible-*` コマンドライン・ユーティリティに取って代わるのです。

ただし、ansible-navigator は、単に ansible-playbook の代替やエイリアスとして機能するだけではなく、はるかに大きな目的を果たします。今回のリリースでは、自動化の開発・実行専用のアプリケーションとして ansible-navigator を導入しました。Ansible-playbook は、かねてから Ansible の自動化環境で活用される最初のユーティリティの一つでした。自動化コンテンツ・ナビゲーターは、使いやすさに基づいて構築されているので、自動化の実行をより詳細に公開します。自動化のデバッグとは別に、ansible-navigator では、サブコマンドを使用して、自動化実行環境、インベントリ、コレクション、モジュールなど、環境の複数の側面を検査することもできます。

自動化コンテンツ・ナビゲーターを使うのは誰か?

自動化コンテンツ・ナビゲーターは、主に自動化の開発者を対象としています。これは、利用可能なモジュールを使って自動化されたタスクを作成する人、Collection にロールを移行する人、モジュールをゼロから開発する人などです。コンテンツ・ナビゲーターは、テキスト・ユーザー・インターフェースとして実行されますが、ターミナルペインが含まれている一般的なコードエディター内で実行している場合でも、ターミナルセッション内で見栄えがよいです。

テキスト・ユーザー・インターフェース(TUI)の初期ビュー

追加オプションなしでナビゲーターを起動すると、使用可能なさまざまなサブコマンドを表示するウェルカム画面が表示されます。

インターフェースで移動するのは非常に簡単です。ナビゲーションキーのリマインダーがインターフェースの底部に一覧表示される。

サブコマンドは、 :<command> フォーマットを使用して vim のようなやり方で入力可能です。

ローカル環境を探索する

各プロジェクトに、独自のナビゲーター設定 ( ansible-navigator.yml ) が可能です。一般的な設定パラメーターは、プロジェクトに必要な実行環境イメージの名前、そしてフォーク、ログレベル、アーティファクト作成などの Ansible 設定パラメーターです。

コンテンツ・ナビゲーターをプロジェクト・ベースで設定することで、他のコントリビューターがより簡単に自動化プロジェクトを分岐、フォーク、その他の方法で拡張することができます。

ansible-navigator:
  ansible:
    inventories:
    - hosts
  execution-environment:
    enabled: true
    container-engine: podman
    image: ansible-automation-platform-20-ee-supported-rhel8
    pull-policy: missing

自動化コンテンツ・ナビゲーターにはサブコマンドが組み込まれており、開発者が簡単にアクセスして環境を探索できます。このコンテキストで非常に役立つ2つのサブコマンドが、プロジェクトのインベントリのトラバースを可能にします。 :inventory と、Collection が指定された実行環境内で使用可能かどうかを開発者が簡単に確認できる :collections です。

返された Collection の1つを展開すると、含まれているすべてのモジュールのリストが、ドキュメントと使用例とともに表示されます。

自動化の実行

ansible-navigator run <playbook> は、デフォルトの実行環境をダウンロードした後にプレイブックを実行します。実行環境なしで実行するには、コマンドに --eefalse を渡します。

インターフェースが、概要表示画面から、現在実行中のプレイを一覧表示する画面へとどのように変化するかに注目してください。

調査したいプレイの行番号に対応する番号を押すと、現在実行中のタスクと一緒に実行中のタスクを表示する画面が見られます。

ここから、タスク故障に関する追加情報を含め、すべてのタスクを調査することができます。

従来のリアルタイム画面で実行を見たい場合は、:st コマンドを発行して実行を観察できます。

次の行先


About the author

Colin McNaughton is a Principal Technical Marketing Manager for Ansible Automation. Colin has been with Red Hat for 7 years and, prior to this position, served as a Solution Architect in the southeast helping organizations grow their automation strategy. He has lived in NC for the past decade with his wife and two kids.

Read full bio