创建允许所有流量的网络政策

本页面介绍了如何在 Google Distributed Cloud (GDC) 空气隔离环境中配置允许所有流量的网络政策。

项目级网络政策定义入站规则或出站规则。您可以定义允许在项目内、项目之间以及与外部 IP 地址进行通信的政策。

准备工作

如需配置允许所有流量的网络政策,您必须具备以下条件:

创建允许所有流量的政策

此政策允许来自任何来源(包括其他项目和外部 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 服务器生成 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 服务器生成 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 服务器生成 kubeconfig 文件,请参阅登录了解详情。
  • PROJECT:您要允许所有项目流量的项目的名称。