3.2. リモート実行用のプルベースのトランスポートを設定する
リモート実行では、デフォルトで、スクリプトプロバイダーのトランスポートメカニズムとしてプッシュベースの SSH が使用されます。インフラストラクチャーで Capsule Server からホストへの送信接続が禁止されている場合は、ホストによって Capsule Server への接続が開始されるため、代わりにプルベースのトランスポートを使用したリモート実行を使用できます。プルベースのトランスポートの使用は、このようなインフラストラクチャーに限定されません。
プルベースのトランスポートは、カプセル上の pull-mqtt
モードとホスト上で実行されるプルクライアントの組み合わせで構成されます。
pull-mqtt
モードは、スクリプトプロバイダーでのみ機能します。Ansible およびその他のプロバイダーは、引き続きデフォルトのトランスポート設定を使用します。
このモードは Capsule Server ごとに設定されます。一部の Capsule Server は pull-mqtt
モードを使用するように設定できますが、他の Capsule Server は SSH を使用します。この場合、特定のホスト上の 1 つのリモートジョブがプルクライアントを使用し、同じホスト上の次のジョブが SSH を使用する可能性があります。このような状況を回避するには、すべての Capsule Server が同じモードを使用するように設定してください。
手順
Capsule Server でプルベースのトランスポートを有効にします。
# satellite-installer --foreman-proxy-plugin-remote-execution-script-mode=pull-mqtt
ポート 1883 で MQTT サービスを許可するようにファイアウォールを設定します。
# firewall-cmd --add-service=mqtt
変更を永続化します。
# firewall-cmd --runtime-to-permanent
pull-mqtt
モードでは、ホストがその登録先の Satellite または Capsule Server へのジョブ通知をサブスクライブします。Satellite Server がリモート実行ジョブを同じ Satellite Server または Capsule Server に送信するようにします。- Satellite Web UI で、Administer > Settings に移動します。
- Content タブで、Prefer registered through Capsule for remote execution の値を Yes に設定します。
次のステップ
- プルベースのトランスポート用にホストを設定します。詳細は、ホストの管理 の リモート実行のトランスポートモード を参照してください。