このドキュメントでは、Google Distributed Cloud の一部として作成されたオンプレミス クラスタの Binary Authorization について説明します。このプロダクトをインストールして使用するには、オンプレミス クラスタ用に Binary Authorization を設定するをご覧ください。Binary Authorization は次の環境をサポートしています。
- ベアメタル上の Google Distributed Cloud(ソフトウェアのみ)1.14 以降。
- VMware 上の Google Distributed Cloud(ソフトウェアのみ)1.4 以降
オンプレミス クラスタ用の Binary Authorization は、Binary Authorization のホストされたデプロイ時適用を Google Distributed Cloud に拡張する Google Cloud プロダクトです。
アーキテクチャ
オンプレミス クラスタの Binary Authorization は、Google Cloud で実行されている Binary Authorization の適用者にクラスタを接続します。オンプレミス クラスタからコンテナ イメージを実行するリクエストを Binary Authorization 適用 API にリレーします。
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
ファイルで failurePolicy
を Ignore
から Fail
に変更し、マニフェスト ファイルをデプロイします。
Binary Authorization モジュールで障害ポリシーを更新できます。
次のステップ
- オンプレミス クラスタに Binary Authorization を設定する方法を確認する。オンプレミス クラスタに Binary Authorization を設定するをご覧ください。
- Google Distributed Cloud の詳細を確認する。Google Distributed Cloud の概要をご覧ください。
- Binary Authorization の詳細を確認する。Binary Authorization の概要をご覧ください。