Verbindung zum Kubernetes-Cluster herstellen - Wickr Enterprise

Dieses Handbuch enthält Dokumentation für Wickr Enterprise. Wenn Sie AWS Wickr verwenden, finden Sie weitere Informationen im AWS Wickr Administration Guide oder im AWS Wickr 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.

Verbindung zum Kubernetes-Cluster herstellen

Auf die Amazon EKS-API kann nur über einen Bastion-Host zugegriffen werden, der im Rahmen 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 weitergeleitet werden.

Proxyverbindungen ü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 in Ihrer Konfiguration festlegen. proxy-url Dann starten Sie jedes Mal, wenn Sie eine Verbindung zum Cluster herstellen möchten, eine SSM-Sitzung mit dem Bastion-Host, um eine Portweiterleitung zum Proxy für den API-Zugriff durchzuführen.

Einmalige Einrichtung

Auf dem WickrEks CloudFormation Stack befindet sich ein Ausgabewert 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 sie Proxy-Anfragen über den Bastion-Host sendet. 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 weiter zur Bastion

Um eine Verbindung zum Amazon EKS-Cluster herzustellen, müssen Sie eine SSM-Sitzung starten, um Anfragen an den Proxy weiterzuleiten, der auf Ihrem Bastion-Host ausgeführt wird. Der Befehl dazu wird als Ausgabe BastionSSMProxyEKSCommand auf dem WickrEks Stack 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 Befehl, den es ausgibt, beginnt mitaws ssm start-session. Führen Sie diesen Befehl aus, um einen lokalen Proxy zu starten, der auf Port 8888 läuft und über den Sie eine Verbindung zum Amazon EKS-Cluster herstellen können. Wenn die Portweiterleitung korrekt funktioniert hat, sollte in der Ausgabe „Warten auf Verbindungen...“ stehen. Lassen Sie diesen Prozess so lange laufen, wie Sie für den Zugriff auf den Amazon EKS-Cluster benötigen.

Wenn alles korrekt eingerichtet ist, können Sie es 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