在AWS上创建kubernetes集群时,使用eksctl和AWS Management Console有什么区别?
喜欢引擎盖下到底发生了什么?
在两种情况下都可以创建集群,但是只有在使用eksctl时,您才能在集群创建后连接到集群。
有什么想法吗?
我正在关注AWS的官方教程。
本教程不起作用,创建了集群,但是您无法连接到该集群。如果您遵循它,那么当您执行第2.3步并尝试执行该命令时,会收到需要登录的错误。
Ref1:https://docs.aws.amazon.com/eks/latest/userguide/getting-started-console.html
但是,遵循使用eksctl的AWS相邻教程的指导,一切正常。
Ref2:https://docs.aws.amazon.com/eks/latest/userguide/getting-started-eksctl.html
只要按照他们告诉您的步骤进行,一个就行了,而另一个却不行:/
1-使用AWS管理控制台
命令
kubectl get svc
输出
error: You must be logged in to the server (Unauthorized)
2-使用eksctl
命令
kubectl get svc
输出
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 6m13s
期望
两个都应该允许我连接到kubernetes集群。
实际
仅当我使用eksctl创建群集时,我才能连接到群集
答案 0 :(得分:0)
深入研究 eksctl 之后,我找到了本教程:
https://eksctl.io/usage/creating-and-managing-clusters/
那里有一节说明如何使用配置文件创建集群。
因此,我将 IAM角色的值和 VPC和子网信息映射到该文件,并创建了集群,最后我可以连接了,没问题。
我可以推断出我的权限和配置正确。
我认为使用eksctl命令时,IAM角色已以某种方式映射到内部组件,并且AWS Management Console部分的文档中缺少此步骤。
我不是100%知道它,但是如果其他人有意见,请与我们分享。
答案 1 :(得分:0)
好的,我解决了。 基本上我的错误是我在〜/ .aws / credentials下配置了另一个IAM用户。