istio-ingressgateway LoadBalancer 在 AWS EKS 中显示“Pending”

问题描述

我安装了一个私有 EKS 集群,其中连接的子网是私有子网。我的要求是“安装 Istio 的私有 EKS”,并创建多个微服务并在 vpc 中公开它们。 为了在 VPC 中公开它们,我预计“istio-ingressgateway”会创建一个内部 ALB,但它显示“待定”

istio-ingressgateway   LoadBalancer   1xx.x0x.xx.2xx     <pending> 

我需要使用“NodePort”在不同端口内安装多个微服务并通过网关公开它们。

在这方面请求任何帮助或查看。

谢谢!

解决方法

您有 2 个选项,可以使用 ALB 入口控制器并创建内部入口对象并添加注释:

alb.ingress.kubernetes.io/scheme: "internal"

或者创建一个 LoadBalancer 服务来创建一个 ELB。将这些注释添加到服务中:

service.beta.kubernetes.io/aws-load-balancer-internal:在服务上使用,表示我们需要内部 ELB。

service.beta.kubernetes.io/aws-load-balancer-security-groups:用于指定要添加到 ELB 创建的安全组。这将取代之前分配给 ELB 的所有其他安全组。

例如

enter image description here

此外,您需要在 VPC 子网中使用这些标签:

Key: kubernetes.io/role/internal-elb
Value: 1

对于您的情况,请选择选项 2。