クラスタ関連リソースへのセキュリティー属性の追加とZPRポリシーの適用

ZPRセキュリティ属性をクラスタ関連リソースに追加する方法と、Kubernetes Engine (OKE)でZero Trust Packet Routing (ZPR)ポリシーを適用する方法をご紹介します。

Zero Trust Packet Routing (ZPR)をKubernetes Engineとともに使用すると、クラスタ関連リソースと他のOCIリソース間の相互作用に対する、きめ細かな最小限の権限によるアクセス制御を実装できます。ZPRは、機密データや重要な操作が複数のOCIリソースに分散され、リソース・アクセスの厳密な分離と制御が必要な環境で特に役立ちます。ZPRを使用すると、不正アクセスに関連するリスクを軽減し、保護されているリソース間のトラフィック・フローのみを明示的に許可し、コンプライアンス・ニーズと組織のセキュリティ・ポリシーの両方をサポートできます。

Zero Trust Packet Routing (ZPR)をネットワーク・セキュリティ・グループおよびセキュリティ・リストとともに使用して、OCIリソースへのネットワーク・アクセスを管理できます。これを行うには、リソースが相互に通信する方法を制御するZPRポリシーを定義し、それらのリソースにZPRセキュリティ属性を追加します。詳細は、Zero Trust Packet Routingを参照してください。

ZPRの使用はオプションです。ZPRセキュリティ属性を割り当てずに、引き続きOKEを使用できます。ネットワーク・セキュリティ・グループ、セキュリティ・リスト、Kubernetesネットワーク・ポリシーなどの既存のネットワーク・セキュリティ制御は、引き続きOKEと連携します。ZPRは、セキュリティ属性を持ち、ZPRポリシーに一致するリソースに対して、ネットワーク強制の別のレイヤーを追加します。

注意

エンドポイントにZero Trust Packet Routing (ZPR)セキュリティ属性がある場合、エンドポイントへのトラフィックはZPRポリシーとすべてのネットワーク・セキュリティ・グループおよびセキュリティ・リスト・ルールを満たす必要があります。たとえば、NSGをすでに使用していて、必要なトラフィックを許可するZPRポリシーを作成せずにエンドポイントにセキュリティ属性を追加した場合、エンドポイントへのトラフィックはブロックされます。それ以降、ZPRポリシーでエンドポイントへのトラフィックを明示的に許可する必要があります。

既存のクラスタを移行してZPRを使用する場合は、既存のネットワーク・セキュリティ・グループまたはセキュリティ・リスト・ルールを削除する前に、必要なZPRポリシーを作成してテストします。デフォルトでは、ZPRポリシーで明示的にトラフィックが許可されないかぎり、ZPRセキュリティー属性を持つリソースはZPRセキュリティー属性を持たないリソースと通信できません。

KubernetesエンジンでZPRを使用するには、ZPRが使用可能なテナンシ内のサポートされているクラスタ関連リソースにセキュリティ属性を追加します。リソースにセキュリティ属性を追加した後、リソースが他のOCIリソースにアクセスできるのは、ZPRポリシーでアクセスが許可されている場合のみです。

セキュリティ属性は、セキュリティ属性ネームスペースで定義されます。セキュリティ属性をクラスタ関連リソースに追加するには、IAMポリシーで、自分が属するグループに、セキュリティ属性が定義されているネームスペースへのアクセス権を付与する必要があります。詳細は、必要なIAMポリシを参照してください

ZPRセキュリティ属性を持つクラスタ関連リソースが別のリソースにアクセスできるようにするには、適切なZPRポリシーが存在する必要があります。セキュリティ属性が他のリソースにも追加されている場合は、それらのセキュリティ属性を持つエンドポイントへのアクセスを許可するZPRポリシーを作成します。リソース・タイプがZPRでサポートされていないため、他のリソースにZPRセキュリティ属性がない場合、またはZPRセキュリティ属性を指定できない場合は、サポートされているIPアドレス、CIDRブロックまたはサービス・エンドポイント式を使用してアクセスを許可するZPRポリシーを作成します。適切なZPRポリシーがないと、ネットワークレベルでアクセスがブロックされ、接続エラーが発生する可能性があります。詳細は、Required ZPR policiesを参照してください。

