AWS EKS kubectl - 在默认命名空间中找不到资源



正在尝试设置 EKS 集群。 调用DescribeCluster operation时出错(访问被拒绝异常(:帐户 xxx 无权使用此服务。此错误来自 CLI,在控制台上,我能够成功构建集群和所有内容。 我以root user身份登录(这只是我的个人帐户(。

它说帐户听起来不像是用户/权限问题? 我是否必须为我的帐户启用此服务?我没有看到任何这样的选择。

此外,如果以用户(而不是root(身份登录 - 我将能够看到之前以root身份创建的所有内容。我现在已经创建了一个用户并分配了管理员和 eks* 权限。当我以用户身份登录时,我检查了这一点- 我可以看到所有内容。

aws cli 是使用根凭据设置的(我认为( - 所以我必须返回并撤消修复所有这些并仅使用此用户。

更新 1
我重做/重新启动了所有内容,包括用户和 awscli 配置 - 只是为了确保。但问题仍然没有得到解决。

有一个手动创建文件的选项 - 最终起作用了。

我能够:kubectl get svc

名称类型 群集 IP 外部 IP 端口年龄 kubernetes ClusterIP 10.100.0.1 443/TCP 48m

KUBECONFIG:I had set the env:KUBECONFIG

$env:KUBECONFIG="C:Userssbaha.kubeconfig-EKS-nginixClstr"
$Env:KUBECONFIG
C:Userssbaha.kubeconfig-EKS-nginixClstr
kubectl config get-contexts
CURRENT   NAME   CLUSTER      AUTHINFO   NAMESPACE
*         aws    kubernetes   aws
kubectl config current-context
aws

我的理解是我应该同时看到aws和我的EKS-nginixClstr上下文,但我只看到aws- 这(也(是一个问题吗?

下一步是创建和添加工作器节点。我在 .yaml 文件中正确更新了节点 arn:kubectl apply -f ~.kubeaws-auth-cm.yaml
configmap/aws-auth configured所以这可能奏效了。

但接下来它失败了:

kubectl get nodes在默认命名空间中找不到资源。

在 AWS 控制台上,NodeGrp 显示 -创建完成。同样在 CLIkubectl get nodes --watch-它甚至不返回

所以接下来必须调试这个- (它永远不会结束(

aws-auth-cm.yaml

apiVersion: v1
kind: ConfigMap
metadata:
name: aws-auth
namespace: kube-system
data:
mapRoles: |
- rolearn: arn:aws:iam::arn:aws:iam::xxxxx:role/Nginix-NodeGrpClstr-NodeInstanceRole-1SK61JHT0JE4
username: system:node:{{EC2PrivateDNSName}}
groups:
- system:bootstrappers
- system:nodes

这个问题与没有正确的 eksctl 版本有关 - 它必须至少为 0.7.0。文档说明了这一点,我知道这一点,但最初我所做的一切都无法超过 0.6.0。您获得它的方法是将 AWS CLI 配置为支持 EKS 的区域。获得 0.7.0 后,此问题将得到解决。
总体而言,要使 EKS 正常工作 - 您必须在控制台和 CLI 上具有相同的用户,并且必须在支持 EKS 的区域上工作,并且具有正确的 eksctl 版本 0.7.0。

相关内容

  • 没有找到相关文章

最新更新