今回リリースされる Ansible Automation Platform 2 に、プライベート自動化ハブ 4.3 が搭載されることをお知らせできることに、高ぶりを抑えきれません。プライベート自動化ハブは、自動化開発者が独自の自動化コンテンツを共同で公開し、組織内での Ansible コードの配信を効率化する機能を実現します。

Ansible Automation Platform 2 のプライベート自動化ハブは、主に自動化実行環境へのサポートを提供します。実行環境は、自動化が実行される環境を定義、構築、配布する標準化された方法です。一言で言えば、自動化実行環境は、プラットフォーム管理者が Ansible を容易に管理できるコンテナ・イメージです。実行環境について、よく知らない方は、テクニカル マーケティング マネージャーの Anshul Behl が書いたこのブログをご参照ください。

プライベート自動化ハブは、物理環境または仮想環境でプラットフォームを実行するお客様を対象とした、この機能の使用を希望するお客様のために、オンプレミス実行環境コンテナ・イメージ・リポジトリとしての機能を果たします。Ansible Automation Platform は、プライベート自動化ハブとシームレスに統合され、実行環境のコンテナ・イメージを公開したり、プルしたりします。

プライベート自動化ハブを使うのは誰か?

プライベート自動化ハブは、クリエイターが作成した自動化コンテンツをキュレートし、オペレーターがシームレスにアクセスできるようにすることを意図しています。プライベート自動化ハブは、あらゆるものを簡単にパッケージ化してターンキー自動化し、これらの実行環境をほかの開発者やオペレーターたちと簡単に共有して、組織全体にわたる本番ユースケースを実現できます。自動化コントローラーは、プライベート自動化ハブに直接同期し、厳選された実行環境をプルして使用し、利用可能なものに関するガバナンスを提供できます。

プライベート自動化ハブの使用対象となる人物像は、組織全体にわたって自動化コンテンツのキュレーションと配信を担当する管理者またはオペレーターです。これは一般に、配信エンジニアまたはリリース・エンジニアと呼ばれる人たちです。

コンテンツ・クリエイターとオペレーター/管理者からなるベン図を思い浮かべてみてください。プライベート自動化ハブは、両方の輪にいる人たちとやり取りする人を対象としています(または、組織構造によっては、どちらかの席に属することができます)。

  • 自動化クリエイターは、Ansible Playbook 、ロール、およびモジュールを開発します。

  • 自動化アーキテクトは、チーム全体の自動化率を高めて、IT プロセスに協調させ、採用を効率化します。

  • 自動化オペレーターは、自動化プラットフォームとフレームワークのいずれもが機能していることを保証します。

これらの役割は、必ずしも個人またはチームが特化して負う役割ではありません。多くの組織は、複数の役割を複数の人に割り当てたり、そのニーズに基づいて特定の自動化タスクを外部に委託したりしています。

プライベート自動化ハブを使って・・・

上図の高レベルでは、自動化開発者は、今回のリリース以前にしていたのと同じようにコンテンツを作成していることがわかります。このブログで概説されているように、コマンドライン・ユーティリティ実行環境ビルダー ansible-builder は、execution-enviornment.yml 定義ファイルに基づいて実行環境を作成します。自動化クリエイターたちは、コンテンツをプライベート自動化ハブに公開できます。

実例:

この例では、サポートされている自動化実行環境を Red Hat Ecosystem Catalog ( registry.redhat.io ) からプルし、これにローカルでタグ付けしてから、プライベート自動化ハブにプッシュします。まず、registry.redhat.io で認証します。

たとえば、Red Hat Enterprise Linux 8 では、以下。

$ podman login registry.redhat.io

Username: seanc@redhat.com

Password: ********************

Login Succeeded!

$

これで、Ansible Automation Platform 2 で提供されている実行環境の1つをダウンロードできます。リリースされる時には、以下3つの実行環境が完全にサポートされています。

  • Minimal(ee-minimal-rhel8)- UBI8 および Python 3.8 上に構築された Ansible Core 2.11 を含む。このイメージには Collection を含まない。このイメージをベースイメージにして、カスタム Collection や Ansible 自動化ハブで入手可能な認定 Collection を使って、追加の実行環境を構築することが可能。

  • Supported(ee-supported-rhel8)- 自動化コントローラーで使用可能なデフォルトのイメージ。ミニマル・イメージ上に構築され、Red Hat が開発、保守、サポートするAnsible Content Collection を含む。

  • Compatibility(ee-29-rhel8)- Ansible 2.9 と必要な Ansible 依存関係すべてを含む。このイメージは、Ansible Automation Platform 1.2 から 2.0 への移行を計画しているお客様に最適。

この例では、ee-minimal-rhel8 実行環境をダウンロードします。ただし、プライベート自動化ハブは複数の実行環境をホストでき、自動化開発者は、ここに記載されているように、コマンドライン・ツール ansible-builder を使用して独自の環境を作成できます。