次の点を確認します。

  • セキュリティ属性が追加されたクラスタ関連リソースを確認するには、ZPRコンソール・ページを使用します(ZPRドキュメントの保護されたリソースのリストを参照)。
  • クラスタ関連リソースにセキュリティー属性を追加したあと、サポートされているネットワークパスアナライザなどのツールを使用して、ネットワーク接続の問題のデバッグを支援できます。
  • セキュリティ属性が、(ZPRコンソール、CLIまたはAPIを使用して)セキュリティ属性ネームスペースからクラスタ関連リソースに追加された後に削除された場合、削除されたセキュリティ属性をリソースから削除します。そうしないと、削除されたセキュリティー属性を参照するZPRポリシーで、予想されるトラフィックが許可されなくなる可能性があります。

サポートされているクラスタ関連リソースに対してセキュリティー属性を追加または削除する方法は、次の表に示すようにリソースによって異なります。

リソース セキュリティ属性を適用する場所 セキュリティ属性の適用方法 結果
クラスタのKubernetes APIエンドポイント コンソール、CLI、API クラスタの「エンドポイント・セキュリティ属性」プロパティを設定します(APIのsecurityAttributes)。 セキュリティ属性は、クラスタのKubernetes APIエンドポイントにのみ適用されます。これらの属性は、ワーカー・ノード、ポッド、ロード・バランサまたはその他のクラスタ・リソースには適用されません。クラスタのKubernetes APIエンドポイントへのセキュリティ属性の追加を参照してください。
管理対象ノードのコンピュート・インスタンスのプライマリVNIC コンソール、CLI、API ノード・プールのプライマリVNICの「VNICセキュリティ属性」プロパティを設定します(APIのsecurityAttributes)。 セキュリティ属性は、ノード・プール内の管理対象ノードをバックアップするコンピュート・インスタンスのプライマリVNICに適用されます。これらの属性は、kubeletトラフィック、Oracle Cloud Agentトラフィック、ホスト・ネットワークを使用するポッドからのトラフィックなどのノード・レベルのトラフィックに使用されます。管理対象ノードのプライマリVNICへのセキュリティ属性の追加を参照してください。
管理対象ノードのコンピュート・インスタンスのセカンダリVNIC コンソール、CLI、API ノード・プールのセカンダリVNIC (APIのsecurityAttributes)の「VNICセキュリティ属性」プロパティを設定します セキュリティ属性は、ノード・プール内の管理対象ノードをバックアップするコンピュート・インスタンスのセカンダリVNICに適用されます。管理対象ノード・プールに複数のセカンダリVNICを定義する場合、ノード・プール内のすべてのセカンダリVNICで同じセキュリティ属性のセットを使用する必要があります。管理対象ノードのセカンダリVNICへのセキュリティ属性の追加を参照してください。
自己管理ノード・ポッド・トラフィック コンピュート・インスタンスの作成 コンピュート・インスタンスの作成時に、セカンダリVNICのZPRセキュリティ属性を指定します。インスタンス構成のセカンダリVNICにZPRセキュリティ属性を指定しないでください。 セキュリティ属性は、ポッド・トラフィックに使用されるセカンダリVNICに適用されます。「自己管理ノードの操作」を参照してください。
タイプLoadBalancerのKubernetesサービス サービスマニフェスト内の注釈 oci.oraclecloud.com/security-attributes注釈をサービス・マニフェストに追加します。 Kubernetes Engineは、ロード・バランサとネットワーク・ロード・バランサにセキュリティ属性をプロビジョニングします。LoadBalancerタイプのKubernetesサービスに対してプロビジョニングされたロード・バランサおよびネットワーク・ロード・バランサへのセキュリティ属性の追加を参照してください。
ネイティブ・イングレス・コントローラ・ロード・バランサ IngressClassマニフェスト内の注釈 oci-native-ingress.oraclecloud.com/security-attributes注釈をマニフェストに追加します。 OCIネイティブ・イングレス・コントローラは、指定されたセキュリティ属性を使用してロード・バランサをプロビジョニングします。「OCIネイティブ・イングレス・コントローラによってプロビジョニングされるロード・バランサへのセキュリティ属性の追加」を参照してください。
CSIボリューム・プラグインによって作成されたファイル・ストレージ・マウント・ターゲット StorageClassマニフェストのパラメータ マニフェストにsecurityAttributesパラメータを追加します。 CSIボリューム・プラグインは、指定されたセキュリティ属性を持つマウント・ターゲットを作成します。「CSIボリューム・プラグインによって作成されたファイル・ストレージ・サービス・マウント・ターゲットへのセキュリティ属性の追加」を参照してください。

