When you connect to an Elastic Kubernetes Service (EKS) cluster using IAM and an SSO provider, the ~/.kube/config file will use aws-iam-authenticator in the command resulting in the following error:
$ ./k8sviz.sh
...
getting credentials: exec: executable aws-iam-authenticator not found
However, this is not enough for my host's kube config to be used - it needs cached credentials from the .kube directory, in addition to the ~/.kube/config file. So I changed the docker run command to mount the config directory in its entirety:
Similar to issue #49 , but for AWS EKS.
When you connect to an Elastic Kubernetes Service (EKS) cluster using IAM and an SSO provider, the ~/.kube/config file will use aws-iam-authenticator in the command resulting in the following error:
I added these commands to the Dockerfile locally, referencing the AWS instructions here: https://docs.aws.amazon.com/eks/latest/userguide/install-aws-iam-authenticator.html
However, this is not enough for my host's kube config to be used - it needs cached credentials from the .kube directory, in addition to the
~/.kube/config
file. So I changed the docker run command to mount the config directory in its entirety:After this, I am successfully able to run k8sviz from my local machine!