我在 GKE 中部署了一个应用程序(比如 app1),在现有集群中使用 Jenkins 和另一个应用程序(比如 app2)提供服务、部署和证书设置。另一个应用程序的部署方式与新应用程序相同,带有证书(以及静态 IP 和 DNS 条目)。
Jenkins 没有暴露给外部 IP,所以我曾经在云控制台中使用端口转发选项,然后使用 Web 预览 - 这会创建一个 apppot URL,它允许我登录到 Web 管理员。
部署 app2 后发生了一些奇怪的事情。我使用 webpreview 按钮对其进行了测试,并且可以访问它。一切都很好,它可以通过 HTTPS 和所有的新 URL 访问。但在那之后,Jenkins 的网络预览就不再工作了。相反,我总是会被重定向到 app2。
我不知道为什么,所以我从 app2 中删除了所有内容,现在我遇到了一些非常奇怪的情况:
- 在我执行大部分操作的(Chrome)浏览器中,我仍然可以在 DNS 中的 FQDN 和 apppot 链接(https://8080-dot-1234567-dot-devshell.appspot )上访问(损坏的)应用程序.com/即使在我重新启动后,清除缓存并注销 google 帐户(甚至删除了 statis IP) - 端口转发操作有效并提供上述链接(带有其他数字)
- 在运行 Ubuntu 的同一台笔记本电脑上的另一个(Chromium)浏览器中,portford 操作有效,但是当单击浏览器中的链接时,它不会生成另一个 appot url,并且失败并显示 500 错误屏幕
在阅读了一下之后,我知道有一些代理用于进行转发,我希望代理会“挂起”一些方式,最重要的是,集群中似乎有一些应用程序遗留下来,实际上不应该在那里
我目前有基本支持,因此没有资格获得技术支持。我找不到手动访问 apppot 代理的方法,也没有发现负载均衡器或我知道的任何其他可能导致此问题的东西。
如果我在第二个浏览器的云 shell 中运行 portfoward,我可以在暴露的端口上卷曲到 localhost 并获取 Jenkins,因此该部分似乎可以工作,但 Web 预览则不能。
我该如何解决这个问题(意味着回到为 Jenkins 工作的 Web 预览并摆脱应用程序遗留问题)?