You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何导出AWS中关联指定EKS集群的负载均衡器列表并区分访问类型?

关联EKS集群的负载均衡器列表导出及类型区分方法

一、使用AWS CLI + kubectl获取列表

  • 先配置kubectl关联目标EKS集群:
    aws eks update-kubeconfig --name <你的EKS集群名称>
    
  • 查询集群内所有LoadBalancer类型的Service,提取对应的负载均衡器地址和服务名称:
    kubectl get svc -o jsonpath='{range .items[?(@.spec.type=="LoadBalancer")]}{.status.loadBalancer.ingress[0].hostname}{"\t"}{.metadata.name}{"\n"}'
    
  • 进一步查询每个负载均衡器的访问类型:
    kubectl get svc -o jsonpath='{range .items[?(@.spec.type=="LoadBalancer")]}{.status.loadBalancer.ingress[0].hostname}{"\n"}' | cut -d '.' -f 1 | while read lb_name; do
        aws elbv2 describe-load-balancers --names $lb_name --query 'LoadBalancers[*].{Name:LoadBalancerName, 访问类型:Scheme}'
    done
    
    输出中的访问类型字段,internet-facing代表公网访问,internal代表内网访问。

二、通过AWS控制台手动操作

  • 进入AWS EKS控制台,选中目标集群
  • 切换到资源标签,在服务列表里筛选类型为LoadBalancer的条目
  • 点击负载均衡器的链接跳转到ELB控制台,查看方案字段即可区分公网/内网类型

三、额外提示

  • 若使用AWS Load Balancer Controller创建的ALB/NLB,上述方法同样适用,kubectl查询到的hostname对应ALB/NLB地址,再通过AWS CLI查询其Scheme属性即可
  • 可将CLI输出结果保存到文件,方便后续查看:
    kubectl get svc -o jsonpath='{range .items[?(@.spec.type=="LoadBalancer")]}{.status.loadBalancer.ingress[0].hostname}{"\t"}{.metadata.name}{"\n"}' > eks-linked-lbs.txt
    

内容的提问来源于stack exchange,提问作者Lekost93

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 07:52:13