问题标签 [amazon-eks]

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.

0 投票
1 回答
3001 浏览

amazon-web-services - AWS 推荐的 Kubernetes 中的 POD 大小 - EKS

我是 EKS 的新手,正在寻找 AWS 在 EKS 中推荐的每个节点的 pod 数量和节点的 EC2 实例的大小,以获得更好的性能和 HA?我在这里找到了 Kubernetes.io 设置的限制。但是我想知道当我们使用 EKS 运行集群时,AWS 的思想流派是什么?你也可以分享你的经验。

这不是为了轮询,而是为了了解标准用法。

0 投票
2 回答
11040 浏览

amazon-web-services - AWS EKS“无权执行:iam:CreateServiceLinkedRole”

我遵循了启动 EKS 集群的文档,该集群说要使用某些策略创建服务角色。

https://docs.aws.amazon.com/eks/latest/userguide/eks-ug.pdf

当我创建一个基本的 hello world 应用程序时,它会引发 AccessDenied 错误。

添加的两个策略(AmazonEKSClusterPolicy、AmazonEKSServicePolicy)不允许执行 iam:CreateServiceLinkedRole 操作。我们是否应该将其添加到指南中定义的策略之外?或者这是否应该包含在 EKS 政策中?

0 投票
3 回答
4907 浏览

kubernetes - 将 RBAC 视为系统的 EKS Kubernetes 用户:匿名

我一直在关注这篇文章来创建对我的 kubernetes 集群(在 Amazon EKS 上运行)的用户访问。我确实创建了密钥 csr,批准了请求并为用户下载了证书。然后我确实使用密钥和 crt 创建了一个 kubeconfig 文件。当我使用这个 kubeconfig 运行 kubectl 时,我被识别为system:anonymous.

我希望用户被识别但被拒绝访问。

我确实为该用户创建了一个带有admin(也尝试过cluster-admin)角色的 ClusterRoleBinding ,但这对于这一步并不重要。我不确定如何进一步调试 1)是否创建了用户或 2)如果我错过了一些配置。

任何帮助表示赞赏!

0 投票
1 回答
153 浏览

kubernetes - 应为 Kubernetes AWS 中的 Traefik 提供哪个主机 URL?

我正在尝试在 AWS 上运行的 Kubernetes 集群中设置 Treafik。我在host-url理解ingress-service. 他们页面中的教程很好,但认为在 minikube 中运行时您只有一个节点,因此您将将该 IP 映射到您将在 Treafik 中使用的主机。

对于 AWS 中的 Kubernetes,我不知道应该映射哪个 IP。主网址?当我有多个主人时会发生什么?

0 投票
2 回答
1841 浏览

kubernetes - 为什么我的 Kubernetes 服务有时只能在 EKS 上运行?

在某些情况下,我们的服务在尝试访问它们时没有得到响应。例如,Chrome 显示 ERR_EMPTY_RESPONSE,偶尔我们也会遇到其他错误,比如 408,我相当肯定它是从 ELB 返回的,而不是我们的应用程序本身。