ZPRセキュリティ属性は、クラスタ内のすべてのリソースに継承されるわけではありません。サポートされているリソース・タイプごとに、セキュリティ属性を個別に割り当てます。クラスタ・エンドポイント・セキュリティ属性は、Kubernetes APIエンドポイントにのみ適用されます。ノード・プールのセキュリティ属性は、そのノード・プール内のノードのノードおよびポッドVNICに適用されます。ロード・バランサ、ネイティブ・イングレス・ロード・バランサおよびファイル・ストレージ・マウント・ターゲットには、独自のセキュリティ属性構成が必要です。

前提条件および制限

Kubernetes EngineでZero Trust Packet Routing (ZPR)を使用する前に、次の前提条件および制限を確認してください:

  • ZPRセキュリティ属性は、管理対象ノード・プールおよび自己管理ノードでサポートされますが、仮想ノード・プールではサポートされません。
  • クラスタの作成時および既存のクラスタの更新時に、クラスタのKubernetes APIエンドポイントが独自のVCN (VCNネイティブ・クラスタ)に統合されている場合、ZPRセキュリティ属性がサポートされます。Kubernetes APIエンドポイントが独自のVCNに統合されていないクラスタでは、ZPRセキュリティ属性を使用できません。VCNネイティブ・クラスタへの移行を参照してください。
  • Kubernetesクラスタは、ポッド・ネットワーキング用のOCI VCNネイティブ・ポッド・ネットワーキングCNIプラグインを使用する必要があります。ZPRセキュリティ属性は、flannel CNIプラグインを使用するクラスタではサポートされていません。また、OCI VCNネイティブ・ポッド・ネットワーキングCNIプラグインのバージョンでは、ZPRセキュリティ属性をサポートする必要があります。アドオン・バージョンでZPRセキュリティ属性がサポートされていない場合、Kubernetes EngineはZPRを使用できないか、コンピュート・インスタンスが作成される前にノードの起動に失敗します。
  • KubernetesクラスタでKubernetesバージョン1.32以上が実行されている必要があります。
  • OKEリソースに割り当てるZPRセキュリティ属性を含む適切なセキュリティ属性ネームスペースがすでに存在している必要があります。セキュリティ属性ネームスペースおよびセキュリティ属性は、Zero Trust Packet Routing (ZPR)サービスで作成および管理します。セキュリティ属性ネームスペースの作成およびセキュリティ属性の作成を参照してください。
  • 必要なトラフィックを許可する適切なZPRポリシーがすでに存在している必要があります。2つのリソースに同じセキュリティ属性を割り当てても、自動的には通信できません。必要な通信パスを許可するZPRポリシーを作成する必要があります。ZPRポリシーは、Zero Trust Packet Routing (ZPR)サービスで作成および管理します(Creating a ZPR Policyを参照)。
  • 必要なZPRセキュリティ属性ネームスペースを使用するための適切なIAM権限が存在する必要があります。OCI IAMは、Kubernetes APIエンドポイント、ノードVNIC、ロード・バランサなどのクラスタ関連リソースのセキュリティ属性へのアクセスを強制します。詳細は、必要なIAMポリシを参照してください
  • ロード・バランサ、ネットワーク・ロード・バランサまたはポッドVNICにセキュリティ属性を割り当てる場合、必要なIAMポリシーによって、それらのリソースをプロビジョニングするKubernetes Engineコンポーネントも、指定されたセキュリティ属性をアタッチできるようにする必要があります。たとえば、Cloud Controller ManagerおよびOCIネイティブ・イングレス・コントローラには、リクエストされたセキュリティ属性を、次のような作成したリソースにアタッチするための適切なIAMポリシーが必要です:

    Allow any-user to use security-attribute-namespace in tenancy where request.principal.type = 'cluster'

    詳細は、必要なIAMポリシを参照してください

  • ZPRは、Kubernetesネットワーク・ポリシーを置き換えるのではなく、同じワーカー・ノード上のポッド間のトラフィックを強制しません。同じワーカー・ノード上のポッド間のトラフィックなど、クラスタ内のポッド間トラフィックを制御するには、Kubernetesネットワーク・ポリシーを使用します。
  • ZPRセキュリティ属性は、File Storageサービス・ファイル・システムで永続ボリューム要求をプロビジョニングするときにサポートされますが、Block Volumeサービス・ブロック・ボリュームではサポートされません。

