クラスタの作成

このページでは、Binary Authorization を有効にして Google Kubernetes Engine(GKE)でクラスタを作成する方法について説明します。この手順は、コマンドラインの gcloud コマンドまたは Google Cloud Console で行います。この手順は、GKE 用 Binary Authorization の設定の一部です。

始める前に

Binary Authorization を有効にしたクラスタを作成する(監査専用)

Binary Authorization は、Autopilot クラスタまたは Standard クラスタで使用できます。監査専用の評価モードを構成するには、少なくとも 1 つのプラットフォーム ポリシーを指定する必要があります。

Binary Authorization を有効にしたクラスタを監査のみで有効にするには、次の操作を行います。

コンソール

次の手順では、Standard クラスタを構成します。

  1. Google Cloud コンソールで、GKE ページに移動します。

    GKE に移動

  2. [クラスタを作成] をクリックします。ゾーンクラスタの作成の説明に従って、デフォルトのフィールドの値を入力します。

  3. ナビゲーション メニューで [セキュリティ] をクリックします。

  4. [Binary Authorization の有効化] を選択します。

  5. [監査のみ] を選択し、Binary Authorization でクラスタのイメージを評価する監査ポリシーを構成します。

  6. [作成] をクリックします。

gcloud

  1. デフォルトの Google Cloud プロジェクトを設定します。

    gcloud config set project PROJECT_ID
    

    PROJECT_ID は、クラスタを作成するプロジェクトの ID に置き換えます。

  2. CV プラットフォームのポリシーベースの監査のみを使用するクラスタを作成します。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • CLUSTER_NAME: クラスタ名。
    • LOCATION: ロケーション。例: us-central1asia-south1
    • POLICY_PROJECT_ID: ポリシーが保存されているプロジェクトの ID。
    • POLICY_ID: ポリシー ID。
    • CLUSTER_PROJECT_ID: クラスタ プロジェクト ID。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud beta container clusters create CLUSTER_NAME \
        --location=LOCATION \
        --binauthz-evaluation-mode=POLICY_BINDINGS \
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID/platforms/gke/policies/POLICY_ID \
        --project=CLUSTER_PROJECT_ID
    

    Windows(PowerShell)

    gcloud beta container clusters create CLUSTER_NAME `
        --location=LOCATION `
        --binauthz-evaluation-mode=POLICY_BINDINGS `
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID/platforms/gke/policies/POLICY_ID `
        --project=CLUSTER_PROJECT_ID
    

    Windows(cmd.exe)

    gcloud beta container clusters create CLUSTER_NAME ^
        --location=LOCATION ^
        --binauthz-evaluation-mode=POLICY_BINDINGS ^
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID/platforms/gke/policies/POLICY_ID ^
        --project=CLUSTER_PROJECT_ID
    

クラスタの作成には数分かかる場合があります。

Binary Authorization を有効にしたクラスタを作成する(適用のみ)

Binary Authorization は、Autopilot クラスタまたは Standard クラスタで使用できます。適用ポリシーは、デフォルトですべてのイメージを許可するプロジェクト ポリシーに設定されます。プロジェクト ポリシーを変更するには、こちらの手順に沿って操作してください。

Binary Authorization を有効にし、適用のみを有効にしてクラスタを作成するには、次の操作を行います。

コンソール

次の手順では、Standard クラスタを構成します。

  1. Google Cloud コンソールで、GKE ページに移動します。

    GKE に移動

  2. [クラスタを作成] をクリックします。ゾーンクラスタの作成の説明に沿って、デフォルトのフィールドの値を入力します。

  3. ナビゲーション メニューで [セキュリティ] をクリックします。

  4. [Binary Authorization の有効化] を選択します。

  5. [適用のみ] を選択します。

  6. [作成] をクリックします。

