2.3. 自動化メッシュノードタイプの定義


ジョブの容量を拡張するには、Automation Controller のデプロイメントと一緒に実行するように追加できるスタンドアロンの 実行ノード を作成します。これらの実行ノードは、Automation Controller Kubernetes クラスターの一部ではありません。

クラスター内で実行される制御ノードは、Receptor を介して実行ノードに接続し、作業を送信します。

これらの実行ノードは、タイプ execution インスタンスとして、Automation Controller に登録されます。つまり、コントロールノードのように作業をディスパッチしたり、Web リクエストを処理したりするのではなく、ジョブを実行するためにのみ使用されます。

重要

実行ノードを作成するときは、実行ノードのシステムタイムゾーンが Automation Controller の settings.TIME_ZONE (デフォルトは 'UTC') と一致していることを確認してください。ファクトキャッシュは、アーティファクトファイルの変更時刻の比較に依存していますが、これらの変更時刻はタイムゾーンを認識しません。したがって、実行ノードのタイムゾーンが Automation Controller のタイムゾーン設定と一致することが重要です。

ホップノード は、Automation Controller のコントロールプレーンとスタンドアロン実行ノードの間に追加できます。これらのホップノードは Kubernetes クラスターの一部ではなく、タイプ hop のインスタンスとして Automation Controller に登録されます。つまり、別のネットワークまたはより厳密なネットワーク内で到達不可能なノードへの受信および送信のトラフィックのみを処理します。

次の手順は、ホストのノードタイプを設定する方法を示しています。

注記

デフォルトでは、AWS 上の Red Hat Ansible Automation Platform Service には、実行ノードをピアリングできる 2 つのホップノードが含まれています。

手順

  1. ナビゲーションパネルからAutomation Execution Infrastructure Instances を選択します。
  2. Instances リストページで、Add instance をクリックします。Add Instance ウィンドウが開きます。

    インスタンスには次の属性が必要です。

    • Host name: (必須) インスタンスの完全修飾ドメイン名 (パブリック DNS) または IP アドレスを入力します。このフィールドは、インストーラーベースのデプロイメントの hostname に相当します。

      注記

      インスタンスがコントロールクラスターから解決できないプライベート DNS を使用している場合、DNS ルックアップルーティングは失敗し、生成された SSL 証明書は無効になります。代わりに IP アドレスを使用してください。

    • オプション: Description: インスタンスの説明を入力します。
    • Instance state: このフィールドは自動入力され、インストール中であることを示します。変更はできません。
    • Listener port: このポートは、受信接続をリッスンするために receptor に使用されます。ポートを設定に適したポートに設定できます。このフィールドは、API の listener_port に相当します。デフォルト値は 27199 ですが、独自のポート値を設定できます。
    • Instance type: execution ノードおよび hop ノードのみを作成できます。Operator ベースのデプロイメントは、コントロールノードまたはハイブリッドノードをサポートしません。

      オプション:

      • Enable instance: 実行ノード上でジョブを実行できるようにするには、このボックスをオンにします。
      • Managed by policy ボックスをオンにして、ポリシーがインスタンスの割り当て方法を決定できるようにします。
      • Peers from control nodes:

        • ホップノードを設定する場合:

          • 要求を Automation Controller からホップノードに直接プッシュする必要がある場合は、Peers from Control チェックボックスをオンにします。
          • ホップノードを別のホップノードにピアリングする場合は、Peers from Control チェックボックスがオンになっていないことを確認します。
        • 実行ノードを設定する場合:

          • 要求を Automation Controller から実行ノードに直接プッシュする必要がある場合は、Peers from Control チェックボックスをオンにします。
          • 実行ノードをホップノードにピアリングする場合は、Peers from Control チェックボックスがオンになっていないことを確認します。
  3. Associate peers をクリックします。
  4. ピアリング設定とトラフィックの方向を確認するために、トポロジービューを使用して、更新されたトポロジーのグラフィカル表現を表示します。これは、ファイアウォールルールを更新する必要がある場所を特定するのに役立ちます。詳細は、トポロジービュー を参照してください。

    注記

    次の手順は、新しく作成したインスタンスへの SSH アクセスが可能な任意のコンピューターから実行してください。

  5. Download Bundle の横にある Download アイコンをクリックして、この新しいインスタンスと、作成されたノードを自動化メッシュにインストールするために必要なファイルを含む tar ファイルをダウンロードします。

    インストールバンドルには、TLS 証明書および鍵、認証局、適切な Receptor 設定ファイルが含まれています。

    receptor-ca.crt
    work-public-key.pem
    receptor.key
    install_receptor.yml
    inventory.yml
    group_vars/all.yml
    requirements.yml
    Copy to Clipboard Toggle word wrap
  6. ダウンロードした tar.gz インストールバンドルを、ダウンロードした場所から展開します。これらのファイルがリモートマシン上の正しい場所にあることを確認するために、インストールバンドルには install_receptor.yml Playbook が含まれています。
  7. ansible-playbook コマンドを実行する前に、inventory.yml ファイル内の次のフィールドを編集します。

    all:
      hosts:
        remote-execution:
          ansible_host: localhost # change to the mesh node host name
              ansible_user: <username> # user provided
              ansible_ssh_private_key_file: ~/.ssh/<id_rsa>
    Copy to Clipboard Toggle word wrap
    • ansible_host が、ノードの IP アドレスまたは DNS に設定されていることを確認します。
    • ansible_user を、インストールを実行しているユーザー名に設定します。
    • ansible_ssh_private_key_file を設定して、インスタンスへの接続に使用される秘密鍵のファイル名を含めます。
    • inventory.yml ファイルの内容はテンプレートとして機能し、メッシュトポロジーでの receptor ノードの設定中に適用されるロールの変数が含まれます。他のフィールドの一部を変更したり、高度なシナリオではファイル全体を置き換えることもできます。詳細は、Role Variables を参照してください。
  8. プライベート DNS を使用するノードの場合は、次の行を inventory.yml に追加します。

     ansible_ssh_common_args: <your ssh ProxyCommand setting>
    Copy to Clipboard Toggle word wrap

    これは、install-ceptor.yml Playbook に、proxy コマンドを使用してローカル DNS ノード経由でプライベートノードに接続するように指示します。

  9. 属性を設定したら、Save をクリックします。作成したインスタンスの Details ページが開きます。
  10. ファイルを保存して続行します。
  11. インストールバンドルを実行してリモートノードをセットアップし、ansible-playbook を実行するシステムには、ansible.receptor コレクションがインストールされている必要があります。

    ansible-galaxy collection install ansible.receptor
    Copy to Clipboard Toggle word wrap

    または

    ansible-galaxy install -r requirements.yml
    Copy to Clipboard Toggle word wrap
    • requirements.yml ファイルから receptor コレクションの依存関係をインストールすると、そこで指定された receptor のバージョンが一貫して取得されます。さらに、今後必要になる可能性のある他のコレクションの依存関係も取得されます。
    • Playbook が実行されるすべてのノードに receptor コレクションをインストールします。インストールしない場合は、エラーが発生します。
  12. receptor_listener_port が定義されている場合、マシンには、受信 TCP 接続を確立するために使用可能なオープンポート (27199 など) も必要です。次のコマンドを実行して、Receptor 通信用にポート 27199 を開きます (ファイアウォールでポート 27199 が開いていることを確認してください)。

    sudo firewall-cmd --permanent --zone=public --add-port=27199/tcp
    Copy to Clipboard Toggle word wrap
  13. 自動化メッシュを更新するマシン上で、次の Playbook を実行します。
