首页 > 解决方案 > 如何从 AWS CLI 获取给定 AWS 负载均衡器的 HostedZoneId?

问题描述

我可以手动找到负载均衡器 URL:

> LOAD_BALANCER_URL=`kubectl describe service leafsheets-django-service-staging --namespace=$K8S_NAMESPACE | grep "${AWS_REGION}.elb.amazonaws.com*" | awk '{print $3}'`
> echo $LOAD_BALANCER_URL

kubectl describe命令的示例输出

> kubectl describe service leafsheets-django-service-staging --namespace=leafsheets-staging
Name:                     leafsheets-django-service-staging
Namespace:                leafsheets-staging
Labels:                   <none>
Annotations:              <none>
Selector:                 pod=leafsheets-staging-django
Type:                     LoadBalancer
IP:                       10.100.13.121
LoadBalancer Ingress:     aa13d515171d045319aaf59e9d08e2a5-1015643832.us-west-2.elb.amazonaws.com
Port:                     http  80/TCP
TargetPort:               8000/TCP
NodePort:                 http  32567/TCP
Endpoints:                192.168.93.189:8000
Port:                     https  443/TCP
TargetPort:               8000/TCP
NodePort:                 https  30041/TCP
Endpoints:                192.168.93.189:8000
Session Affinity:         None
External Traffic Policy:  Cluster
Events:                   <none>

...但是如何找到关联的 HostedZoneId?

我可以对其进行硬编码:

# https://docs.aws.amazon.com/general/latest/gr/elb.html
HOSTED_ZONE_ID=Z1H1FL5HABSF5

...但我更愿意推断它。

标签: aws-cliamazon-elbaws-load-balancer

解决方案


推荐阅读