$ podman pull registry.redhat.io/<container image name>:<tag>

$ podman pull registry.redhat.io/ansible-automation-platform-20-early-access/ee-supported-rhel8:2.0.0-11

Trying to pull registry.redhat.io/ansible-automation-platform-20-early-access/ee-supported-rhel8:2.0.0-11...

Getting image source signatures

Checking if image destination supports signatures

Copying blob 4644f822544e skipped: already exists

Copying blob 4d0d850cd4ad skipped: already exists

Copying blob 96965a3a8424 skipped: already exists

Copying blob 3bbba07a88b0 skipped: already exists

Copying blob 895c54e89fd8 [--------------------------------------] 0.0b / 0.0b

Copying config 408bd0e3a5 done

Writing manifest to image destination

Storing signatures

408bd0e3a56123cabe76a5afaa16c7487173e74f745f6051a139813d702a0c

ダウンロードしたすべての自動化実行環境をリスト化するには、podmanimagesコマンドを使います。

$ podman images

REPOSITORY TAG IMAGE ID CREATED SIZE

registry.redhat.io/ansible-automation-platform-20 early-access/ee-supported-rhel8 latest 408bd0e3a561 6 days ago 920 MB

レジストリからイメージをプルした後、それらにタグ付けをして、プライベート自動化ハブ・コンテナ・レジストリで使用できるようにします。

$ podman tag registry.redhat.io/[container image name]:[tag] [automation hub URL]/[container image name]

この環境では、プライベート自動化ハブ・インスタンスには、まだ DNS が設定されてません。代わりに、ホストの IP アドレスを使います。

$ podman tag registry.redhat.io/ansible-automation-platform-20-early-access/ee-supported-rhel8 192.168.1.5/example_ee

ここで、新しいコンテナ・イメージ・タグ example_ee が表示されます。

$ podman tag registry.redhat.io/ansible-automation-platform-20-early-access/ee-supported-rhel8 192.168.1.5/example_ee

インストール時に設定した資格情報を使用して、プライベート自動化ハブへの認証を行います。

$ podman login -u=[username] -p=[password] [automation-hub-url]

この環境では、以下のようになります。

$ podman login --tls-verify=false -u="admin" -p="mypassword" 192.168.1.5

Login Succeeded!

DNS および TLS 証明書がまだ設定されていないため、--tls-verify = false フラグが使用されました。最後に、以下のコマンドを使用して公開できます。

$ podman push [automation-hub-url]/[container image name]

この環境では、以下のようになります。

$ podman push --tls-verify=false 192.168.1.5/example_ee

Getting image source signatures

Copying blob d7ecef9dcc97 done

Copying blob 9132e95b7c1b done

Copying blob bc7bdf0ec1b9 done

Copying blob 0122cc8a95bd done

Copying blob 12a68283d0e0 done

Copying config 408bd0e3a5 done

Writing manifest to image destination

Storing signatures

$ podman --version

podman version 3.2.2

Web UI にログインすると、新しい Container Registry があり、example_ee が表示されます。

プライベート自動化ハブを自動化コントローラと同期する

実行環境を自動化コントローラーと同期するには、Container Registry の資格情報を作成します。

認証 URL は、プライベート自動化ハブ・ホストの DNS 名または IP アドレスです( https ヘッダーはない)。

次に、「実行環境」で新しい実行環境を作成し、作成したばかりの資格情報を取得します。

追加情報のドキュメントをご覧ください。

最後に、ジョブ・テンプレート上(テンプレート群の下)で、下の赤い四角で強調表示されるように実行環境を割り当てます。

自動化コントローラーについてもっと知りたい方は、テクニカル マーケティング マネージャー Craig Brandt 著述のブログ:Ansible Automation Platform 2で何が新しくなったのか:自動化コントローラー をご覧ください。

ドキュメントの参照:

次の行先

  • もし今すぐスタートできるなら、Ansible Automation Platform 2 についてあれこれ調べられるself-paced interactive labs もご利用いただけます。

  • Red Hat をご利用のお客様は、Red Hat Customer Portal の Ansible Automation Platform 2 のページにアクセスしてください。このサイトには、利用可能なすべてのドキュメントとガイダンスがまとめられています。

  • Ansible Automation Platform の新機能とコンポーネントの詳細については、ansible.com のupdated product overview page をご覧ください。

Ansible Automation Platform 2 の使用にあたって支援が必要である場合は、最寄りの Red Hat 担当者にご連絡ください


About the author

Sean is a Principal Technical Marketing Manager, Ansible, where he brings over 10 years of experience building and automating computer networks. Sean previously worked for both Cumulus Networks (acquired by Nvidia) and Cisco Systems where he helped customers deploy, manage and automate their network infrastructure. He resides in Chapel Hill, NC with his wife and children and tweets from @IPvSean.

Read full bio