必要なIAMポリシー

クラスタ関連リソースにセキュリティ属性を追加するために必要なIAMポリシー

セキュリティ属性をクラスタ関連リソースに追加する前に、IAMポリシーによって、セキュリティ属性を含むセキュリティ属性ネームスペースを使用する権限が属するグループに付与される必要があります。たとえば、次の構文を使用します。

Allow group <group-name> to use security-attribute-namespaces in tenancy

ポリシー・ステートメントAllow group <group-name> to use security-attribute-namespaces in tenancyを使用してユーザーにセキュリティ属性ネームスペースへのアクセス権を付与する場合、このポリシー・ステートメントは、テナンシ内のすべてのセキュリティ属性ネームスペースを使用する権限をグループに付与することに注意してください。これでは許容性が高すぎると思われる場合、WHERE句を文に含めることで、グループがアクセスできるセキュリティ属性ネームスペースを制限できます。例:

Allow group <group-name> to use security-attribute-namespaces in tenancy where target.security-attribute-namespace.name = 'oke-san'

Where句を含める場合、グループがテナンシ内のすべてのセキュリティ属性ネームスペースを調査できるようにするために、ポリシーに2番目の文も含める必要があります(コンソールを使用する場合)。例:

Allow group <group-name> to inspect security-attribute-namespaces in tenancy

セキュリティ属性がクラスタ関連リソースに追加されている場合、リソースが他のOCIリソースにアクセスできるのは、ZPRポリシーでアクセスが許可されている場合のみです。

セキュリティ属性ネームスペースを使用する適切なIAMポリシーが存在しない場合は、クラスタ関連リソースにセキュリティ属性を追加できません。セキュリティ属性はコンソールに表示されず、OCI CLIを使用してセキュリティ属性を追加しようとすると失敗します。

クラスタおよびノード・プールがセキュリティ属性ネームスペースにアクセスできるようにするために必要なIAMポリシー

セキュリティ属性をクラスタ・リソースまたはノード・プール・リソースに追加する場合、適切なIAMポリシーによって、必要なセキュリティ属性ネームスペースへのクラスタまたはノード・プール・アクセス権が付与される必要があります。例:

Allow any-user to use security-attribute-namespace in compartment <compartment_name> where request.principal.type = 'cluster'
Allow any-user to manage security-attribute-namespace in compartment <compartment_name> where request.principal.type = 'nodepool'

必要なZPRポリシー

クラスタ関連リソースがほかのリソースにアクセスできるようにするために必要なZPRポリシー

クラスタ関連リソースにセキュリティ属性を追加すると、ZPRポリシーによってそれらのリソースへのアクセス権が付与されている場合にのみ、リソースは他のリソースにアクセスできます。

適切なZPRポリシーがまだ存在しない場合は、それを作成する必要があります。たとえば、次の構文を使用します。

