问题标签 [eksctl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - 使用 k8s/eks 信息播种新机器的最佳方法
假设我们在 Amazon EKS 上有几个集群。我们有一个新用户或新机器,需要在 .kube/config 中填充最新的集群信息。
是否有一些简单的方法可以从 EKS 上的集群中获取上下文信息并将信息放入 .kube/config 文件中?就像是:
所以经过一些网络调查后,我听说:
我试过了,我得到了这个:
$ aws eks update-kubeconfig 用法:aws [options] [ ...] [parameters] 要查看帮助文本,您可以运行:
aws 帮助 aws 帮助 aws 帮助
aws:错误:参数 --name 是必需的
我认为它只会更新所有集群,但事实并非如此。所以我放了集群名称/ARN,如下所示:
但后来我得到:
嗯,这有点愚蠢那些集群名称存在..所以我现在该怎么办
ssh - 尝试使用 eksctl 和 ssh-access 创建 eks 集群
在使用 EKSCTL 创建 eks 集群时,它会抛出类似的错误error decoding SSH public key
pem文件的权限是400
我正在执行的命令
eksctl create cluster --name=thirdekscluster --ssh-access --ssh-public-key=mysshkey.pem --nodegroup-name=standard-workers --node-type=t3.medium --nodes=3 --nodes-min=1 --nodes-max=4 --node-ami=auto
错误:
amazon-eks - 连接到 AWS 上的 kubernetes 仅在通过 eksctl 创建集群时有效
问题
在 aws 上创建 kubernetes 集群时,使用 eksctl 和 AWS 管理控制台有什么区别?
就像幕后真正发生的事情一样?
在这两种情况下,都会创建集群,但只有在使用 eksctl 时,您才能在集群创建后连接到集群。
有什么想法吗?
如何复制
我正在关注 AWS 的官方教程。
本教程不起作用,集群已创建,但您无法连接到它。如果您按照它进行操作,那么当您进入步骤 2.3 并尝试该命令时,您会收到一个需要登录的错误。
参考 1:https ://docs.aws.amazon.com/eks/latest/userguide/getting-started-console.html
但是,按照使用 eksctl 的 AWS 相邻教程的指导,一切正常。
参考 2:https ://docs.aws.amazon.com/eks/latest/userguide/getting-started-eksctl.html
只需按照他们告诉您的步骤操作,一个有效,另一个无效:/
如何测试
1- 使用 AWS 管理控制台
命令
输出
2- 使用 eksctl
命令
输出
预期产出
预期的
两者都应该允许我连接到 kubernetes 集群。
实际的
如果我使用 eksctl 创建集群,我只能连接到集群
amazon-web-services - `eksctl delete cluster` `cannot delete orphan ELB Security Groups` 资源有一个依赖对象
我创建了一个 EKS 集群,我掌舵安装了一些东西,现在我想把它吹走,重新创建,然后再试一次。似乎有一个无法删除的孤儿ENI + SG,我不明白为什么。
aws ec2 delete-security-group --group-id "sg-yyy"
调用 DeleteSecurityGroup 操作时发生错误(DependencyViolation):资源 sg-yyy 有一个依赖对象
我可以找到一个引用此安全组的网络接口:
如果我尝试删除它,我会得到
aws ec2 delete-network-interface --network-interface-id eni-xxx
调用 DeleteNetworkInterface 操作时发生错误 (InvalidParameterValue):网络接口“eni-xxx”当前正在使用中。
如果我做:
然后grep eni-xxx *.json
and grep sg-yyy *.json
,我得到三个结果:两个实体结果本身和一个从 eni-xxx 到 sg-yyy 的引用。也没有 EC2 实例在引用...我不知道如何解决这个问题。
仅供参考,我没有用这个 EKS 集群做任何自定义 AWS 的东西。没有自定义网络或 AWS 命令。我只是希望创建和删除/重新创建测试集群,并试图解决这个阻塞错误。
kubernetes - 使用 eksctl 部署 EKS 集群后无法获取集群资源
我正在尝试使用 eksctl 部署 Kubernetes 集群,
集群已创建,但我发现我有权限问题,我无法从我的控制平面服务器访问 Kubernetes 资源。这是我得到的错误:
我已经使用 eksctl 的配置文件部署了集群:
serviceRoleARN: " arn:aws:iam::444444444444:role/Prod-Builder-Role"从 AWS 的角度来看具有所有需要的权限,我看到我需要更改 aws-auth config-map 但我没有t 有权访问配置映射。
任何帮助都会被批准。
kubernetes - eksctl 卡在等待节点加入集群
使用eksctl
AWS EKS 创建 Kubernetes 集群时,该过程卡住等待节点加入集群:
将显示该消息,没有任何其他日志,直到该过程最终超时。看起来在幕后,新创建的节点无法与 Kubernetes 集群通信
kubernetes - Kops 和 Eksctl 有什么区别?
我已经搜索了互联网,但我没有找到明确的答案。
Kops 用于生产级集群,并且与供应商无关,我明白了,但与 Eksctl 相比有什么区别?
此外,发现大多数文章已有一年多的历史,并且随着 K8s 生态系统移动的速度,它可能已经过时了。
amazon-ec2 - 自动伸缩组无法分配 Spot 实例
我有一个 eks 集群,其节点组基于具有以下配置的混合实例分发启动模板:
在将自动缩放从 0 缩放到 1 时,集群自动缩放器遇到了以下问题:
似乎请求的是现货 p3.2xlarge,而不是请求 p2.xlarge 的按需实例(即使 p2.xlarge 的按需价格 0.9 低于现货价格 0.918对于 p3.2xlarge)。我希望分配一个按需 p2.xlarge 实例,而不是请求一个 p3.2xlarge 现场实例。是因为我配置了on_demand_percentage_above_base_capacity: 0
吗?
更一般地说,我希望能够配置集群以获取 p2.xlarge 的现场实例,并且在不可能的情况下,按需请求。实现我想要的功能的最佳配置是什么?
on_demand_percentage_above_base_capacity 的配置是否严格执行?如果 on_demand_percentage_above_base_capacity 设置为 1 并且我的第一个实例是按需实例,我接下来的几个扩展请求是否会被迫仅产生点实例,或者它更像是有指导意义的权重(例如,如果没有可用点,它仍然会回退到按需而不是未能满足请求)?
kubernetes - 使用 OIDC 的 Kubernetes 服务帐户角色
我正在尝试将部署到 EKS 中同一工作节点的 2 个 pod 关联到不同服务帐户的功能。以下是步骤
- 每个服务帐户都与不同的角色相关联,一个可以访问 SQS,另一个则不能访问。
- 使用 eksutil 将 OIDC 提供程序与集群相关联,并在 kubernetes 中创建了带有服务帐户的 iamserviceaccount,并使用附加的访问 SQS 的策略创建了角色(由 eksctl create iamserviceaccount 提供的带有 IAM 角色的服务帐户的隐式注释)。
但是,当我尝试启动具有与具有 SQS 访问权限的角色绑定的服务帐户的 pod 时,我的 SQS 访问被拒绝,但是如果我将 SQS 权限添加到工作节点实例角色,它工作正常。
我是否遗漏了任何步骤,我的理解是否正确?