VM-Zugriff

In diesem Abschnitt wird beschrieben, wie Sie die VM für eingehenden Traffic in Google Distributed Cloud mit Air Gap mithilfe eines externen Load-Balancers öffnen.

VM mit Load-Balancer-Dienst freigeben

Eingehender Traffic wird über einen Dienst vom Typ LoadBalancer an die Linux-VM in Ihrem GDC-Cluster weitergeleitet. Dieser Dienst leitet Traffic von bestimmten Ports an Ihre VM weiter.

Wenn Sie eingehenden Traffic für Ihre Linux-VM aktivieren möchten, fügen Sie in der YAML-Datei, mit der Sie die VM erstellen, das Label ingress.virtualmachines.gpc.gke.io: true hinzu. Dann wird beim Erstellen der VM-Instanz ein LoadBalancer-Dienst für eingehenden Traffic erstellt. Der Dienst wird im selben Namespace wie die VM mit dem Namen VM_NAME-default-ingress erstellt.

VM-Port für eingehenden Traffic öffnen

Sie müssen explizit einen Port auf Ihrer VM öffnen, um eingehenden Traffic zu akzeptieren. Beispiel:

kubectl  patch svc VM_NAME-default-ingress -n NAMESPACE_NAME -p \
  '{"spec":{"ports":[{"protocol":"TCP","port":PORT, "name": "NAME"}]}}'

Ersetzen Sie die folgenden Platzhalter:

  • VM_NAME durch den Namen der VM.
  • NAMESPACE_NAME durch den Namespace für den Dienst.
  • PORT durch den Port, den Sie auf der VM öffnen möchten.
  • NAME durch den Portnamen.

Ausgehender Traffic

Eine VM-Arbeitslast in einem Projekt kann das externe Netzwerk erreichen oder für Dienste in anderen Flotten freigegeben werden.

Ausgehenden Traffic aktivieren (mit EgressNAT)

Aktivieren Sie ein NAT-Gateway für ausgehenden Traffic, um mit vordefinierten IP-Adressen ein nichtflüchtiges deterministisches Routing für ausgehenden Traffic zu ermöglichen. So können Sie spezifischere Firewall- und Routingregeln erstellen.

NetworkPolicy

Sie können die Netzwerkrichtlinie für Containerarbeitslasten auf Projektebene festlegen. Ein Projekt kann sich über mehrere Bare-Metal-Standardnutzercluster erstrecken.

Über SSH eine Verbindung zu einer Linux-VM herstellen

Verwenden Sie die IP-Adresse des Load-Balancer-Dienstes, um über SSH eine Verbindung zu einer Linux-VM herzustellen. Der SSH-Port 22 ist standardmäßig für die VM geöffnet.

IP-Adresse des Load-Balancer-Dienstes abrufen

Die folgende Beispielausgabe zeigt, dass der Load-Balancer-Dienst bereit ist, SSH-Traffic über den TCP-Port 22 weiterzuleiten, wenn die IP-Adresse 10.200.0.102 ist:

kubectl get services VM_NAME-default-ingress -n NAMESPACE_NAME

TYPE          CLUSTER-IP   EXTERNAL-IP    PORT(S)        AGE
LoadBalancer  10.106.6.18  10.200.0.102   22:32443/TCP   11s

Verbindung zur VM herstellen

Verwenden Sie die IP-Adresse des Load-Balancer-Dienstes und Ihren SSH-Schlüssel, um eine Verbindung zu Ihrer VM herzustellen. Sie können beispielsweise von Ihrem Bootstrap-Computer aus eine Verbindung herstellen.

ssh -i /path/to/KEY_NAME ubuntu@10.200.0.102

Dateien an eine VM oder von einer VM übertragen

Für die Übertragung von Dateien an Distributed Cloud-VM-Instanzen stehen je nach Betriebssystem Ihrer Workstation und Betriebssystem der Zielinstanz verschiedene Optionen zur Verfügung.

Dateien auf Linux-VMs übertragen

Stellen Sie eine SSH-Verbindung zu einer VM her und verwenden Sie diese Verbindung, um Dateien auf die VM zu übertragen.

Datei von einer VM übertragen

Sie können auch Dateien und Verzeichnisse von einer VM auf Ihre lokale Workstation kopieren. Verwenden Sie den folgenden Befehl (TBD), um ein Verzeichnis rekursiv von Ihrer VM (Quelle) auf Ihre lokale Workstation (Ziel) zu kopieren.