in <vcn-security-attribute> VCN allow <application-security-attribute> endpoints to connect to <destination-security-attribute> endpoints

ここでは:

  • <vcn-security-attribute>は、リソースのサブネットが存在するVCNに追加されたセキュリティ属性(および値)です。たとえば、VCN-Network:myVCNです。
  • <application-security-attribute>は、クラスタ関連リソースに追加したセキュリティ属性(および値)です。たとえば、oke-cluster:myclusterA
  • <destination-security-attribute>は、クラスタ関連リソースがアクセスするリソースに追加されたセキュリティ属性(および値)です。例: DB-Server:App1

例:

in VCN-Network:myVCN VCN allow oke-cluster:myclusterA endpoints to connect to DB-Server:App1 endpoints

ZPRポリシー、構文、および例の詳細については、ZPRドキュメントの Zero Trust Packet Routing Policyを参照してください。

管理対象ノードのプライマリVNICにセキュリティー属性を追加するときに必要となるZPRポリシー

管理対象ノード・プール内の管理対象ノードをバックアップするコンピュート・インスタンスのプライマリVNICにZPRセキュリティ属性を指定する場合、管理対象ノードがクラスタに参加できるようにするには、次の追加のZPRポリシーが必要です:

in zpr-cni.sensitivity:42 VCN allow zpr-cni.sensitivity:42 endpoints to connect to 'all-endpoints'
in zpr-cni.sensitivity:42 VCN allow all-endpoints to connect to zpr-cni.sensitivity:42 endpoints with protocol = 'tcp/443'
in zpr-cni.sensitivity:42 VCN allow zpr-cni.sensitivity:42 endpoints to connect to 'osn-services-ip-addresses'

クラスタのKubernetes APIエンドポイントへのセキュリティ属性の追加

クラスタを作成するとき、または既存のクラスタを更新することによって、Kubernetes APIエンドポイントにZPRセキュリティ属性を追加できます。クラスタ・エンドポイント・セキュリティ属性は、Kubernetes APIエンドポイントにのみ適用されます。これらのセキュリティ属性は、ワーカー・ノード、ポッド、ロード・バランサまたはその他のクラスタ関連リソースには適用されません。

Kubernetes APIエンドポイントにセキュリティ属性を追加する前に、認可されたクライアントがエンドポイントにアクセスすることをZPRポリシーで許可していることを確認してください。たとえば、kubectlを使用するクライアントからのアクセスを許可するZPRポリシーを作成します。

  • コンソールを使用してクラスタを作成するときに、新しいクラスタのKubernetes APIエンドポイントにセキュリティ属性を追加するには、コンソールを使用して、カスタム作成ワークフローでの明示的に定義された設定によるクラスタの作成を参照してください。

    コンソールを使用して既存のクラスタのKubernetes APIエンドポイントに対してセキュリティ属性を追加または削除するには:

    1. 「クラスタ」リスト・ページで、セキュリティ属性を追加または削除するKubernetes APIエンドポイントを含むクラスタを選択します。リスト・ページまたはクラスタの検索に関するヘルプが必要な場合は、クラスタのリストを参照してください。

      「セキュリティ」タブには、クラスタのKubernetes APIエンドポイントにすでに追加されているセキュリティ属性(存在する場合)が表示されます。

    2. クラスタのKubernetes APIエンドポイントにセキュリティ属性を追加するには:

      1. 「セキュリティ」タブで「追加」を選択し、「セキュリティ属性の追加」ダイアログで次の操作を行います。
        • セキュリティ属性を含むセキュリティ属性ネームスペースを選択します。
        • セキュリティ属性を選択します。
        • セキュリティ属性値を入力します。
      2. クラスタのKubernetes APIエンドポイントに複数のセキュリティ属性を追加する場合は、「追加」を選択し、追加のセキュリティ属性(最大5つ)を選択します。
      3. 「セキュリティ属性の追加」を選択します。
    3. クラスタのKubernetes APIエンドポイントからセキュリティ属性を削除するには:

      1. 「セキュリティ」タブで、削除するセキュリティ属性の横にある「アクション」メニュー(3つのドット)から「削除」を選択します。
      2. セキュリティ属性を削除することを確認します。

    クラスタの「セキュリティ」タブに表示されるセキュリティ属性が、クラスタのKubernetes APIエンドポイントに適用されるようになりました。

  • クラスタを作成するには、oci ce cluster createコマンドと必要なパラメータを使用します:

    oci ce cluster create --compartment-id <compartment-ocid> --kubernetes-version <kubernetes-version> --name <cluster-name> --vcn-id <vcn-ocid> [OPTIONS]

    クラスタを更新するには、oci ce cluster updateコマンドと必要なパラメータを使用します:

    oci ce cluster update --cluster-id <cluster-ocid> [OPTIONS]

    OCI CLIコマンドのフラグおよび変数オプションの完全なリストは、コマンドライン・リファレンスを参照してください。

  • APIの使用およびリクエストの署名の詳細は、REST APIのドキュメントおよびセキュリティ資格証明を参照してください。SDKの詳細は、SDKおよびCLIを参照してください。

    次のAPI操作を使用して、クラスタのKubernetes APIエンドポイントに対してセキュリティ属性を追加または削除します:

