我正在进行EKS/Kubectl的实验室设置,在完成集群构建后,我运行以下命令:
> kubectl get node
And I get the following error:
Unable to connect to the server: getting credentials: exec: exit status 2
此外,我确信这是一个配置问题,
kubectl version
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
aws help
aws <command> help
aws <command> <subcommand> help
aws: error: argument operation: Invalid choice, valid choices are:
create-cluster | delete-cluster
describe-cluster | describe-update
list-clusters | list-updates
update-cluster-config | update-cluster-version
update-kubeconfig | wait
help
Client Version: version.Info{Major:"1", Minor:"17", GitVersion:"v1.17.1", GitCommit:"d224476cd0730baca2b6e357d144171ed74192d6", GitTreeState:"clean", BuildDate:"2020-01-14T21:04:32Z", GoVersion:"go1.13.5", Compiler:"gc", Platform:"darwin/amd64"}
Unable to connect to the server: getting credentials: exec: exit status 2
请建议故障排除的后续步骤。
9条答案
按热度按时间i7uaboj41#
是否已准备好kubectl配置文件?
通常,我们将其放在
~/.kube/config
下,该文件包括集群端点、证书、上下文、管理员用户等。进一步阅读本文档:https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
yvfmudvl2#
您可以检查您的~/.kube/config文件吗?
假设您已使用minikube启动本地集群,如果您的配置可用,则不会收到服务器错误。
示例配置文件
zphenhs43#
您需要更新/重新创建您的本地kubeconfig。在我的例子中,我删除了整个
~/.kube/config
,并遵循了以下教程:https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
1rhkuytd4#
对于我来说,运行kubectl get nodes或kubectl cluster-info会出现以下错误。
我执行了以下操作来解决此问题。
1.删除了
~/.kube/
中的所有内容。在我的例子中,它是一个windows机器,所以它的C:\Users\nis. kube。这里nis是我登录的用户名。1.按如下所示运行get credentials命令。
最后请注意
--admin
。如果没有它,它会给我同样的错误。现在以上两个命令都起作用了。
参考:https://blog.baeke.info/2021/06/03/a-quick-look-at-azure-kubelogin/
b91juud35#
确保已安装AWS CLI。
https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
8ehkhllq6#
我也遇到了同样的问题,问题是在我的.aws/credentials文件中有多个用户,而在EKS集群上拥有权限的用户(admin_test)不是默认用户。因此,在我的示例中,我使用环境变量在CLI中将“admin_test”用户设置为默认用户:
之后,我使用以下命令检查默认用户:
最后,我能够使用 kubectl get nodes 命令获取节点。
参考:https://docs.aws.amazon.com/eks/latest/userguide/create-kubeconfig.html
tzcvj98z7#
在EKS中,可以使用以下命令检索kubectl凭据:
您可以使用以下命令检索群集名称:
cgh8pdjw8#
删除和添加
~/.aws/credentials
文件为我解决了这个问题。1wnzp6jl9#
请删除存在于中该高速缓存文件夹
~/.aws/客户端/缓存