このページでは、Google Distributed Cloud(GDC)エアギャップで全トラフィックを許可するネットワーク ポリシーを構成する手順について説明します。
プロジェクト ネットワーク ポリシーは、上り(内向き)ルールまたは下り(外向き)ルールのいずれかを定義します。プロジェクト内、プロジェクト間、外部 IP アドレスとの通信を許可するポリシーを定義できます。
始める前に
すべてのトラフィックを許可するネットワーク ポリシーを構成するには、次のものが必要です。
- 必要な ID とアクセスロール。詳細については、事前定義ロールとアクセスを準備するをご覧ください。
- 既存のプロジェクト。詳細については、プロジェクトを作成するをご覧ください。
すべてのトラフィックを許可するトラフィック ポリシーを作成する
このポリシーでは、他のプロジェクトや外部 IP アドレスなど、任意の送信元との間のトラフィックを許可します。
すべての上り(内向き)トラフィックを許可する
任意の送信元からプロジェクト内のすべてのワークロードへのすべての上りトラフィックを許可するには、次のポリシーを作成します。
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
namespace: PROJECT
name: allow-all-ingress
spec:
policyType: Ingress
ingress:
- {}
EOF
すべての下り(外向き)トラフィックを許可する
プロジェクト内のすべてのワークロードから任意の宛先へのすべての送信トラフィックを許可するには、次のポリシーを作成します。
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
namespace: PROJECT
name: allow-all-egress
spec:
policyType: Egress
egress:
- {}
EOF
次のように置き換えます。
GLOBAL_API_SERVER
: グローバル API サーバーの kubeconfig パス。詳細については、グローバル API サーバーとゾーン API サーバーをご覧ください。API サーバーの kubeconfig ファイルをまだ生成していない場合は、ログインで詳細を確認してください。PROJECT
: すべてのトラフィックを許可するプロジェクトの名前。
すべての外部トラフィックを許可するトラフィック ポリシーを作成する
このポリシーでは、組織外の IP アドレスとの間のトラフィックが許可されます。
すべての外部上り(内向き)トラフィックを許可する
外部 IP アドレスからのすべての受信トラフィックをプロジェクト内のすべてのワークロードに許可するには、次のポリシーを作成します。
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
namespace: PROJECT
name: allow-all-external-ingress
spec:
policyType: Ingress
ingress:
- from:
- ipBlock:
cidr: 0.0.0.0/0
EOF
すべての外部下り(外向き)トラフィックを許可する
プロジェクト内のすべてのワークロードから外部 IP アドレスへのすべての送信トラフィックを許可するには、次のポリシーを作成します。
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
namespace: PROJECT
name: allow-all-external-egress
spec:
policyType: Egress
egress:
- to:
- ipBlock:
cidr: 0.0.0.0/0
EOF
次のように置き換えます。
GLOBAL_API_SERVER
: グローバル API サーバーの kubeconfig パス。詳細については、グローバル API サーバーとゾーン API サーバーをご覧ください。API サーバーの kubeconfig ファイルをまだ生成していない場合は、ログインで詳細を確認してください。PROJECT
: すべての外部トラフィックを許可するプロジェクトの名前。
すべてのプロジェクトを許可するトラフィック ポリシーを作成する
このポリシーでは、組織内のすべてのプロジェクトとの間のトラフィックが許可されます。
すべてのプロジェクトの上り(内向き)トラフィックを許可する
すべてのプロジェクトからプロジェクト内のすべてのワークロードへの上り(内向き)トラフィックを許可するには、次のポリシーを作成します。
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
namespace: PROJECT
name: allow-all-projects-ingress
spec:
policyType: Ingress
ingress:
- from:
- projectSelector: {}
EOF
すべてのプロジェクトの下り(外向き)トラフィックを許可する
プロジェクト内のすべてのワークロードからすべてのプロジェクトへのアウトバウンド トラフィックを許可するには、次のポリシーを作成します。
kubectl --kubeconfig GLOBAL_API_SERVER apply -f - <<EOF
apiVersion: networking.global.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
namespace: PROJECT
name: allow-all-projects-egress
spec:
policyType: Egress
egress:
- to:
- projectSelector: {}
EOF
次のように置き換えます。
GLOBAL_API_SERVER
: グローバル API サーバーの kubeconfig パス。詳細については、グローバル API サーバーとゾーン API サーバーをご覧ください。API サーバーの kubeconfig ファイルをまだ生成していない場合は、ログインで詳細を確認してください。PROJECT
: すべてのプロジェクトのトラフィックを許可するプロジェクトの名前。