このページでは、Google Distributed Cloud(GDC)エアギャップでプロジェクト内トラフィック ネットワーク ポリシーを構成する手順について説明します。
プロジェクト ネットワーク ポリシーは、上り(内向き)ルールまたは下り(外向き)ルールのいずれかを定義します。プロジェクト内、プロジェクト間、外部 IP アドレスへの通信を許可するポリシーを定義できます。
単一ゾーン内でプロジェクト内トラフィックの適用が必要な場合は、ワークロード レベルのネットワーク ポリシーを作成するをご覧ください。
始める前に
プロジェクト内トラフィック ネットワーク ポリシーを構成するには、次のものが必要です。
- 必要な ID とアクセスロール。詳細については、事前定義ロールとアクセスを準備するをご覧ください。
- 既存のプロジェクト。詳細については、プロジェクトを作成するをご覧ください。
プロジェクト内トラフィック ポリシーを作成する
プロジェクト内のトラフィックの場合、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
: プロジェクト内のアウトバウンド トラフィックを許可するプロジェクトの名前。