管理対象ノードのプライマリVNICへのセキュリティ属性の追加

管理対象ノード・プール内の管理対象ノードをバックアップするコンピュート・インスタンスのプライマリVNICにZPRセキュリティ属性を指定できます。これらのセキュリティ属性は、管理対象ノード・プールの作成時、または既存の管理対象ノード・プールの更新時に指定します。プライマリVNICセキュリティ属性は、ノード・プールで起動する新しいコンピュート・インスタンスに適用されます。これらのセキュリティ属性は、kubeletトラフィック、Oracle Cloud Agentトラフィック、ホスト・ネットワークを使用するポッドからのトラフィックなどのノード・レベルのトラフィックに使用されます。これらのセキュリティー属性は、ポッドトラフィックに使用されるセカンダリVNIC、またはその他のクラスタ関連リソースには適用されません。

管理対象ノード・プールのセキュリティ属性を更新すると、変更は新しいワーカー・ノードにのみ適用されます。既存のワーカー・ノードとそのVNICは更新されません。更新されたセキュリティ属性を既存のワークロードに適用するには、ノード・プールのワーカー・ノードを置換します(ワーカー・ノードの終了および置換を参照)。ブート・ボリュームの置換では、更新されたノード・プール・セキュリティ属性は適用されないことに注意してください。ワーカー・ノードを置き換える必要があります。

  • コンソールを使用して新しいクラスタを作成するときに、管理対象ノードのプライマリVNICにセキュリティ属性を追加するには、コンソールを使用して、カスタム作成ワークフローでの明示的に定義された設定によるクラスタの作成を参照してください。

    コンソールを使用して新しい管理対象ノード・プールを作成するときに、管理対象ノードのプライマリVNICにセキュリティ属性を追加するには、管理対象ノード・プールの作成を参照してください。

    コンソールを使用して、既存の管理対象ノード・プール内の管理対象ノードのプライマリVNICのセキュリティ属性を追加または削除するには:

    1. 「クラスタ」リスト・ページで、変更するクラスタの名前を選択します。リスト・ページまたはクラスタの検索に関するヘルプが必要な場合は、クラスタのリストを参照してください。
    2. 「ノード・プール」タブを選択し、変更するノード・プールの名前を選択します。

      「セキュリティ」タブには、ノード・プール内の管理対象ノードのプライマリVNICに対して構成されているセキュリティ属性(存在する場合)が表示されます。

    3. 管理対象ノードのプライマリVNICにセキュリティ属性を追加するには:

      1. 「セキュリティ」タブの「プライマリVNICセキュリティ属性」セクションで、「追加」を選択し、「セキュリティ属性の追加」ダイアログで次を選択します:
        • セキュリティ属性を含むセキュリティ属性ネームスペースを選択します。
        • セキュリティ属性を選択します。
        • セキュリティ属性値を入力します。
      2. ノード・プールのプライマリVNICに複数のセキュリティ属性を追加する場合は、「追加」を選択し、追加のセキュリティ属性(最大5つ)を選択します。
      3. 「セキュリティ属性の追加」を選択します。
    4. ノード・プールのプライマリVNICからセキュリティ属性を削除するには:

      1. 「セキュリティ」タブの「プライマリVNICセキュリティ属性」セクションで、削除するセキュリティ属性の横にある「アクション」メニュー(3つのドット)から「削除」を選択します。
      2. セキュリティ属性を削除することを確認します。

    ノード・プールの「セキュリティ」タブに表示されるセキュリティ属性は、ノード・プールで起動する新しいワーカー・ノードのプライマリVNICに適用されるようになりました。

  • 管理対象ノード・プールを追加するには、oci ce node-pool createコマンドと必要なパラメータを使用します:
    oci ce node-pool create --cluster-id <cluster-ocid> --compartment-id <compartment-ocid> --name <node-pool-name> --node-shape <shape>

    管理対象ノード・プールを更新するには、oci ce node-pool updateコマンドと必要なパラメータを使用します:

    oci ce node-pool update --node-pool-id <node-pool-ocid> [OPTIONS]

    OCI CLIコマンドのフラグおよび変数オプションの完全なリストは、コマンドライン・リファレンスを参照してください。

  • APIの使用およびリクエストの署名の詳細は、REST APIのドキュメントおよびセキュリティ資格証明を参照してください。SDKの詳細は、SDKおよびCLIを参照してください。

    次のAPI操作を使用して、管理対象ノード・プールのプライマリVNICに対してセキュリティ属性を追加または削除します:

