In VKS NSX-VPC environments, the official troubleshooting procedure may fail due to some networking issues that prevent container image downloads.
For troubleshooting purposes, this KB provides an alternative method to SSH into target VKS nodes using the Avi Load Balancer.
vSphere Kubernetes Service in NSX-VPC
Verify that the health status of the created Virtual Service is Green.
SSH to the target VIP. This sample tried to connect the VKS node in the VPC.
# Jumpserver
VSPHERE_NS=vsphere-ns-1 # vSphere Namespace
VKS_CLUSTER=test-1 # VKS Cluster name
AVI_VS_VIP=192.168.x.x # Virtual Service Address
# Switch to the target vsphere namespace
kubectl config use-context <TARGET VSPHERE_NAMESPACE>
# Generate a SSH key
kubectl -n "${VSPHERE_NS}" get secret "${VKS_CLUSTER}-ssh" -o jsonpath='{.data.ssh-privatekey}' | base64 -d > vks_ssh_key
chmod 600 vks_ssh_key
# SSH to the target vks cluster node
ssh -i vks_ssh_key vmware-system-user@"${AVI_VS_VIP}"
Once no longer needed, delete the Virtual Service.