问题标签 [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 - 我应该如何在 EKS 服务中使用 externalIP?
我试图在 EKS 集群上应用服务externalIPs 功能。
我所做的
我创建了 EKS 集群eksctl
:
我已经打开了所有安全组以确保我没有防火墙问题。ACL 也允许所有流量。我将公共 IP 用于唯一可用的工作节点,并尝试通过简单的服务 + 部署来使用它。这应该只有 1 个部署和 1 个副本集和 1 个 pod 和 nginx。这应该附加到每个人都可以访问的具有外部/公共 IP 的服务。
当我应用它时,一切似乎都很好。我可以将我的app
服务端口转发到 localhost,我可以看到输出 ( kubectl port-forward svc/app 9999:80
-> curl localhost:9999
)。
但问题是我无法通过公共 IP 访问此服务。
想法
对我来说,服务似乎没有连接到节点本身。当我 ssh 到节点并在端口 80 上设置简单的 Web 服务器时,它会立即响应。
我知道我可以使用 NodePort,但就我而言,我最终希望使用固定端口 4000,而 NodePort 只允许我使用 30000-32768 范围内的端口。
问题
我希望能够在低于 30000 的某个端口上通过公共 IP 卷曲我的服务(NodePort 不适用)。如何使其与 EKS 集群上的 Kubernetes 服务外部 IP 一起使用?
编辑我:
仅供参考:我不想使用 LoadBalancer。
kubernetes - 如何有效实施 EKS 集群自动扩展
我在 US-EAST-2 中创建了一个 EKS 托管节点集群,配置如下:
我想使用 Cluster Autoscaling 并一直在查看文档here,但需要一些指导来准确理解如何实现它。
create cluster 命令使用我在上面的配置中指定的大小在 AWS中eksctl
创建了一个 Autoscaling Group。此 ASG 跨越 US-EAST-2 的所有三个可用区。但是,来自 Amazon 的文档建议为每个可用区设置一个 ASG。
我正在寻找的行为是这样的:
- 从两个节点开始,运行一系列应用程序和服务。(目前没有一个是有状态的,但将来可能会改变 - 这就是为什么我认为每个 AZ 一个 ASG 路由实际上是更好的方法)
- 随着需求的增加,Kubernetes 将通过我的部署清单中定义的额外副本水平扩展我的 Pod。
- 当节点组中的可用资源耗尽时,Cluster Autoscaler 会启动其他节点并将它们临时添加到节点组中以支持增加的需求。Pod 被优雅地添加和/或重新平衡,随着需求的下降,额外的节点将被关闭。
我的问题是多方面的...
我是否应该以不同的方式设计集群配置文件以支持每个 AZ 一个 ASG(因此应该拆除我已经创建的基础架构并重新开始)?
这样做是否像为每个 AZ 手动创建新的 ASG 一样简单,然后将每个 ASG 标记为与
eksctl
为我创建的默认 ASG 相同的标签?如果是这样,那么在这样做之后部署 Cluster Autoscaler 应该可以自动检测手动创建的 ASG - 但这是正确的方法吗?
根据我正在寻求的行为实现集群自动缩放的最合适方法是什么?
编辑: 根据下面的评论之一并重新阅读 AWS 的文档,我现在想知道拥有单个托管节点组然后手动创建特定于 AZ 的 ASG 的方法是否错误。
是创建多个托管节点组的更好方法,每个托管节点组都限制在自己的可用区吗?这将产生为每个可用区创建一个 ASG 的效果。
amazon-web-services - 如何限制 EKS 托管节点上的 pod 数量
我正在使用 Cloudformation Script 管理 AWS 上的基础设施。已创建具有托管节点组的 EKS 集群,实例类型为 m5a.16xlarge(64 核,256gb ram)。现在,实例可以拥有的最大 pod 数为 737,这取决于子网中的最大 ENI 和 IP 地址数。我需要限制托管节点组上的 pod 数量,使其不超过特定的自定义计数。我应该怎么做才能做到这一点?
amazon-eks - 使用使用 Fargate 的 EKS - 如何设置知道如何扩展?Fargate 中节点的默认配置文件是什么?
当 EKS 使用eksctl
--fargate 与 Fargate 一起设置时,那里正在做什么?
正在运行多少个节点?节点的值是多少?(内存?cpu?)创建 Pod 时,EKS 如何知道如何扩展?(它怎么知道要运行多少个节点,以及节点的配置?
如何从命令行或 Web 应用程序 UI 查看默认配置文件?
这些似乎是任何人都想提前问的问题,但在 EKS 页面/文档或 Fargate 上,没有指向信息的链接
kubernetes - 在 EKS 中以不受支持的版本创建集群
我想在最近不推荐使用的版本中在 EKS 下创建一个集群,1.15
以测试特定于版本的内容。
我的以下命令失败
有没有一种解决方法,我可以在版本中创建一个集群1.15
。
amazon-web-services - AWS EKS IAM 插件策略
如果可能的话,只是寻找一些澄清..
如果我们看下面cluster.yaml
的 eksctl;
我没有使用它来构建集群,它是使用 Terraform 构建的。但我正在寻找有关如何使用 TF 应用插件策略的说明?它只是使用aws_eks_addon
资源吗?
那么它会看起来像:
我在吠叫正确的树吗?
TIA
amazon-cloudformation - eskctl 是否支持将 CloudFormation 的角色 ARN 设置为 Assume
我们想在使用eksctl
.
如同:
这支持吗?
amazon-web-services - eksctl create cluster 中的“错误:--instance-types 仅对托管节点组 (--managed) 有效”
当我尝试使用以下命令创建集群时,我收到此错误“错误:--instance-types 仅对托管节点组 (--managed) 有效”:
eksctl create cluster --name mycluster --nodes-min=4 --nodes-max=4 --nodes=4 --managed --instance-types=t3a.xlarge --ssh-access --ssh-public-key=mykey.pub --region us-east-2 --with-oidc
我不知道为什么它要求 --managed 选项,因为它已经提供了。
amazon-web-services - 当我们创建 AWS eks 集群时,管理工作节点的主节点在哪里?
我想创建一个部署,所以需要访问主节点,以便我可以登录到该节点并创建部署文件。但是,使用 eksctl 工具创建集群时,只有节点可用。
amazon-eks - 如何参数化 eksctl 的配置文件?
我有以下配置文件(为简洁而编辑):
这将用于创建具有eksctl create cluster -f config.yml
.
我想避免硬编码集群名称(即FOO-CLUSTER
在这种情况下)并将其提取到参数(例如环境变量或附加文件或 CLI 参数),以便我以后可以使用相同的文件来创建BAR-CLUSTER
,FEE-CLUSTER
等等。
可能吗?