Ausgehenden Traffic von Arbeitslasten verwalten

Auf dieser Seite werden die Maßnahmen beschrieben, die Sie für die ausgehende Konnektivität für eine VM oder einen Pod in einem Projekt ergreifen müssen, damit Arbeitslasten die Organisation verlassen können. In der Anleitung wird beschrieben, wie Sie Bereitstellungen ein erforderliches Label hinzufügen, um ausgehenden Traffic explizit zu aktivieren und Arbeitslasten die Kommunikation außerhalb der Organisation zu ermöglichen.

Standardmäßig verhindert Google Distributed Cloud (GDC) Air-Gap, dass Arbeitslasten in einem Projekt die Organisation verlassen. Workloads können die Organisation verlassen, wenn Ihr Plattformadministrator den Schutz vor Daten-Exfiltration für das Projekt deaktiviert hat. Zusätzlich zum Deaktivieren des Schutzes vor Datenexfiltration muss der Application Operator (AO) dem Pod-Arbeitslast das Label egress.networking.gke.io/enabled: true hinzufügen, um die Egress-Konnektivität für diesen Pod zu aktivieren. Wenn Sie eine bekannte IP-Adresse für das Projekt zuweisen und verwenden, wird eine Quell-NAT (Network Address Translation) für den ausgehenden Traffic der Organisation durchgeführt.

Sie können die ausgehende Konnektivität von Arbeitslasten in einem Pod oder einer VM verwalten.

Ausgehenden Traffic von Arbeitslasten in einem Pod verwalten

Wenn Sie Arbeitslasten in einem Pod für die Egress-Konnektivität konfigurieren möchten, müssen Sie zuerst dafür sorgen, dass der Schutz vor Datenexfiltration für das Projekt deaktiviert ist. Achten Sie dann darauf, dass dem Pod das Label egress.networking.gke.io/enabled: true hinzugefügt wird. Wenn Sie ein Konstrukt auf höherer Ebene wie Deployment oder Daemonset verwenden, um Gruppen von Pods zu verwalten, müssen Sie das Pod-Label in diesen Spezifikationen konfigurieren.

Im folgenden Beispiel wird gezeigt, wie ein Deployment aus seiner Manifestdatei erstellt wird. Die Beispieldatei enthält den Wert egress.networking.gke.io/enabled: true im Feld labels, um ausgehenden Traffic aus dem Projekt explizit zu aktivieren. Dieses Label wird jedem Pod im Deployment hinzugefügt und ermöglicht es Arbeitslasten in den Pods, die Organisation zu verlassen.

kubectl --kubeconfig USER_CLUSTER_KUBECONFIG \
    apply -f - <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  name: DEPLOYMENT_NAME
spec:
  replicas: NUMBER_OF_REPLICAS
  selector:
    matchLabels:
      run: APP_NAME
  template:
    metadata:
      labels: # The labels given to each pod in the deployment, which are used
              # to manage all pods in the deployment.
        run: APP_NAME
        egress.networking.gke.io/enabled: true
    spec: # The pod specification, which defines how each pod runs in the deployment.
      containers:
      - name: CONTAINER_NAME
        image: CONTAINER_IMAGE
EOF

Ersetzen Sie Folgendes:

  • USER_CLUSTER_KUBECONFIG: Die kubeconfig-Datei für den Nutzercluster, in dem Sie Container-Arbeitslasten bereitstellen.

  • DEPLOYMENT_NAME: Die kubeconfig-Datei für den Nutzercluster, in dem Sie Containerarbeitslasten bereitstellen.

  • APP_NAME: Der Name der Anwendung, die in der Bereitstellung ausgeführt werden soll.

  • NUMBER_OF_REPLICAS: die Anzahl der replizierten Pod-Objekte, die vom Deployment verwaltet werden.

  • CONTAINER_NAME: der Name des Containers.

  • CONTAINER_IMAGE ist der Name des Container-Images. Sie müssen den Container-Registry-Pfad und die Version des Images angeben, z. B. REGISTRY_PATH/hello-app:1.0.

Beispiel:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-app
spec:
  replicas: 3
  selector:
    matchLabels:
      run: my-app
  template:
    metadata:
      labels:
        run: my-app
        egress.networking.gke.io/enabled: true
    spec:
      containers:
      - name: hello-app
        image: REGISTRY_PATH/hello-app:1.0

Ausgehenden Traffic von Arbeitslasten in einer VM verwalten

Wenn Sie Arbeitslasten in einer VM für ausgehende Verbindungen konfigurieren möchten, können Sie die GDC-Konsole für die VM-Konfiguration verwenden oder eine VirtualMachineExternalAccess-Ressource erstellen. Informationen zum Aktivieren einer VM mit externem Zugriff für die Datenübertragung finden Sie im Abschnitt Mit VMs verbinden unter Externen Zugriff aktivieren.