第1章 Automation Hub の Red Hat 認定済み、検証済み、および Ansible Galaxy コンテンツ


Ansible Certified Content Collections は、Red Hat Ansible Automation Platform のサブスクリプションに含まれています。Ansible Automation Hub を使用すると、あらゆる形式の Ansible コンテンツにアクセスし、独自のコレクションセットをキュレートできます。

Red Hat Ansible コンテンツには、次の 2 種類のコンテンツが含まれます。

  • Ansible Certified Content Collections
  • Ansible 検証済みコンテンツコレクション

Ansible Certified Content Collections または Ansible 検証済みコンテンツコレクションの両方を使用して、独自の自動化ライブラリーを構築できます。Ansible Certified Content Collections と Ansible 検証済みコンテンツコレクションの違いの詳細は、ナレッジベースの記事 Ansible Certified Content Collections and Ansible validated content、またはこのガイドの Ansible 検証済みコンテンツ を参照してください。

このコレクションは、パッケージをダウンロードして手動で更新できます。

Ansible Automation Hub を使用すると、要件ファイルまたは同期リストを作成して、関連する Red Hat Ansible Certified Content Collections をユーザーに配布できます。コレクションを Automation Hub にインストールするには、要件ファイルを使用してください。同期リストを管理できるのは、プラットフォーム管理者権限を持つユーザーだけであるためです。

要件ファイルを使用してコンテンツをインストールするには、次の手順を行う必要があります。

1.1. コンテンツを同期するための Ansible Automation Hub リモートリポジトリーの設定

リモート設定を使用して、console.redhat.com でホストされている Ansible Certified Content Collections または Ansible Galaxy のコレクションと同期するように Private Automation Hub を設定します。

重要

コンテンツを同期するために、rh-certified リモートから手動で作成した要件ファイルをアップロードできるようになりました。リモートは、外部コレクションソースからカスタムリポジトリーにコンテンツを同期できる設定です。

2.4 リリースでは、引き続きコンテンツを同期できますが、同期リストは非推奨となり、今後のバージョンで削除される予定です。

Automation Content Remotes にある各リモート設定は、community および rh-certified リポジトリーの両方に、リポジトリーが 最後に更新 された日時に関する情報を提供します。Automation Content Repositories ページにある Edit 機能と Sync 機能を使用すると、いつでも Ansible Automation Hub に新しいコンテンツを追加できます。

Ansible Galaxy と Ansible Automation Hub の相違点

Ansible Galaxy に公開されたコレクションは、Ansible コミュニティーによって公開された最新のコンテンツです。これらのコレクションに対する共同でのサポート対応は行われていません。Ansible Galaxy は、コンテンツにアクセスする Ansible コミュニティーを対象とした、推奨されるフロントエンドのディレクトリーです。

Ansible Automation Hub に公開されたコレクションは、Red Hat と特定パートナーの共同のお客様を対象としたものです。Ansible Automation Hub のコレクションにアクセスしてダウンロードするには、Ansible サブスクリプションが必要です。認定コレクションについては、Red Hat とパートナーが戦略的な関係のもと、お客様に共同でサポートを提供します。認定コレクションの中には、追加のテストと検証を受けたものもあります。

Ansible Galaxy で名前空間をリクエストする方法

Ansible Galaxy GitHub のイシューを通じて名前空間をリクエストするには、次の手順に従います。

  • ansiblepartners@redhat.com にメールを送信します。
  • Ansible Galaxy へのサインアップに使用した GitHub ユーザー名を記載します。

システムが検証できるように、少なくとも 1 回はログインする必要があります。

ユーザーが名前空間の管理者として追加されると、セルフサービスのプロセスを使用してさらに管理者を追加できます。

Ansible Galaxy 名前空間の命名制限

コレクションの名前空間は、Python モジュール名の規則に従う必要があります。つまり、コレクションにはすべて小文字の短い名前を付ける必要があります。読みやすさが向上する場合は、コレクション名にアンダースコアを使用できます。

1.1.1. Automation Hub でのトークン管理

コレクションをアップロードまたはダウンロードして Automation Hub と対話するには、API トークンを作成する必要があります。Automation Hub API トークンは、ansible-galaxy クライアントを Red Hat Automation Hub サーバーに対して認証します。

注記

Automation Hub は、Basic 認証やサービスアカウントでの認証をサポートしていません。トークン管理を使用して認証する必要があります。

API トークンを作成する方法は、使用している Automation Hub のタイプによって異なります。

1.1.1.1. Automation Hub でのオフライントークンの作成

Automation Hub では、トークン管理 を使用してオフライントークンを作成できます。オフライントークンは、コンテンツを保護するために使用されるシークレットトークンです。

