GKE クラスタ用 Binary Authorization の概要

このドキュメントでは、GKE クラスタ用の Binary Authorization について説明します。このプロダクトをインストールして使用するには、GKE クラスタ用に Binary Authorization を設定するをご覧ください。Binary Authorization は、次の環境をサポートしています。

GKE クラスタ用の Binary Authorization は、Binary Authorization のホストされたデプロイ時適用を GKE クラスタに拡張する Google Cloud プロダクトです。

アーキテクチャ

GKE クラスタ用の Binary Authorization は、Google Cloud で実行されている Binary Authorization の適用者にクラスタを接続します。GKE クラスタ用の Binary Authorization は、GKE クラスタからコンテナ イメージを実行するリクエストを Binary Authorization 適用 API にリレーします。

デプロイされた 1 つのユーザー コントロール プレーンの構成を示す GKE on VMware の Binary Authorization。
1 つのユーザー コントロール プレーンを備えた GKE on VMware 用 Binary Authorization アーキテクチャ(クリックして拡大)

GKE クラスタ用の Binary Authorization が Binary Authorization モジュールをクラスタにインストールします。これは、クラスタ内の Kubernetes 検証アドミッション Webhook として実行されます。

クラスタの Kubernetes API サーバーが Pod の実行リクエストを処理するとき、コントロール プレーンを介して Binary Authorization モジュールにアドミッション リクエストを送信します。

このモジュールが、ホストされている Binary Authorization API にアドミッション リクエストを転送します。

Google Cloud で、この API がリクエストを受信し、Binary Authorization の適用者に転送します。適用者は、リクエストが Binary Authorization ポリシーを遵守していることを確認します。遵守している場合、Binary Authorization API は「許可」レスポンスを返します。遵守していない場合、API は「拒否」レスポンスを返します。

オンプレミスで、Binary Authorization モジュールがレスポンスを受信します。Binary Authorization モジュールと他のすべてのアドミッション Webhook がデプロイ リクエストを許可する場合、コンテナ イメージのデプロイが許可されます。

検証アドミッション Webhook の詳細については、アドミッション コントローラの使用をご覧ください。

Webhook 障害ポリシー

障害により Binary Authorization との通信が妨げられる場合、Webhook 固有の障害ポリシーによりコンテナのデプロイが許可されるかが決定されます。コンテナ イメージをデプロイできるように障害ポリシーを構成することをフェイル オープンといいます。コンテナ イメージをデプロイできないように障害ポリシーを構成することをフェイル クローズといいます。

Binary Authorization モジュールをフェイル クローズ用に構成するには、manifest.yaml ファイルで failurePolicyIgnore から Fail に変更し、マニフェスト ファイルをデプロイします。

Binary Authorization モジュールで障害ポリシーを更新できます。

次のステップ