cou*_*lix 5 cdn gcloud google-kubernetes-engine
我有一个特定的用例,我似乎无法解决.
一个典型的gcloud设置:
一个K8S集群
一个gcloud存储桶
一个gcloud负载均衡器
我设法让我的域名https://cdn.foobar.com/uploads/指向谷歌存储后端没有任何问题:我可以访问文件.它的后端服务失败了.
CDN当HTTP请求命中它时,我希望它充当缓存,例如https://cdn.foobar.com/assets/x.jpg,如果它没有资产的副本,它应该查询其他域https://foobar.com/assets/x.jpg.
我明白这就是负载平衡器backend-service的用途.(对?)
在backend-service所指向的实例组K8S簇的,并且需要一个端口.我guessed需要允许防火墙公开Nodeport我的web应用程序服务,以便loadbalancer能够查询它.
健康检查失败.
后端服务指向k8s群集的实例组,并且需要一些端口(默认80?)80失败.我guessed需要允许防火墙公开Nodeport我的web应用程序服务的32231 ,以便loadbalancer能够查询它.502仍然失败了.
?> kubectl describe svc
Name: backoffice-service
Namespace: default
Labels: app=backoffice
Selector: app=backoffice
Type: NodePort
IP: 10.7.xxx.xxx
Port: http 80/TCP
NodePort: http 32231/TCP
Endpoints: 10.4.x.x:8500,10.4.x.x:8500
Session Affinity: None
No events.
我此时已经没想完了.任何正确方向的提示都将非常感激.
当将服务部署为“ NodePort ”类型时,您将在每个节点的 IP 上公开该服务,但外部无法访问该服务,因此您需要将服务公开为“ LoadBalancer”
由于您希望使用 HTTP(s) 负载均衡器,因此我建议使用 Kubernetes Ingress 资源。此资源将负责配置 HTTP(s) 负载均衡器和您的服务正在使用的所需端口,以及指定端口上的运行状况检查。
由于您要保护您的应用程序,因此您需要配置一个秘密对象来保护 Ingress。
此示例将帮助您开始使用 TLS 终止的 Ingress。
| 归档时间: |
|
| 查看次数: |
388 次 |
| 最近记录: |