经过长时间的调查,包括通过 ssh 连接到节点本身、试验负载均衡器等等,我们仍然不确定问题实际存在于哪一层:要么是 Kubernetes 本身,要么是来自 Amazon EKS(ELB 或否则)

  • 似乎只有节点的实例(数据)端口是有问题的端口。这些问题似乎时断时续,这让我们相信这在我们的 kubernetes manifest 或 docker 配置中并不明显,而是在底层基础设施中的其他东西。有时服务和吊舱会工作,但回来早上它就会坏掉。这使我们相信问题源于 Kubernetes 中 pod 的重新分配,可能是由 AWS 中的某些东西(负载均衡器更改、自动缩放组更改等)或 Kubernetes 本身在出于其他原因重新分配 pod 时触发的。
  • 在我们看到的所有情况下,健康检查端口都继续正常工作,这就是为什么 kubernetes 和 aws 都认为一切正常并且不报告任何故障的原因。
  • 我们已经看到一个节点上的一些 pod 可以工作,而另一些则不能在同一个节点上工作。
  • 我们已经验证 kube-proxy 正在运行,并且 iptables-save 输出在两个正在工作的 Pod 之间是“相同的”。(这意味着所有不是唯一的东西,比如 ip 地址和端口都是相同的,并且与它们应该相互关联的内容一致)。(我们使用这些说明来帮助这些说明:https ://kubernetes.io/docs/tasks/debug-application-cluster/debug-service/#is-the-kube-proxy-working
  • 通过节点本身的 ssh,对于失败的 pod,我们可以通过预期的所有可能的 ip/端口访问该 pod(即应用程序本身)。
    • 10. 节点本身的地址,在实例数据端口上。
    • 10. pod(docker容器)在应用端口上的地址。
    • 172.地址的???在应用程序端口上(我们不确定该 ip 是什么,或者 ip 路由如何到达它,因为它与 docker0 接口的 172 地址是不同的子网)。
  • 从另一个节点上的 ssh,对于失败的 pod,我们无法在任何端口 (ERR_EMPTY_RESPONSE) 上访问失败的 pod。这似乎与服务/负载均衡器的行为相同。

还有什么可能导致这样的行为?

0 投票
2 回答
597 浏览

tags - terraform AWS EKS 创建的所有 aws 资源的用户自定义标签

出于账单跟踪目的,鉴于我们在 AWS 上有其他解决方案,我们被要求为 Terraform AWS EKS 创建的所有可标记资源添加自定义标签,例如 Tag key = "platform" tag value = "k8s"。实际上是一个静态标签,表明它是一个 kubernetes 资源。

我们正在按照本指南对我们的解决方案进行建模:

https://github.com/terraform-providers/terraform-provider-aws/tree/master/examples/eks-getting-started

尽管 terraform 上 eks 的 aws 提供程序上的许多资源似乎都没有提供自定义标签的选项。

有什么方法可以让我们全面获得自定义标签?

我仍在阅读 AWS EKS 和 Terraform AWS EKS 指南,但无法帮助回答我的问题。

任何方向都受到高度赞赏!

格雷格

0 投票
2 回答
2506 浏览

amazon-web-services - AWS EKS Terraform - 未找到标记“KubernetesCluster”或“kubernetes.io/cluster/...”

我按照“ https://www.terraform.io/docs/providers/aws/guides/eks-getting-started.html ”使用terraform 创建了一个EKS 集群。

我能够成功创建配置映射,但无法获取节点详细信息 -

服务详情——

Kubectl 登录节点 -

AWS 入门文档未提及任何标签相关信息“ https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html ”。

过了一会儿,我发现我错过了将“kubernetes.io/cluster/*”之类的资源标签放到我的网络资源中。

我的网络资源是预先创建的,我使用远程状态来获取所需的详细信息。我相信我可以向它添加标签或创建一个新的 VPC 环境。

有没有其他方法可以在不添加标签或配置新资源的情况下解决这个问题?

0 投票
1 回答
561 浏览

kubernetes - Kubernetes 连接

我有一个运行着 Java 应用程序的 POD。这个 Java 应用程序与本地的 MySql 对话。MySql 接受来自 192.* ip 的连接我让 pod 在 EKS 工作节点上运行,IP - 192 .. 我能够从工作节点远程登录 Mysql。当 pod 启动时,Java 应用程序尝试使用 POD Ip(这是一些随机的 172.ip)连接到 Mysql,但由于 MySQL 连接错误而失败。我该如何解决这个问题?

0 投票
2 回答
4492 浏览

amazon-web-services - 将外部 IP 分配给 Kubernetes 节点 (AWS EKS)

我有一个 UDP 服务,我需要从 AWS EKS 集群向 Internet 公开。AWS 负载均衡器(经典或 NLB)不做 UDP,所以我想使用NodePortRoute53 的多值来让 UDP 循环负载均衡到我的节点。

我在 AWS EKS 上的节点没有ExternalIP分配给它们。虽然运行节点的 EC2 实例具有公共 IP,但在创建集群时这些 IP 尚未分配给节点。

如何将 EC2 公共 IP 分配给我的 k8s 节点?

为了方便起见,我目前正在针对 HTTP 服务进行测试,这是我的测试服务的样子:

对于此示例,我的curl请求从未命中节点上运行的 HTTP 服务。我的预感是因为节点没有externalIPs。

0 投票
2 回答
4922 浏览

amazon-web-services - custom tag on EBS volume provisioned dynamically by Kubernetes

I'm dynamically provisioning a EBS Volume (Kubernetes on AWS through EKS) through PersistentVolumeClaim with a StorageClass

PVC below

And pod that uses the volume:

I need to tag the EBS volume with a custom tag.

Documentation mentions nothing about tagging for provisioner aws-ebs, storageclass or PVC. I've spent hours to try to add a tag to the dynamically provided EBS volume but not luck.

Is creating custom tags for EBS a possibility in this scenario and if it is how can it be achieved?

Thank you,

Greg