Nep*_*oxx 3 load-balancing kubernetes google-kubernetes-engine
我尝试按照以下教程进行操作:https : //cloud.google.com/container-engine/docs/tutorials/http-balancer
一切似乎都在进行,直到最后做
kubectl describe ingress basic-ingress
返回
Name: basic-ingress
Namespace: default
Address: {hidden_external_ip}
Default backend: nginx:80 ({hidden_internal_ip}:80)
Rules:
Host Path Backends
---- ---- --------
* * nginx:80 ({hidden_internal_ip}:80)
Annotations:
backends: {"k8s-be-00000--0000000000000000":"Unknown"}
forwarding-rule: k8s-fw-default-basic-ingress--0000000000000000
target-proxy: k8s-tp-default-basic-ingress--0000000000000000
url-map: k8s-um-default-basic-ingress--0000000000000000
Events:
FirstSeen LastSeen Count From SubobjectPath Type Reason Message
--------- -------- ----- ---- ------------- -- ------ ------ -------
1m 1m 1 {loadbalancer-controller } Normal ADD default/basic-ingress
23s 23s 1 {loadbalancer-controller } Normal CREATE ip: {hidden_external_ip}
Run Code Online (Sandbox Code Playgroud)
请注意,后端行以“unknown”结尾
此外,卷曲外部 IP 会返回以下内容:
<html><head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>502 Server Error</title>
</head>
<body text=#000000 bgcolor=#ffffff>
<h1>Error: Server Error</h1>
<h2>The server encountered a temporary error and could not complete your request.<p>Please try again in 30 seconds.</h2>
<h2></h2>
</body></html>
Run Code Online (Sandbox Code Playgroud)
知道什么会导致这样的问题吗?
我想出了两件事:
负载均衡器会进行健康检查/(AFAIK 中没有记录),因此您必须确保您的后端在该路径上返回 200。
在创建负载平衡器和它“变得活跃”(大约 10 分钟左右)之间存在明显的延迟。当它这样做时,行:backends: {"k8s-be-00000--0000000000000000":"Unknown"}将变为:backends: {"k8s-be-00000--0000000000000000":"Healthy"}或backends: {"k8s-be-00000--0000000000000000":"Unhealthy"}。这种延迟是问题中链接的教程不起作用的原因(它确实应该在那里记录......)
| 归档时间: |
|
| 查看次数: |
5413 次 |
| 最近记录: |