gcloud

  1. デフォルトの Google Cloud プロジェクトを設定します。

    gcloud config set project PROJECT_ID
    

    PROJECT_ID は、クラスタを作成するプロジェクトの ID に置き換えます。

  2. ポリシーの適用のみを使用するクラスタを作成します。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • CLUSTER_NAME: クラスタ名。
    • LOCATION: ロケーション。例: us-central1asia-south1
    • CLUSTER_PROJECT_ID: クラスタ プロジェクト ID。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud beta container clusters create CLUSTER_NAME \
        --location=LOCATION \
        --binauthz-evaluation-mode=PROJECT_SINGLETON_POLICY_ENFORCE \
        --project=CLUSTER_PROJECT_ID
    

    Windows(PowerShell)

    gcloud beta container clusters create CLUSTER_NAME `
        --location=LOCATION `
        --binauthz-evaluation-mode=PROJECT_SINGLETON_POLICY_ENFORCE `
        --project=CLUSTER_PROJECT_ID
    

    Windows(cmd.exe)

    gcloud beta container clusters create CLUSTER_NAME ^
        --location=LOCATION ^
        --binauthz-evaluation-mode=PROJECT_SINGLETON_POLICY_ENFORCE ^
        --project=CLUSTER_PROJECT_ID
    

クラスタの作成には数分かかる場合があります。

Binary Authorization を有効にしたクラスタを作成する(監査と適用)

Binary Authorization は、Autopilot クラスタまたは Standard クラスタで使用できます。

適用ポリシーは、デフォルトですべてのイメージを許可するプロジェクト ポリシーに設定されます。プロジェクト ポリシーを変更するには、こちらの手順に沿って操作してください。

監査プラットフォーム ポリシーを構成できます。監査では、プラットフォーム ポリシーを少なくとも 1 つ指定する必要があります。

Binary Authorization を有効にして監査と適用の両方でクラスタを作成するには、次の操作を行います。

コンソール

次の手順では、Standard クラスタを構成します。

  1. Google Cloud コンソールで、GKE ページに移動します。

    GKE に移動

  2. [クラスタを作成] をクリックします。ゾーンクラスタの作成の説明に沿って、デフォルトのフィールドの値を入力します。

  3. ナビゲーション メニューで [セキュリティ] をクリックします。

  4. [Binary Authorization の有効化] を選択します。

  5. [監査と適用] を選択し、監査ポリシーを構成します。

  6. [作成] をクリックします。

gcloud

  1. デフォルトの Google Cloud プロジェクトを設定します。

    gcloud config set project PROJECT_ID
    

    PROJECT_ID は、クラスタを作成するプロジェクトの ID に置き換えます。

  2. プロジェクト シングルトン ポリシーの適用と CV プラットフォームのポリシーベースの監査の両方を使用するクラスタを作成します。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • CLUSTER_NAME: クラスタ名。
    • LOCATION: ロケーション。例: us-central1asia-south1
    • POLICY_PROJECT_ID: ポリシーが保存されているプロジェクトの ID。
    • POLICY_ID: ポリシー ID。
    • CLUSTER_PROJECT_ID: クラスタ プロジェクト ID。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud beta container clusters create CLUSTER_NAME \
        --location=LOCATION \
        --binauthz-evaluation-mode=POLICY_BINDINGS_AND_PROJECT_SINGLETON_POLICY_ENFORCE \
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID/platforms/gke/policies/POLICY_ID \
        --project=CLUSTER_PROJECT_ID
    

    Windows(PowerShell)

    gcloud beta container clusters create CLUSTER_NAME `
        --location=LOCATION `
        --binauthz-evaluation-mode=POLICY_BINDINGS_AND_PROJECT_SINGLETON_POLICY_ENFORCE `
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID/platforms/gke/policies/POLICY_ID `
        --project=CLUSTER_PROJECT_ID
    

    Windows(cmd.exe)

    gcloud beta container clusters create CLUSTER_NAME ^
        --location=LOCATION ^
        --binauthz-evaluation-mode=POLICY_BINDINGS_AND_PROJECT_SINGLETON_POLICY_ENFORCE ^
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID/platforms/gke/policies/POLICY_ID ^
        --project=CLUSTER_PROJECT_ID
    

クラスタの作成には数分かかる場合があります。

複数のプラットフォーム ポリシーを使用する CV クラスタを作成する(監査専用)

Binary Authorization は、Autopilot クラスタまたは Standard クラスタで使用できます。

複数のプラットフォーム ポリシーがバインドされたクラスタを作成できます(詳細については、GKE API リファレンスをご覧ください)。

コンソール

次の手順では、Standard クラスタを構成します。

  1. Google Cloud コンソールで、GKE ページに移動します。

    GKE に移動

  2. [クラスタを作成] をクリックします。ゾーンクラスタの作成の説明に沿って、デフォルトのフィールドの値を入力します。

  3. ナビゲーション メニューで [セキュリティ] をクリックします。

  4. [Binary Authorization の有効化] を選択します。

  5. [監査のみ] を選択し、Binary Authorization でクラスタを評価する 1 つ以上のプラットフォーム ポリシーを構成します。

  6. [作成] をクリックします。

gcloud

  1. デフォルトの Google Cloud プロジェクトを設定します。

    gcloud config set project PROJECT_ID
    
  2. クラスタを作成します。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • CLUSTER_NAME: クラスタ名。
    • LOCATION: ロケーション。例: us-central1asia-south1
    • POLICY_PROJECT_ID_1: 最初のプラットフォーム ポリシーが保存されているプロジェクトの ID。
    • POLICY_ID_1: 最初のプラットフォーム ポリシーのポリシー ID。
    • POLICY_PROJECT_ID_2: 2 番目のプラットフォーム ポリシーが保存されているプロジェクトの ID。複数のポリシーを同じプロジェクトに保存することも、異なるプロジェクトに保存することもできます。
    • POLICY_ID_2: 2 番目のプラットフォーム ポリシーのポリシー ID。
    • CLUSTER_PROJECT_ID: クラスタ プロジェクト ID。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud beta container clusters create CLUSTER_NAME \
        --location=LOCATION \
        --binauthz-evaluation-mode=POLICY_BINDINGS \
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_1/platforms/gke/policies/POLICY_ID_1 \
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_2/platforms/gke/policies/POLICY_ID_2 \
        --project=CLUSTER_PROJECT_ID
    

    Windows(PowerShell)

    gcloud beta container clusters create CLUSTER_NAME `
        --location=LOCATION `
        --binauthz-evaluation-mode=POLICY_BINDINGS `
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_1/platforms/gke/policies/POLICY_ID_1 `
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_2/platforms/gke/policies/POLICY_ID_2 `
        --project=CLUSTER_PROJECT_ID
    

    Windows(cmd.exe)

    gcloud beta container clusters create CLUSTER_NAME ^
        --location=LOCATION ^
        --binauthz-evaluation-mode=POLICY_BINDINGS ^
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_1/platforms/gke/policies/POLICY_ID_1 ^
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_2/platforms/gke/policies/POLICY_ID_2 ^
        --project=CLUSTER_PROJECT_ID
    

