我在专用子网中运行EKS,因此无法创建面向Internet的负载均衡器,但能够创建内部LoadBalancer。
有什么方法可以在公共子网中创建Loadbalancer(可能是手动创建),并指向在私有子网中的EKS中运行的Pod。
我当时正在考虑创建一个负载平衡器链,其中外部负载平衡器将指向内部负载平衡器,但这也是不可能的,因为内部负载平衡器的IP地址是保留IP。
我可以尝试其他方法将流量从互联网路由到pod吗?
答案 0 :(得分:1)
我遇到了同样的问题,这是因为我没有正确标记VPC子网: https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html
我必须将密钥: kubernetes.io/cluster/ {eks-cluster-name} 值: shared 标记添加到VPC
然后,您可以使用类型为LoadBalancer的服务来创建LB
apiVersion: v1
kind: Service
metadata:
name: helloworld
labels:
app: helloworld
spec:
ports:
- port: 80
targetPort: 8080
selector:
app: helloworld
type: LoadBalancer
这在创建服务期间可能会有所帮助:https://blog.giantswarm.io/load-balancer-service-use-cases-on-aws/