问题标签 [google-cloud-load-balancer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
121 浏览

google-cloud-platform - 将“非托管实例组”添加到 HTTPS 负载均衡器时响应缓慢

HTTPS负载均衡器代理适用于托管实例组,但不适用于非托管实例组。我们在后端添加了几个非托管实例组,并指示代理将特定流量定向到非托管组,例如https://test.example.com到非托管实例组。测试完成后,我们可以停止非托管实例组中的实例。但是,无法停止托管组中的单个 VM 实例。

每件事都按预期工作。但是,浏览器需要 10-15 秒(并非总是但大部分时间)来显示页面并随机收到 500 错误。似乎非托管组中的实例已停止,或者负载均衡器进行了一些需要很长时间才能响应的内务处理。

任何解决响应时间的帮助或建议将不胜感激。通过避免负载均衡器按预期工作直接访问 Web 服务器,但不能使用 https,因为只有代理服务器具有 SSL 证书。

后端服务配置

0 投票
0 回答
72 浏览

haproxy - HAProxy 将请求从 HAProxy 负载均衡器重定向到另一个负载均衡器

我有一个仅暴露于端口 443 的 GCP 外部负载均衡器,并且我有暴露于许多端口的 HAProxy 负载均衡器。如何将来自 HAProxy 负载均衡器的流量重定向到另一个负载均衡器,这样我就不必指定后端。

0 投票
1 回答
204 浏览

kubernetes - Theia IDE websocket 在 Ingress 后面的 Kubernetes 中服务时每 30 秒断开一次

我在谷歌云上配置了一个带有托管证书的 kubernetes 入口。然后我将 theia/theia-full docker 映像作为一个 pod 和一个连接入口和 pod 的 kubernetes 服务。

我的浏览器中 theia 页面的初始加载工作正常,所有插件都在后端启动。之后,浏览器每 30 秒向 wss://mytheiadomain 发出另一个 websocket 请求。theia 后端日志

并且所有插件断开连接并再次初始化。(有时我什至没有收到此错误消息,插件只是断开连接并初始化)

如果我切断浏览器的 wifi 连接,这不会发生!所以浏览器的 wss 请求似乎触发了重启。如果我在普通 docker 上本地运行 theia-full,则不会每 30 秒断开一次。

这是我在搜索了几个小时后追踪到的错误。任何提示将不胜感激。我可以提供更多的日志输出和我的配置文件。

0 投票
0 回答
231 浏览

google-cloud-platform - 带有后端存储桶的 GCP 负载均衡器为 .js 和 .css 文件返回“内容类​​型:应用程序/八位字节流”

我正在过渡到无服务器,并尝试在 GCP 存储桶中提供所有 html/jpeg/png/css/js 文件,前面是 GCP 外部 HTTP/HTTPS 负载平衡器。

HTML 和图像作为其预期的内容类型提供,但 CSS 和 JS 文件显示了这一点:

对于 Chrome,这似乎是一个大问题,因为它会拒绝加载带有此错误的 CSS:

资源解释为样式表,但使用 MIME 类型 application/octet-stream 传输:

我必须通过更改我的 HTML 来解决它:

对此

有没有办法让 GCP 负载均衡器(或后端存储桶)为 JS 和 CSS 文件设置正确的 MIME 类型?

0 投票
0 回答
210 浏览

google-cloud-platform - 通过负载均衡器在谷歌云虚拟机上重写主机

我正在尝试在一个 grpc 服务上的谷歌云上设置负载均衡器,这是所需的结果:

external-> url grpc.dev.foo.com-> load_balancer->internal VM启用 TLS 主机白名单grpc.foo.com

所以我需要负载均衡器来重写流量grpc.dev.foo.com/*grpc.foo.com/*尊重 TLS 白名单。

在主机和路径规则(URL映射)下,似乎有一个特定的选项,命名为host rewrite我写的地方grpc.foo.com(否/

主机重写

但经过很多不同的试验后,URL 永远不会正确重写,导致 502failed_to_connect_to_backend错误(由于 host != tls whitelist 时服务没有响应)。

这个host rewritegcloud 字段有 0 个文档,是我应该在这里使用的字段吗?我应该在里面写一些特定的值吗?我应该为这种情况使用其他工具吗?

感谢您的回答(第一次管理操作和使用 gcloud,我可能错过了一些概念)

0 投票
2 回答
809 浏览

google-cloud-platform - 如何设置谷歌云负载均衡器以利用清漆中的 http2 支持?

在 Google Cloud 上,我将 VM 设置为 varnish 6(社区)来管理 http 和 http2(没有 SSL/TLS)。

我还在端口 443 上设置了挂接并使用公共 IP 工作正常。

目标(编辑)

现在我想把这个虚拟机放在负载均衡器后面,正如@Frank 所指出的那样,我的目标是用google-cloud-load-balancer服务替换hitch 。

我的配置

我使用虚拟机在配置中打开三个端口创建了一个非托管实例组: 在此处输入图像描述

我的“端点协议”设置为 HTTP/2 的负载均衡器配置是: 在此处输入图像描述

但是这个设置给了我一个 502 错误代码:

端点设置为 HTTP

如果我将 Endpoing 协议更改为 HTTP: 在此处输入图像描述

它可以工作,但请求协议是 HTTP/1.1,如下所示varnishlog

0 投票
1 回答
1091 浏览

kubernetes - 通过 Helm 在 GKE 中部署 Kong API Gateway 并使用 Google 托管的证书

我们目前正在尝试在 GKE 集群中部署 Kong,目标是将证书管理委托给 Google 的负载均衡器(应在此处进行 SSL 终止)。

我们面临的问题是,所有 Google 的文档都专注于部署一些服务并使用他们独有的负载均衡器,该负载均衡器直接连接到声明的 Ingress。

当前工作的配置(没有Kong)如下:

但是,当我们将 for 更改gcekongingress.class 时,所有其他注释都不会继续工作。这是意料之中的,因为现在 Kong 的代理是负载均衡器,应该是告诉 Google 的 LB 如何生成自己的代理。

根据此文档,将这些注释添加到 Kong 代理服务应该相当简单。

基于这一系列事件:

  • K8s Ingress 创建 Kong 代理服务
  • Kong代理服务生成谷歌的LB

自定义 LB 的配置应该在 Kong 的服务中进行(据我了解):

但是,对于 GCP,根据文档只有几个,并且没有一个具有期望的效果(无法设置要使用的证书,定义要创建的 LB 类型等)

考虑到所有因素,有什么方法可以实现我们的主要目标:

“通过 GKE 内部的 Helm 部署 Kong API 网关,并将 SSL 终止委托给自定义 Google 的 LB。”

0 投票
1 回答
221 浏览

django - 无法使用外部 IP 和暴露端口访问使用负载均衡器部署在 GKE 上的 Django

基本上我有这个 django 应用程序,它的 Pod 和负载均衡器服务在 GKE 中成功运行。但我无法通过负载均衡器中的外部 IP 访问应用程序。

首先这是我的 pod 和负载均衡器状态:

这是我的dockerfile:

这是我的 yml 文件:

任何人都可以提供一些解决方案或指导,我将不胜感激!我整天都在寻找解决方案和测试......

0 投票
1 回答
246 浏览

google-cloud-platform - 谷歌云负载均衡器 + GKE 入口

我已经配置了一个谷歌云负载均衡器,如下所示:

  • GFE(前端)监听:443,仅 https
  • 主机匹配+路径匹配开启/*
  • 单个 NEG(网络端点组)作为负载均衡器的后端服务

我不明白的是,为什么将实例组作为后端服务链接到此负载均衡器(见下文): 在此处输入图像描述

实例组后端服务链接到为我的 Kubernetes 集群配置的 VM 实例。此外,如果我从此负载均衡器中删除实例组后端服务,my-app仍然可以通过全局 IP 地址访问。但是,几分钟后,实例组后端服务又回来了,并再次链接到负载均衡器。

在文档或任何示例中使用带有 Google Cloud Load Balancer 的网络端点组时,我似乎找不到任何关于此行为的信息。

如果您知道实例组后端服务为什么被链接,以及为什么被移除后又返回,请回复。

0 投票
1 回答
532 浏览

google-kubernetes-engine - GKE 大使 http -> https 重定向、健康检查问题

我正在关注本教程https://www.getambassador.io/docs/latest/topics/running/ambassador-with-gke/并且我在 http -> https 重定向方面遇到了严重问题。

  • 我无法在 GKE 上编辑健康检查端口,默认配置为服务端口,无法更改
  • 如果我创建新的运行状况检查,在应用后Host insecure.action: Redirect,后端的 hc 会恢复为默认值。如果默认 hc 被删除,它会被重新创建。如果我以某种方式强制我的自定义 hc,它不会再次工作,在 pod 日志中我看到这个"GET /ambassador/v0/check_ready HTTP/1.1" 301
  • 如果我insecure.action: Redirect 在主机 http -> https 设置几秒钟,然后 LB 运行状况检查会导致一切崩溃