クラスタの作成には数分かかる場合があります。

複数のプラットフォーム ポリシーを使用する CV クラスタを作成する(監査と適用)

Binary Authorization は、Autopilot クラスタまたは Standard クラスタで使用できます。

複数のプラットフォーム ポリシーがバインドされたクラスタを作成できます(詳細については、GKE API リファレンスをご覧ください)。

コンソール

次の手順では、Standard クラスタを構成します。

  1. Google Cloud コンソールで、GKE ページに移動します。

    GKE に移動

  2. [クラスタを作成] をクリックします。ゾーンクラスタの作成の説明に従って、デフォルトのフィールドの値を入力します。

  3. ナビゲーション メニューで [セキュリティ] をクリックします。

  4. [Binary Authorization の有効化] を選択します。

  5. [監査と適用] を選択し、監査ポリシーを構成します。

  6. [作成] をクリックします。

gcloud

  1. デフォルトの Google Cloud プロジェクトを設定します。

    gcloud config set project PROJECT_ID
    
  2. プロジェクト シングルトン ポリシーの適用と CV プラットフォームのポリシーベースの監査の両方を使用するクラスタを作成します。

    後述のコマンドデータを使用する前に、次のように置き換えます。

    • CLUSTER_NAME: クラスタ名。
    • LOCATION: ロケーション。例: us-central1asia-south1
    • POLICY_PROJECT_ID_1: 最初のプラットフォーム ポリシーが保存されているプロジェクトの ID。
    • POLICY_ID_1: 最初のプラットフォーム ポリシーのポリシー ID。
    • POLICY_PROJECT_ID_2: 2 番目のプラットフォーム ポリシーが保存されているプロジェクトの ID。複数のポリシーを同じプロジェクトに保存することも、異なるプロジェクトに保存することもできます。
    • POLICY_ID_2: 2 番目のプラットフォーム ポリシーのポリシー ID。
    • CLUSTER_PROJECT_ID: クラスタ プロジェクト ID。

    次のコマンドを実行します。

    Linux、macOS、Cloud Shell

    gcloud beta container clusters create CLUSTER_NAME \
        --location=LOCATION \
        --binauthz-evaluation-mode=POLICY_BINDINGS_AND_PROJECT_SINGLETON_POLICY_ENFORCE \
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_1/platforms/gke/policies/POLICY_ID_1 \
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_2/platforms/gke/policies/POLICY_ID_2 \
        --project=CLUSTER_PROJECT_ID
    

    Windows(PowerShell)

    gcloud beta container clusters create CLUSTER_NAME `
        --location=LOCATION `
        --binauthz-evaluation-mode=POLICY_BINDINGS_AND_PROJECT_SINGLETON_POLICY_ENFORCE `
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_1/platforms/gke/policies/POLICY_ID_1 `
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_2/platforms/gke/policies/POLICY_ID_2 `
        --project=CLUSTER_PROJECT_ID
    

    Windows(cmd.exe)

    gcloud beta container clusters create CLUSTER_NAME ^
        --location=LOCATION ^
        --binauthz-evaluation-mode=POLICY_BINDINGS_AND_PROJECT_SINGLETON_POLICY_ENFORCE ^
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_1/platforms/gke/policies/POLICY_ID_1 ^
        --binauthz-policy-bindings=name=projects/POLICY_PROJECT_ID_2/platforms/gke/policies/POLICY_ID_2 ^
        --project=CLUSTER_PROJECT_ID
    

クラスタの作成には数分かかる場合があります。

Binary Authorization が有効になっていることを確認する

クラスタで Binary Authorization が有効になっていることを確認するには、次のようにします。

コンソール

  1. Google Cloud コンソールで GKE ページを開きます。

    GKE に移動

  2. [Kubernetes クラスタ] で目的のクラスタを探します。

  3. [セキュリティ] で、[Binary Authorization] が [有効] に設定されていることを確認します。

gcloud

クラスタのポリシー バインディングを一覧表示するには、次の操作を行います。

gcloud beta container clusters describe CLUSTER_NAME --location LOCATION --project CLUSTER_PROJECT_ID | grep -A 10 policyBindings:

ポリシー バインディングのリストの後に追加情報がある場合があります。

次のステップ