ansible-playbook -i inventory.yml install_receptor.yml
Copy to Clipboard Toggle word wrap

+

注記

この Playbook には OpenSSL が必要です。次のコマンドを実行してインストールできます。

openssl -v
Copy to Clipboard Toggle word wrap

返される場合は、OpenSSL のバージョンがインストールされています。返されない場合は、次のように OpenSSL をインストールする必要があります。

sudo dnf install -y openssl
Copy to Clipboard Toggle word wrap

+ この Playbook を実行すると、自動化メッシュが設定されます。

注記

場合によっては、サーバーが Receptor ポート (デフォルトは 27199) をリッスンしないことがあります。

ノード A、B、C を持つコントロールプレーンがあるとします。

以下は、3 つのコントローラーノードのピアリング設定です。

コントローラーノード A コントローラーノード B

コントローラーノード A コントローラーノード C

コントローラーノード B コントローラーノード C

以下を設定すると、リスナーを強制できます。

receptor_listener=True

ただし、接続コントローラー B A は、接続がすでに存在するため、拒否される可能性が高くなります。

その場合、コントローラー A は他のノードへの接続を作成しているため、コントローラー A には何も接続されません。コントローラー A で次のコマンドを実行しても、何も返されません。

[root@controller1 ~]# ss -ntlp | grep 27199 [root@controller1 ~]#

RPM インストーラーは、最小限の特権アプローチを持つコントロールプレーンノード間で高度に接続されたピアリングを作成し、必要な場合にのみ TCP リスナーを開きます。すべてのレセプター接続は双方向であるため、接続が作成されると、レセプターは双方向で通信できます。

+ メッシュからインスタンスを削除するには、インスタンスの削除 を参照してください。

+

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る