Herstellen einer Verbindung mit dem Kubernetes-Cluster - Wickr Enterprise

Dieses Handbuch enthält Dokumentation für Wickr Enterprise. Wenn Sie AWS Wickr verwenden, finden Sie weitere Informationen im AWSWickr Administration Guide oder im AWSWickr User Guide.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Herstellen einer Verbindung mit dem Kubernetes-Cluster

Auf die Amazon-EKS-API kann nur über einen Bastion-Host zugegriffen werden, der als Teil der Bereitstellung erstellt wird. Daher müssen alle kubectl Befehle entweder auf dem Bastion-Host selbst ausgeführt oder über den Bastion-Host als Proxy gesendet werden.

Proxyen von Verbindungen über die Bastion

Wenn Sie zum ersten Mal eine Verbindung zum Cluster herstellen, müssen Sie Ihre lokale kubeconfig-Datei mit dem aws eks update-kubeconfig Befehl aktualisieren und dann die proxy-url in Ihrer Konfiguration festlegen. Jedes Mal, wenn Sie eine Verbindung mit dem Cluster herstellen möchten, starten Sie dann eine SSM-Sitzung mit dem Bastion-Host, der für den API-Zugriff an den Proxy weitergeleitet werden soll.

Einmalige Einrichtung

Es gibt einen Ausgabewert für den WickrEks CloudFormation Stack mit einem Namen, der mit beginntWickrEnterpriseConfigCommand. Der Wert enthält den vollständigen Befehl, der zum Generieren der kubectl-Konfiguration für Ihren Cluster erforderlich ist. Diese Ausgabe kann mit dem folgenden Befehl angezeigt werden:

aws cloudformation describe-stacks --stack-name WickrEks \ --query 'Stacks[0].Outputs[?starts_with(OutputKey, `WickrEnterpriseConfigCommand`)].OutputValue' \ --output text

Dies sollte einen Befehl ausgeben, der mit beginntaws eks update-kubeconfig. Führen Sie diesen Befehl aus.

Als Nächstes muss die Kubernetes-Konfiguration so geändert werden, dass Anfragen über den Bastion-Host als Proxy gesendet werden. Dies kann mit den folgenden Befehlen erfolgen:

CLUSTER_ARN=$(aws cloudformation describe-stacks --stack-name WickrEks --query 'Stacks[0].Outputs[?OutputKey==`WickrEnterpriseEksClusterArn`].OutputValue' --output text) kubectl config set "clusters.${CLUSTER_ARN}.proxy-url" http://localhost:8888

Wenn es richtig funktioniert hat, sehen Sie eine Ausgabe wie 'Property "clusters.arn:aws:eks:us-west-2:012345678912:cluster/WickrEnterprise5B8BF472-1234a41c4ec48b7b615c6789d93dcce.proxy-url" set.'

Port zur Bastion weiterleiten

Um eine Verbindung zum Amazon-EKS-Cluster herzustellen, müssen Sie eine SSM-Sitzung starten, um Anforderungen an den Proxy zu portieren, der auf Ihrem Bastion-Host ausgeführt wird. Der Befehl dazu wird als Ausgabe BastionSSMProxyEKSCommand für den WickrEksStack bereitgestellt. Führen Sie den folgenden Befehl aus, um den Ausgabewert anzuzeigen:

aws cloudformation describe-stacks --stack-name WickrEks \ --query 'Stacks[0].Outputs[?OutputKey==`BastionSSMProxyEKSCommand`].OutputValue' \ --output text

Der ausgegebene Befehl beginnt mit aws ssm start-session. Führen Sie diesen Befehl aus, um einen lokalen Proxy zu starten, der auf Port 8888 ausgeführt wird und über den Sie eine Verbindung zum Amazon-EKS-Cluster herstellen können. Wenn die Portweiterleitung korrekt funktioniert hat, sollte die Ausgabe „Warten auf Verbindungen...“ lauten. Lassen Sie diesen Prozess die gesamte Zeit laufen, die Sie für den Zugriff auf den Amazon-EKS-Cluster benötigen.

Wenn alles korrekt eingerichtet ist, können Sie kubectl get nodes in einem anderen Terminal ausführen, um die Worker-Knoten im Amazon-EKS-Cluster aufzulisten:

kubectl get nodes NAME STATUS ROLES AGE VERSION ip-10-0-111-216.ec2.internal Ready none 3d v1.26.4-eks-0a21954 ip-10-0-180-1.ec2.internal Ready none 2d23h v1.26.4-eks-0a21954 ip-10-0-200-102.ec2.internal Ready none 3d v1.26.4-eks-0a21954