手順

  1. Red Hat Hybrid Cloud Console で Ansible Automation Platform に移動します。
  2. ナビゲーションパネルから、Automation Hub Connect to Hub を選択します。
  3. Offline token で、Load token をクリックします。
  4. Copy to clipboard アイコンをクリックしてオフライントークンをコピーします。
  5. API トークンをファイルに貼り付けて、セキュアな場所に保存します。
重要

オフライントークンは、コンテンツを保護するために使用されるシークレットトークンです。トークンはセキュアな場所に保存してください。

これで、Automation Hub をデフォルトのコレクションサーバーとして設定したり、ansible-galaxy コマンドラインツールを使用してコレクションをアップロードしたりする場合に、オフライントークンを使用できるようになりました。

注記

オフライントークンは、非アクティブな状態が 30 日間続くと期限切れになります。新しいオフライントークンの取得の詳細は、オフライントークンをアクティブな状態に維持する を参照してください。

1.1.1.2. Private Automation Hub での API トークンの作成

Private Automation Hub では、API トークン管理を使用して API トークンを作成できます。API トークンは、コンテンツを保護するために使用されるシークレットトークンです。

前提条件

  • Red Hat Ansible Automation Platform の有効なサブスクリプション認証情報。

手順

  1. Private Automation Hub にログインします。
  2. ナビゲーションパネルから、Automation Content API token を選択します。
  3. Load Token をクリックします。
  4. API トークンをコピーするには、Copy to clipboard アイコンをクリックします。
  5. API トークンをファイルに貼り付けて、セキュアな場所に保存します。
重要

API トークンは、コンテンツを保護するために使用されるシークレットトークンです。API トークンはセキュアな場所に保存してください。

API トークンは、Automation Hub をデフォルトのコレクションサーバーとして設定するか、ansible-galaxy コマンドラインツールを使用してコレクションをアップロードできるようになりました。

注記

API トークンには有効期限がありません。

1.1.1.3. オフライントークンをアクティブな状態に維持する

オフライントークンは、30 日の非アクティブ後に有効期限が切れます。オフライントークンを定期的に更新することで、オフライントークンの有効期限が切れないようにすることができます。

オンライントークンをアクティブにしておくと、アプリケーションがユーザーに代わってアクションを実行する場合に便利です。たとえば、ユーザーがオフラインのときにアプリケーションが定期的なデータバックアップを実行できます。

注記

オフライントークンの有効期限が切れた場合は、新しいトークンを取得 する必要があります。

手順

  • 次のコマンドを実行して、トークンの有効期限が切れないようにします。

    curl https://sso.redhat.com/auth/realms/redhat-external/protocol/openid-connect/token -d grant_type=refresh_token -d client_id="cloud-services" -d refresh_token="{{ user_token }}" --fail --silent --show-error --output /dev/null

1.1.2. rh-certified リモートリポジトリーの設定および Red Hat Ansible Certified Content Collection の同期

rh-certified リモートリポジトリーを編集して、console.redhat.com でホストされている Automation Hub から Private Automation Hub にコレクションを同期できます。デフォルトでは、Private Automation Hub rh-certified リポジトリーには、Ansible Certified Content Collections のグループ全体の URL が含まれています。

組織で指定されたコレクションのみを使用するには、Private Automation Hub 管理者は、手動で作成した要件ファイルを rh-certified リモートからアップロードできます。

要件ファイルに、AB、および C コレクションがあり、使用する console.redhat.com に新しいコレクション X を追加する場合は、Private Automation Hub の要件ファイルに X を追加して同期する必要があります。

前提条件

  • 有効な Ansible リポジトリーコンテンツの変更 権限を持っている。権限の詳細は、アクセス管理と認証 を参照してください。
  • console.redhat.com で Automation Hub がホストするサービスから同期 URL および API トークンを取得している。
  • ポート 443 へのアクセスを設定している。これは、認定コレクションを同期するために必要です。詳細は、「インストール計画」の ネットワークポートおよびプロトコル の章にある Automation Hub の表を参照してください。

手順

  1. Ansible Automation Platform にログインします。
  2. ナビゲーションパネルから、Automation Content Remotes を選択します。
  3. rh-certified リモートリポジトリーで、Edit remote をクリックします。
  4. URL フィールドに、Sync URL を貼り付けます。
  5. Token フィールドに、console.redhat.com から取得したトークンを貼り付けます。
  6. Save remote をクリックします。

    console.redhat.com の組織の同期リストと Private Automation Hub の間でコレクションを同期できるようになりました。

  7. ナビゲーションパネルから、Automation Content Repositories を選択します。rh-certified の横にある More Actions アイコン をクリックし、Sync repository を選択します。
  8. 表示されるモーダルで、次のオプションを切り替えることができます。

    • Mirror: リポジトリーのコンテンツを、リモートリポジトリーのコンテンツにミラーリングする場合に選択します。
    • Optimize: リモートサーバーから変更が報告されないときにのみ同期する場合に選択します。
  9. Sync をクリックして同期を完了します。

