第3章 Automation Controller のパフォーマンスチューニング
Automation Controller をチューニングしてパフォーマンスとスケーラビリティを最適化します。ワークロードを計画するときは、パフォーマンスとスケーリングのニーズを特定し、制限に合わせて調整し、デプロイメントを監視してください。
Automation Controller は、次のようなチューニング可能なコンポーネントが多数含まれる分散システムです。
- ジョブのスケジューリングを担当するタスクシステム
- ジョブの制御と出力の処理を担当するコントロールプレーン
- ジョブが実行される実行プレーン
- API の提供を担当する Web サーバー
- WebSocket 接続とデータを提供およびブロードキャストする WebSocket システム
- 多くのコンポーネントで使用されるデータベース
3.1. Automation Controller の WebSocket 設定 リンクのコピーリンクがクリップボードにコピーされました!
Automation Controller を設定して、WebSocket 設定を nginx またはロードバランサーの設定と合わせることができます。
Automation Controller ノードは、WebSocket を介して相互接続され、WebSocket が発行するすべてのメッセージをシステム全体に分散します。この設定セットアップにより、任意のブラウザークライアント WebSocket が、任意の Automation Controller ノードで実行されている可能性がある任意のジョブにサブスクライブできるようになります。WebSocket クライアントは特定の Automation Controller ノードにルーティングされません。代わりに、すべての Automation Controller ノードが任意の WebSocket 要求を処理できます。各 Automation Controller ノードは、すべてのクライアントに宛てたすべての WebSocket メッセージを把握しておく必要があります。
WebSocket は、すべての Automation Controller ノードの /etc/tower/conf.d/websocket_config.py で設定できます。変更はサービスの再起動後に有効になります。
Automation Controller は、データベース内のインスタンスレコードを介して、他の Automation Controller ノードの検出を自動的に処理します。
Automation Controller ノードは、(オープンインターネットではなく) プライベートで信頼できるサブネットを介して WebSocket トラフィックをブロードキャストするように設計されています。そのため、WebSocket ブロードキャストの HTTPS をオフにすると、Ansible Playbook の標準出力 (stdout) の大部分で構成される WebSocket トラフィックは、Automation Controller ノード間で暗号化されずに送信されます。
3.1.1. 他の Automation Controller ノードの自動検出の設定 リンクのコピーリンクがクリップボードにコピーされました!
WebSocket 接続を設定して、Automation Controller がデータベースのインスタンスレコードを使用して他の Automation Controller ノードの検出を自動的に処理できるようにします。
Automation Controller の WebSocket のポートとプロトコルの情報を編集し、WebSocket 接続を確立するときに証明書を検証するかどうかを
TrueまたはFalseで確認します。BROADCAST_WEBSOCKET_PROTOCOL = 'http' BROADCAST_WEBSOCKET_PORT = 80 BROADCAST_WEBSOCKET_VERIFY_CERT = False
BROADCAST_WEBSOCKET_PROTOCOL = 'http' BROADCAST_WEBSOCKET_PORT = 80 BROADCAST_WEBSOCKET_VERIFY_CERT = FalseCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを使用して Automation Controller を再起動します。
automation-controller-service restart
$ automation-controller-service restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow