5.3. gatekeeper Operator の設定
クラスターに Gatekeeper をインストールするには、Operator Lifecycle Manager カタログから Gatekeeper Operator をインストールします。Red Hat Advanced Cluster Management では、ガバナンスフレームワークを使用してポリシーを使用して Gatekeeper Operator をインストールできます。Gatekeeper Operator をインストールした後、Gatekeeper をインストールするように Gatekeeper Operator のカスタムリソースを設定します。
5.3.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- 必要なアクセス権限: クラスターの管理者
- OpenShift Container Platform ドキュメント の Operator の クラスターへの追加 および 追加リソース セクションを完了し て、Operator Lifecycle Manager および OperatorHub を使用する方法を理解します。
5.3.2. gatekeeper カスタムリソースの例 リンクのコピーリンクがクリップボードにコピーされました!
Gatekeeper Operator のカスタムリソースは、Gatekeeper Operator にクラスター上で Gatekeeper のインストールを開始するように指示します。Gatekeeper をインストールするには、サンプルとデフォルト値を含む次のサンプル YAML を使用します。
- 1
- 作成する namespace 監査イベントを管理するには、
auditEventsInvolvedNamespaceパラメーターを有効にします。このパラメーターを有効にすると、Gatekeeper コントローラーのデプロイメントは、--audit-events-involved-namespace=trueの引数で実行されます。 - 3
- バージョン 3.20 以降では、Pod に追加するアノテーション名と値のリストを指定して、監査 Pod に固有の
audit.podAnnotationsを指定します。省略された値はtrueとして扱われます。 - 4
- 作成する namespace アドミッションイベントを管理するには、
admissionEventsInvolvedNamespaceパラメーターを有効にします。このパラメーターを有効にすると、Gatekeeper コントローラーのデプロイメントは、--admission-events-involved-namespace=true引数で実行されます。 - 2 5
- コンテナーに渡す引数名と値のリストを指定して、
containerArgumentsを指定します。引数名の先頭のダッシュを省略します。省略された値はtrueとして扱われます。指定した引数が Operator または他のフィールドからの設定によって以前に設定されている場合、その引数は無視されます。以下は、拒否リストに登録されており、現在サポートされていないフラグのリストです。-
ポート -
prometheus-port -
health-addr -
validating-webhook-configuration-name -
mutating-webhook-configuration-name -
disable-cert-rotation -
client-cert-name -
tls-min-version
-
- 6
操作を使用して、Webhook が呼び出される操作を管理します。たとえば、CREATE、UPDATE、CONNECT、およびDELETEです。- 7 10
- バージョン 3.20 以降の場合、webhook 設定の
ルール設定を上書きするルールを指定します。これを設定すると、このフィールドは Operations フィールドよりも優先されます。 - 8 11
- バージョン 3.20 以降の場合は、webhook 設定のタイムアウトを指定します。
- 9
- バージョン 3.20 以降では、
mutatingWebhookConfigセクションを使用して、spec.webhookの値を上書きする、または変更用の Webhook に固有である設定で変更用の Webhook を設定します。 - 12
configセクションを使用して、クラスターのすべての制約の特定のプロセスから namespace を除外します。- 13
disableDefaultMatchesパラメーターは、ブール型パラメーターで、Gatekeeper operator が提供するデフォルトの exempt namespace が追加されないようにします。デフォルトの exempt namespace は OpenShift Container Platform または Kubernetes システム namespace です。デフォルトでは、このパラメーターはfalseに設定されており、デフォルトの namespace を追加できるようになります。
5.3.3. auditFromCache の同期情報の設定 リンクのコピーリンクがクリップボードにコピーされました!
gatekeeper Operator は、auditFromCache パラメーターを使用した監査設定の Gatekeeper operator カスタムリソースの設定を公開しますが、これはデフォルトで無効になっています。制約からリソースを収集するには、auditFromCache パラメーターを設定します。
auditFromCache パラメーターを Automatic に設定すると、Gatekeeper Operator は制約からリソースを収集し、それらのリソースを Gatekeeper Config リソースに挿入します。リソースが存在しない場合は、Gatekeeper Operator が Config リソースを作成します。
auditFromCache パラメーターを Enabled に設定する場合は、キャッシュに同期するオブジェクトを含む Gatekeeper Config リソースを手動で設定する必要があります。詳細は、Gatekeeper ドキュメントの 監査の設定 を参照してください。
制約からのリソース収集の auditFromCache パラメーターを設定するには、次の手順を実行します。
Gatekeeperリソースで、auditFromCacheをAutomaticに設定します。以下の例を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow リソースが
Configリソースに追加されたことを確認するには、syncOnlyパラメーターセクションが追加されていることを確認します。以下のコマンドを実行します。oc get configs.config.gatekeeper.sh config -n openshift-gatekeeper-system
oc get configs.config.gatekeeper.sh config -n openshift-gatekeeper-systemCopy to Clipboard Copied! Toggle word wrap Toggle overflow Configリソースは次の例のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
オプション: 次のコマンドを実行すると、Gatekeeper Operator のカスタムリソースの説明から、auditFromCache 設定の説明を表示できます。
oc explain gatekeeper.spec.audit.auditFromCache
oc explain gatekeeper.spec.audit.auditFromCache
5.3.4. 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
- 詳細は、Gatekeeper ドキュメントの 監査の設定 を参照してください。