This documentation is for a release that is no longer maintained.
You can select a different version or view all RHACS documentation.第5章 アドミッションコントローラーの適用の使用
Red Hat Advanced Cluster Security for Kubernetes は、Kubernetes アドミッションコントローラー および OpenShift Container Platform アドミッションプラグイン と連携します。これにより、管理者は、Kubernetes または OpenShift Container Platform がワークロード (デプロイメント、デーモンセット、ジョブなど) を作成する前に、セキュリティーポリシーを適用できます。
Red Hat Advanced Cluster Security for Kubernetes のアドミッションコントローラーは、Red Hat Advanced Cluster Security for Kubernetes で管理者が設定したポリシーに違反するワークロードをユーザーが作成するのを防止します。Red Hat Advanced Cluster Security for Kubernetes バージョン 3.0.41 以降では、ポリシーに違反するワークロードの更新を防ぐようにアドミッションコントローラーを設定することもできます。
Red Hat Advanced Cluster Security for Kubernetes は ValidatingAdmissionWebhook コントローラーを使用して、プロビジョニングされるリソースが指定のセキュリティーポリシーに準拠していることを確認します。これに対応するために、Red Hat Advanced Cluster Security for Kubernetes により複数の Webhook ルールが含まれる ValidatingWebhookConfiguration が作成されます。
Kubernetes または OpenShift Container Platform API サーバーが Webhook ルールのいずれかに一致する要求を受信する場合には、API サーバーは AdmissionReview 要求を Red Hat Advanced Cluster Security for Kubernetes に送信します。Red Hat Advanced Cluster Security for Kubernetes は、設定されたセキュリティーポリシーに基づいて要求を受諾または拒否します。
OpenShift Container Platform でアドミッションコントローラーの適用を使用するには、Red Hat Advanced Cluster Security for Kubernetes バージョン 3.0.49 以降が必要です。
5.1. アドミッションコントローラーの適用について リンクのコピーリンクがクリップボードにコピーされました!
アドミッションコントローラーの適用を使用する場合は、次の点を考慮してください。
- API レイテンシー: アドミッションコントローラーの適用を使用すると、追加の API 検証要求が必要になるため、Kubernetes または OpenShift Container Platform API のレイテンシーが増加します。fabric8 などの数多くの標準 Kubernetes ライブラリーには、デフォルトで短時間の Kubernetes または OpenShift Container Platform API のタイムアウトが含まれています。また、使用しているカスタム自動化での API タイムアウトも検討してください。
イメージのスキャン: クラスター設定パネルで Contact Image Scanners オプションを設定して、アドミッションコントローラーが要求の確認中にイメージをスキャンするかどうかを選択できます。
- この設定を有効にすると、スキャンまたはイメージ署名の検証結果がまだ利用できない場合には、Red Hat Advanced Cluster Security for Kubernetes がイメージスキャナーに接続し、これにが原因でかなりの遅延が発生します。
- この設定を無効にすると、キャッシュされたスキャンと署名の検証結果が利用可能な場合にのみ、適用するかどうかの意思決定に、イメージスキャンの条件が考慮されます。
アドミッションコントローラーの適用は、以下に対して使用できます。
-
Pod の
securityContextのオプション。 - デプロイメント設定
- イメージコンポーネントおよび脆弱性。
-
Pod の
アドミッションコントローラーの適用は、以下に対して使用することはできません。
- プロセスなどのランタイム動作。
- ポートの公開に基づくポリシー。
-
Kubernetes または OpenShift Container Platform API サーバーと Red Hat Advanced Cluster Security for Kubernetes Sensor の間に接続の問題がある場合、アドミッションコントローラーが失敗する可能性があります。この問題を解決するには、「アドミッションコントローラーの適用の無効化」セクションの説明に従って、
ValidatingWebhookConfigurationオブジェクトを削除します。 - ポリシーに対してデプロイ時の適用を有効にして、アドミッションコントローラーを有効にすると、Red Hat Advanced Cluster Security for Kubernetes はポリシーに違反するデプロイメントのブロックを試行します。ポリシーに準拠しないデプロイメントがアドミッションコントローラーによって拒否されない場合 (たとえば、タイムアウトの場合) も、Red Hat Advanced Cluster Security for Kubernetes は、ゼロレプリカへのスケーリングなど、他のデプロイ時の適用メカニズムを適用します。