管理対象ノードのセカンダリVNICへのセキュリティ属性の追加

管理対象ノード・プール内の管理対象ノードをバックアップするコンピュート・インスタンスのセカンダリVNICにZPRセキュリティ属性を指定できます。これらのセキュリティ属性は、管理対象ノード・プールの作成時、または既存の管理対象ノード・プールの更新時に指定します。OCI VCNネイティブ・ポッド・ネットワーキングCNIプラグインを使用するクラスタでは、セカンダリVNICがポッド・トラフィックに使用されます。これらのセキュリティー属性は、ノードレベルのトラフィックに使用されるプライマリVNIC、またはその他のクラスタ関連リソースには適用されません。

管理対象ノード・プールに複数のセカンダリVNICを定義する場合は、ノード・プール内のすべてのセカンダリVNICに同じセキュリティ属性を指定する必要があります。

セキュリティー属性をセカンダリVNICに割り当てる前に、ワークロードの配置を計画することをお勧めします。Kubernetes Engineはノード・プール・レベルでポッド・セキュリティ属性を適用するため、異なるセキュリティ・プロファイルを必要とするワークロードは異なるノード・プールで実行する必要があります。

管理対象ノード・プールのセキュリティ属性を更新すると、変更は新しいワーカー・ノードにのみ適用されます。既存のワーカー・ノードとそのVNICは更新されません。更新されたセキュリティ属性を既存のワークロードに適用するには、ノード・プールのワーカー・ノードを置換します(ワーカー・ノードの終了および置換を参照)。ブート・ボリュームの置換では、更新されたノード・プール・セキュリティ属性は適用されないことに注意してください。ワーカー・ノードを置き換える必要があります。

  • コンソールを使用して新しいクラスタを作成するときに、管理対象ノードのセカンダリVNICにセキュリティ属性を追加するには、「コンソールを使用して、カスタム作成ワークフローでの明示的に定義された設定によるクラスタの作成」を参照してください。

    コンソールを使用して新しい管理対象ノード・プールを作成するときに、管理対象ノードのセカンダリVNICにセキュリティ属性を追加するには、管理対象ノード・プールの作成を参照してください。

    コンソールを使用して、既存の管理対象ノード・プール内の管理対象ノードのセカンダリVNICのセキュリティ属性を追加または削除するには:

    1. 「クラスタ」リスト・ページで、変更するクラスタの名前を選択します。リスト・ページまたはクラスタの検索に関するヘルプが必要な場合は、クラスタのリストを参照してください。
    2. 「ノード・プール」タブを選択し、変更するノード・プールの名前を選択します。

      「セキュリティ」タブには、ノード・プール内の管理対象ノードのセカンダリVNICに対して構成されているセキュリティ属性(存在する場合)が表示されます。

    3. 管理対象ノードのセカンダリVNICにセキュリティ属性を追加するには:

      1. 「セキュリティ」タブの「セカンダリVNICセキュリティ属性」セクションで、「追加」を選択し、「セキュリティ属性の追加」ダイアログで次を選択します:
        • セキュリティ属性を含むセキュリティ属性ネームスペースを選択します。
        • セキュリティ属性を選択します。
        • セキュリティ属性値を入力します。
      2. ノード・プールのセカンダリVNICに複数のセキュリティ属性を追加する場合は、「追加」を選択し、追加のセキュリティ属性(最大5つ)を選択します。
      3. 「セキュリティ属性の追加」を選択します。
    4. ノード・プールのセカンダリVNICからセキュリティ属性を削除するには:

      1. 「セキュリティ」タブの「セカンダリVNICセキュリティ属性」セクションで、削除するセキュリティ属性の横にある「アクション」メニュー(3つのドット)から「削除」を選択します。
      2. セキュリティ属性を削除することを確認します。

    ノード・プールの「セキュリティ」タブに表示されるセキュリティ属性は、ノード・プールで起動する新しいワーカー・ノードのセカンダリVNICに適用されるようになりました。

  • 管理対象ノード・プールを追加するには、oci ce node-pool createコマンドと必要なパラメータを使用します:
    oci ce node-pool create --cluster-id <cluster-ocid> --compartment-id <compartment-ocid> --name <node-pool-name> --node-shape <shape>

    管理対象ノード・プールを更新するには、oci ce node-pool updateコマンドと必要なパラメータを使用します:

    oci ce node-pool update --node-pool-id <node-pool-ocid> [OPTIONS]

    OCI CLIコマンドのフラグおよび変数オプションの完全なリストは、コマンドライン・リファレンスを参照してください。

  • APIの使用およびリクエストの署名の詳細は、REST APIのドキュメントおよびセキュリティ資格証明を参照してください。SDKの詳細は、SDKおよびCLIを参照してください。

    次のAPI操作を使用して、管理対象ノード・プールのセカンダリVNICに対してセキュリティ属性を追加または削除します:

LoadBalancerタイプのKubernetesサービス用にプロビジョニングされたロード・バランサおよびネットワーク・ロード・バランサへのセキュリティ属性の追加

oci.oraclecloud.com/security-attributesアノテーションを使用して、Kubernetes Engineがロード・バランサおよびLoadBalancerタイプのサービスに対してプロビジョニングするネットワーク・ロード・バランサに追加するZPRセキュリティ属性を指定できます。詳細は、ロード・バランサおよびネットワーク・ロード・バランサのZPRセキュリティ属性の指定を参照してください。

OCIネイティブ・イングレス・コントローラによってプロビジョニングされたロード・バランサへのセキュリティ属性の追加

IngressClassマニフェストでoci-native-ingress.oraclecloud.com/security-attributesアノテーションを使用して、OCIネイティブ・イングレス・コントローラがプロビジョニングするロード・バランサに追加するZPRセキュリティ属性を指定できます。詳細は、Specifying ZPR Security Attributesを参照してください。

CSIボリューム・プラグインによって作成されたファイル・ストレージ・サービスのマウント・ターゲットへのセキュリティ属性の追加

StorageClassマニフェストのsecurityAttributesパラメータを使用して、CSIボリューム・プラグインが作成するファイル・ストレージ・サービスのマウント・ターゲットに追加するZPRセキュリティ属性を指定できます。詳細は、ファイル・ストレージ・サービスでのPVCのプロビジョニングを参照してください。