検証

Sync status 列が更新され、Red Hat Certified Content Collections の同期が成功したかどうかが通知されます。

  • Automation Content Collections に移動して、コレクションのコンテンツが正常に同期されたことを確認します。

1.1.3. コミュニティーリモートリポジトリーの設定および Ansible Galaxy コレクションの同期

community リモートリポジトリーを編集して、Ansible Galaxy から選択したコレクションを Private Automation Hub に同期できます。デフォルトでは、Private Automation Hub コミュニティーリポジトリーは galaxy.ansible.com/api/ に送信されます。

前提条件

  • Modify Ansible repo content 権限がある。権限の詳細は、アクセス管理と認証 を参照してください。
  • 次の例のように、Ansible Galaxy から同期するコレクションを識別する requirements.yml ファイルがある。

    requirements.yml の例

    collections:
      # Install a collection from Ansible Galaxy.
      - name: community.aws
        version: 5.2.0
        source: https://galaxy.ansible.com

手順

  1. Ansible Automation Platform にログインします。
  2. ナビゲーションパネルから、Automation Content Remotes を選択します。
  3. Community リモートの Details タブで、Edit remote をクリックします。
  4. YAML requirements フィールドに、requirements.yml ファイルの内容を貼り付けます。
  5. Save remote をクリックします。

    requirements.yml ファイルで識別されたコレクションを、Ansible Galaxy から Private Automation Hub に同期できるようになりました。

  6. ナビゲーションパネルから、Automation Content Repositories を選択します。community リポジトリーの横にある More Actions アイコン をクリックし、Sync repository を選択して、Ansible Galaxy と Ansible Automation Hub の間でコレクションを同期します。
  7. 表示されるモーダルで、次のオプションを切り替えることができます。

    • Mirror: リポジトリーのコンテンツを、リモートリポジトリーのコンテンツにミラーリングする場合に選択します。
    • Optimize: リモートサーバーから変更が報告されないときにのみ同期する場合に選択します。
  8. Sync をクリックして同期を完了します。

検証

Sync status 列が更新され、Ansible Automation Hub への Ansible Galaxy コレクションの同期が成功したかどうかが通知されます。

  • Automation Content Collections に移動し、Community を選択して同期が成功したことを確認します。

1.1.4. プロキシー設定

Private Automation Hub がネットワークプロキシーの背後にある場合は、リモートでプロキシーを設定して、ローカルネットワーク外にあるコンテンツを同期できます。

前提条件

  • 有効な Ansible リポジトリーコンテンツの変更 権限を持っている。権限の詳細は、アクセス管理と認証 を参照してください。
  • ローカルネットワーク管理者からのプロキシー URL および認証情報を持っている。

手順

  1. Ansible Automation Platform にログインします。
  2. ナビゲーションパネルから、Automation Content Remotes を選択します。
  3. rh-certified リモートまたは Community リモートで、More Actions アイコン をクリックし、Edit remote を選択します。
  4. Show advanced options ドロップダウンメニューを展開します。
  5. プロキシー URL、プロキシーユーザー名、およびプロキシーパスワードを適切なフィールドに入力します。
  6. Save remote をクリックします。

1.1.5. 要件ファイルの作成

要件ファイルを使用して、Automation Hub にコレクションを追加します。要件ファイルは YAML 形式で、Automation Hub にインストールするコレクションをリストしたものです。インストールするコレクションをリストした requirements.yml ファイルを作成したら、インストールコマンドを実行して、コレクションを Hub インスタンスに追加します。

標準の requirements.yml ファイルには、次のパラメーターを含めます。

  • name: <namespace>.<collection_name> という形式のコレクション名
  • version: コレクションのバージョン番号

手順

  1. 要件ファイルを作成します。

    YAML 形式の要件ファイル内に、コレクション情報を次のように指定します。

    collections:
     name: namespace.collection_name
     version: 1.0.0
  2. インストールする各コレクションの情報をリストした要件ファイルを作成したら、ファイルが配置されているディレクトリーに移動して、次のコマンドを実行します。
$ ansible-galaxy collection install -r requirements.yml

1.1.5.1. コマンドラインから個々のコレクションをインストールする

Automation Hub に個々のコレクションをインストールするには、次のコマンドを実行します。

$ ansible-galaxy collection install namespace.collection_name
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

© 2024 Red Hat, Inc.