【发布时间】:2021-06-23 16:28:52
【问题描述】:
所以我已经建立了一个 AWS EKS 集群(使用 fargate),并打算将它用于 gitlab CI/CD 集成
然后尝试根据this doc设置基域
helm repo add nginx-stable https://helm.nginx.com/stable
helm repo update
helm install nginx-ingress nginx-stable/nginx-ingress
kubectl get service nginx-ingress-nginx-ingress -ojson | jq -r '.status.loadBalancer.ingress[].ip' 总是返回null,即使等待很长时间
基本上我需要一个 loadBalancer IP 来在 gitlab 中设置基域。
读到我需要将服务类型设置为 loadBalancer,所以重试
helm install nginx-ingress nginx-stable/nginx-ingress --set controller.service.type=LoadBalancer
同样的结果
kubectl get service nginx-ingress-nginx-ingress -ojson 的结果包括
{
"apiVersion": "v1",
"kind": "Service",
"metadata": {
"annotations": {
"meta.helm.sh/release-name": "nginx-ingress",
"meta.helm.sh/release-namespace": "default"
},
"creationTimestamp": "2021-03-26T19:49:02Z",
"finalizers": [
"service.kubernetes.io/load-balancer-cleanup"
],
"labels": {
"app.kubernetes.io/instance": "nginx-ingress",
"app.kubernetes.io/managed-by": "Helm",
"app.kubernetes.io/name": "nginx-ingress-nginx-ingress",
"helm.sh/chart": "nginx-ingress-0.8.1"
},
.
.
.
.
"status": {
"loadBalancer": {
"ingress": [
{
"hostname": "<xyz-key>.ap-southeast-1.elb.amazonaws.com"
}
]
}
}
}
任何关于如何获取负载平衡器 IP 地址的帮助将不胜感激
【问题讨论】:
-
您看到的主机名是创建的负载均衡器的 DNS 名称。这就是 AWS 用于负载均衡器的格式。在这种情况下,您不需要 IP。
-
运行命令
kubectl get service nginx-ingress-nginx-ingress -ojson | jq -r '.status.loadBalancer.ingress[]'将返回相同的主机名。
标签: nginx kubernetes kubernetes-helm amazon-eks nginx-ingress