Oracle Cloud Infrastructureドキュメント

クラスタの作成とデプロイメントのためのポリシー構成

Container Engine for Kubernetesを使用してテナンシ内のリージョンにクラスタを作成およびデプロイするには、Container Engine for Kubernetesがテナンシ内で操作を実行できるように、ルート・コンパートメントにポリシーを設定する必要があります。 「Container Engine for Kubernetesのポリシーを作成する(必須)」を参照してください。

テナンシが作成されると、そのテナンシに対して管理者グループが自動的に作成されます。 Administratorsグループのメンバーであるユーザーは、テナンシ内のリソースに対して任意の操作を実行できます。 Container Engine for Kubernetesを使用するすべてのユーザーが既にAdministratorsグループのメンバーである場合は、追加のポリシーを作成する必要はありません。 ただし、AdministratorsグループのメンバーでないユーザーがContainer Engine for Kubernetesを使用できるようにするには、そのユーザーが所属するグループがテナンシ内のクラスタ関連リソースの操作を実行できるようにするポリシーを作成する必要があります。 「グループの1つ以上のポリシーを作成する(オプション)」を参照してください。

IAMで管理される前述のポリシーに加えて、Kubernetes RBAC認可者は、Kubernetes RBACロールおよびクラスタ・ロールを介して特定のクラスタのユーザーに対してさらに詳細なアクセス制御を強制することもできます。 「アクセス制御とContainer Engine for Kubernetesについて」を参照してください。

Container Engine for Kubernetesのポリシーを作成する(必須)

テナンシ内のクラスタを作成および管理するには、Container Engine for Kubernetesがテナンシ内のすべてのリソースにアクセスできる必要があります。 Container Engine for Kubernetesに必要なアクセス権を与えるには、次のようにサービスのポリシーを作成します:

  1. コンソールで、「ナビゲーション・メニュー」を開きます。 ガバナンスと管理の下で、アイデンティティに行き、「ポリシー」をクリックします。 表示しているコンパートメント内のポリシーのリストが表示されます。
  2. 左のリストからテナンシのルート・コンパートメントを選択します。
  3. ポリシーの作成をクリックします。
  4. 次のように入力します。

    • 名: ポリシーの一意の名前(たとえば、oke-service)。 名前は、テナンシ内のすべてのポリシーで一意でなければなりません。 これは後で変更することはできません。 機密情報を入力しないでください。
    • 説明: フレンドリな説明。 これを後で変更することもできます。 機密情報を入力しないでください。
    • ポリシーのバージョン管理: 将来のポリシー変更の動詞とリソースの変更がポリシーに反映されるようにするには、現在のポリシーを維持を選択します。 または、特定の日付の現在の定義に従ってアクセスを制限する場合は、「バージョン日付を使用」を選択し、その日付をYYYY-MM-DD形式で入力します。 詳細は、「ポリシー言語バージョン」を参照してください。
    • ステートメント: 次のポリシー・ステートメント:

      Allow service OKE to manage all-resources in tenancy
    • タグ: オプションで、タグを適用できます。 リソースを作成する権限を持っている場合は、フリーフォーム・タグをそのリソースに適用する権限も持っています。 定義済みタグを適用するには、タグ・ネームスペースを使用する権限が必要です。 タギングの詳細については、「リソース・タグ」を参照してください。 タグを適用する必要があるかどうかわからない場合は、このオプションをスキップしてください(後でタグを適用することもできます)。
  5. 作成をクリックします

グループの1つ以上のポリシーを作成する(オプション)

