Networking API 概览

Networking API 使用 Kubernetes 自定义资源,并依赖于 Kubernetes 资源模型 (KRM)。

通过使用 kubectl CLI 的 Networking API 在 Google Distributed Cloud (GDC) 气隙环境中创建和管理网络。

服务端点

网络 API 以两种软件包的形式提供,具体取决于可用区级部署或全球级部署。

地区级和全局网络 API 的 API 端点分别如下所示:

  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/networking.gdc.goog/v1
  • https://MANAGEMENT_API_SERVER_ENDPOINT/apis/networking.global.gdc.goog/v1

MANAGEMENT_API_SERVER_ENDPOINT 替换为 Management API 服务器的端点。

发现文档

使用 kubectl proxy --port=8001 命令在本地计算机上打开 API 服务器的代理。然后,您可以通过以下网址访问发现文档:

  • http://127.0.0.1:8001/apis/networking.gdc.goog/v1
  • http://127.0.0.1:8001/apis/networking.global.gdc.goog/v1

入站跨项目流量政策示例

以下是一个 ProjectNetworkPolicy 对象的示例,该对象可让 project-1 项目中的工作负载允许来自 project-2 项目中的工作负载的连接,以及相同流量的返回流量:

apiVersion: networking.gdc.goog/v1
kind: ProjectNetworkPolicy
metadata:
  namespace: project-1
  name: allow-ingress-traffic-from-project-2
spec:
  policyType: Ingress
  subject:
    subjectType: UserWorkload
  ingress:
  - from:
    - projects:
        matchNames:
        - project-2