Die Networking API verwendet benutzerdefinierte Kubernetes-Ressourcen und basiert auf dem Kubernetes-Ressourcenmodell (Kubernetes Resource Model, KRM).
Sie können die Networking API verwenden, um Netzwerke in Google Distributed Cloud (GDC) mit Air-Gap über die kubectl-Befehlszeile zu erstellen und zu verwalten.
Mit dieser API lassen sich die meisten Netzwerkressourcen in Distributed Cloud verwalten.
Wenn Sie den Load-Balancing für Standardcluster verwalten möchten, verwenden Sie das
Kubernetes Service Objekt vom Typ LoadBalancer direkt im Cluster.
Weitere Informationen finden Sie unter
Interne Load-Balancer konfigurieren und
Externe Load-Balancer konfigurieren.
Dienstendpunkt
Die Networking APIs werden je nach zonenbasierter oder globaler Bereitstellung in zwei Paketen bereitgestellt.
Die API-Endpunkte für die zonenbasierte und globale Networking API sind die folgenden:
https://MANAGEMENT_API_SERVER_ENDPOINT/apis/networking.gdc.goog/v1https://MANAGEMENT_API_SERVER_ENDPOINT/apis/networking.global.gdc.goog/v1
Ersetzen Sie MANAGEMENT_API_SERVER_ENDPOINT durch den Endpunkt des Management API-Servers.
Discovery-Dokument
Verwenden Sie den Befehl kubectl proxy --port=8001, um einen Proxy zum API-Server auf Ihrem lokalen Computer zu öffnen. Von dort aus können Sie über die folgenden URLs auf das Discovery-Dokument zugreifen:
http://127.0.0.1:8001/apis/networking.gdc.goog/v1http://127.0.0.1:8001/apis/networking.global.gdc.goog/v1
Beispiel für eine projektübergreifende Traffic-Richtlinie für eingehenden Traffic
Im Folgenden sehen Sie ein Beispiel für ein ProjectNetworkPolicy-Objekt, mit dem Arbeitslasten im Projekt project-1 Verbindungen von Arbeitslasten im Projekt project-2 sowie den Rückverkehr für dieselben Flows zulassen können:
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