AdministratorsグループのメンバーでないユーザーがContainer Engine for Kubernetesを使用できるようにするには、そのユーザーが所属するグループが次のようにテナンシ内のクラスタ関連リソースの操作を実行できるようにするポリシーを作成します:

  1. コンソールで、「ナビゲーション・メニュー」を開きます。 ガバナンスと管理の下で、アイデンティティに行き、「ポリシー」をクリックします。 表示しているコンパートメント内のポリシーのリストが表示されます。
  2. 左のリストからテナンシのルート・コンパートメントを選択します。
  3. ポリシーの作成をクリックします。
  4. 次のように入力します。

    • 名: ポリシーの一意の名前(たとえば、acme-dev-team-oke-policy)。 名前は、テナンシ内のすべてのポリシーで一意でなければなりません。 これは後で変更することはできません。 機密情報を入力しないでください。
    • 説明: フレンドリな説明。 これを後で変更することもできます。 機密情報を入力しないでください。
    • ポリシーのバージョン管理: 将来のポリシー変更の動詞とリソースの変更がポリシーに反映されるようにするには、現在のポリシーを維持を選択します。 または、特定の日付の現在の定義に従ってアクセスを制限する場合は、「バージョン日付を使用」を選択し、その日付をYYYY-MM-DD形式で入力します。 詳細は、「ポリシー言語バージョン」を参照してください。
    • ステートメント: 既存のグループがテナンシ内のクラスタ関連リソースの操作を実行できるようにする適切なポリシー・ステートメント。 例えば:

      • acme-dev-teamグループ内のユーザーがクラスタ関連のリソースに対して操作を実行できるようにするには、Allow group acme-dev-team to manage cluster-family in tenancyのようなポリシー・ステートメントを入力します。 このキャッチ・オール・ポリシーは、クラスタ関連のリソースが関係している限り、すべてのユーザー管理者を効果的に管理します。

      • コンソールを使用してクラスタを作成または変更したり、新しいクイック・クラスタを作成するときに関連する新しいネットワーク・リソースを自動的に作成および構成したりするには、acme-dev-teamグループ内のユーザーにグループを付与する必要があります:

        • VCN_READおよびVCN_CREATEのアクセス権。 Allow group acme-dev-team to manage vcns in tenancyのようなポリシー文を入力してください
        • SUBNET_READおよびSUBNET_CREATEのアクセス権。 Allow group acme-dev-team to manage subnets in tenancyのようなポリシー文を入力してください
        • COMPARTMENT_INSPECTアクセス権。 Allow group acme-dev-team to inspect compartments in tenancyのようなポリシー文を入力してください
        • INTERNET_GATEWAY_CREATEアクセス権。 Allow group acme-dev-team to manage internet-gateways in tenancyのようなポリシー文を入力してください
        • NAT_GATEWAY_CREATEアクセス権。 Allow group acme-dev-team to manage nat-gateways in tenancyのようなポリシー文を入力してください
        • ROUTE_TABLE_UPDATEアクセス権。 Allow group acme-dev-team to manage route-tables in tenancyのようなポリシー文を入力してください
        • SECURITY_LIST_CREATEアクセス権。 Allow group acme-dev-team to manage security-lists in tenancyのようなポリシー文を入力してください
      • acme-dev-team-cluster-viewersグループのユーザーがクラスタを単純にリストできるようにするには、Allow group acme-dev-team-cluster-viewers to inspect clusters in tenancyのようなポリシー文を入力します。
      • acme-dev-team-pool-adminsグループ内のユーザーがノード・プールをリスト作成、更新、および削除できるようにするには、Allow group acme-dev-team-pool-admins to use cluster-node-pools in tenancyのようなポリシー文を入力します。
      • acme-dev-team-auditorsグループのユーザーがクラスタで実行された操作の詳細を表示できるようにするには、Allow group acme-dev-team-auditors to read cluster-work-requests in tenancyのようなポリシー・ステートメントを入力します。
    • タグ: オプションで、タグを適用できます。 リソースを作成する権限を持っている場合は、フリーフォーム・タグをそのリソースに適用する権限も持っています。 定義済みタグを適用するには、タグ・ネームスペースを使用する権限が必要です。 タギングの詳細については、「リソース・タグ」を参照してください。 タグを適用する必要があるかどうかわからない場合は、このオプションをスキップしてください(後でタグを適用することもできます)。
  5. 作成をクリックします