Für Debugging Zwecke kann es erforderlich sein, sich auf den Kubernetes VMs in Tanzu (Supervisor Control Plane oder TKC) anzumelden. Hier die Anleitung dazu.
Auf dem vCenter kann das Script /usr/lib/vmware-wcp/decryptK8Pwd.py
ausgeführt werden, um den root-Zugang zu erhalten.
root@vcenter [ ~ ]# /usr/lib/vmware-wcp/decryptK8Pwd.py Read key from file Connected to PSQL Cluster: domain-c21:fe2aba8c-9b3c-4226-835f-11f781e81d47 IP: 10.10.10.51 PWD: :qUf:1fJ]-/rDH=P
Mit diesem Passwort (aus der letzten Zeile) kann man sich nun per SSH auf den Supervisor Control Plane VMs anmelden.
Zunächst meldet ihr euch am Supervisor Cluster an:
kubectl vsphere login --server 10.10.20.51 -u administrator@vsphere.local --insecure-skip-tls-verify
Anschließend wechselt ihr den Kontext, zu Supervisor Cluster:
kubectl config use-context 10.10.10.51
Mit folgendem Befehl bekommt ihr eine Übersicht aller Secrets aus einem Namespace:
daniel@lab:~$ kubectl -n sns-prod get secrets NAME TYPE DATA AGE [...] tkc-prod-ssh kubernetes.io/ssh-auth 1 22h tkc-prod-ssh-password Opaque 1 22h tkc-prod-ssh-password-hashed Opaque 1 22h [...]
Aus der Liste der Secrets wird nun der Eintrag tkc-prod-ssh-password abgefragt:
daniel@lab:~$ kubectl -n sns-prod get secrets tkc-prod-ssh-password -o yaml apiVersion: v1 data: ssh-passwordkey: bTRpbWwxb09Odlo3N1FkSldGYklBUnBUWldlOUxGYUduakpYWG53SW9JOD0= kind: Secret metadata: creationTimestamp: "2023-10-25T08:33:38Z" name: tkc-prod-ssh-password namespace: sns-prod ownerReferences: - apiVersion: run.tanzu.vmware.com/v1alpha3 kind: TanzuKubernetesCluster name: tkc-prod uid: e0902fd0-7593-443e-b219-331e6e64deba resourceVersion: "618588" uid: aed5bd12-fdb3-4c1e-8c01-9505cd37641a type: Opaque
Das Value des Keys ssh-passwordkey beinhaltet das Passwort des root-Users, liegt aber base64 kodiert vor. Zum dekodieren:
student06@sl-019989:~$ echo "bTRpbWwxb09Odlo3N1FkSldGYklBUnBUWldlOUxGYUduakpYWG53SW9JOD0=" | base64 -d m4iml1oONvZ77QdJWFbIARpTZWe9LFaGnjJXXnwIoI8=
Mit dem ausgegebenen Passwort ist nun auch der Login an den TKC VMs möglich.