プロジェクト内のトラフィック ネットワーク ポリシーを作成する

このページでは、Google Distributed Cloud(GDC)エアギャップでプロジェクト内トラフィック ネットワーク ポリシーを構成する手順について説明します。

プロジェクト ネットワーク ポリシーは、上り(内向き)ルールまたは下り(外向き)ルールのいずれかを定義します。プロジェクト内、プロジェクト間、外部 IP アドレスへの通信を許可するポリシーを定義できます。

単一ゾーン内でプロジェクト内トラフィックの適用が必要な場合は、ワークロード レベルのネットワーク ポリシーを作成するをご覧ください。

始める前に

プロジェクト内トラフィック ネットワーク ポリシーを構成するには、次のものが必要です。

プロジェクト内トラフィック ポリシーを作成する

プロジェクト内のトラフィックの場合、GDC はデフォルトで、事前定義されたプロジェクト ネットワーク ポリシー(プロジェクト内ポリシー)を各プロジェクトに適用します。デフォルトでは、プロジェクト Namespace のワークロードは、外部リソースに何も公開せずに相互に通信できます。

デフォルトでは下り(外向き)ポリシーがないため、すべてのプロジェクト内トラフィックでアウトバウンド トラフィックが許可されます。ただし、単一の下り(外向き)ポリシーを設定すると、ポリシーで指定されたトラフィックのみが許可されます。

上り(内向き)プロジェクト内トラフィック ネットワーク ポリシー

プロジェクトを作成すると、プロジェクト内の通信を可能にするデフォルトのベース ProjectNetworkPolicy リソースが暗黙的に作成されます。このポリシーでは、同じプロジェクト内の他のワークロードからのインバウンド トラフィックが許可されます。

デフォルト ポリシーは削除できますが、削除すると、プロジェクト内のすべてのサービスとワークロードでプロジェクト内の通信が拒否されます。

グローバルな下り(外向き)プロジェクト内トラフィック ネットワーク ポリシーを作成する

このプロジェクト ネットワーク ポリシーをユニバース内のすべてのゾーンに適用するグローバル ポリシーを指定します。GDC ユニバースのグローバル リソースの詳細については、マルチゾーンの概要をご覧ください。

データ漏洩防止を無効にして、外部リソースへのアクセスを禁止するなど、プロジェクトに ProjectNetworkPolicy 下り(外向き)ポリシーを適用する場合は、次の必須ポリシーを使用して、プロジェクト内のアウトバウンド トラフィックを許可します。

kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
  namespace: PROJECT
  name: allow-intra-project-outbound-traffic
spec:
  policyType: Egress
  egress:
  - to:
    - projectSelector:
        projects:
          matchNames:
          - PROJECT
EOF

次のように置き換えます。

  • GLOBAL_API_SERVER: グローバル API サーバーの kubeconfig パス。詳細については、グローバル API サーバーとゾーン API サーバーをご覧ください。API サーバーの kubeconfig ファイルをまだ生成していない場合は、ログインで詳細を確認してください。
  • PROJECT: プロジェクト内のアウトバウンド トラフィックを許可するプロジェクトの名前。