客户端与 k8s 群集之间的连接问题 [TCP-reset-by-server]



上周,我们已将整个网络基础设施迁移到新设备上。我们还将Fortigate 200D更换为两款新的Palo Alto 850。

我们按照本指南在办公室到 Azure 网关之间创建了一个新的 IPSec: https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000Cm6WCAS

我们设法通过新的 IPSec 访问 Azure 中的所有开发环境,但我们面临着从 k8s 节点下载文件的问题。

例如: 我在k8s上托管了TeamCity。当我从我的 TeamCity 节点下载工件时,2-3 分钟后,我在 chrome 中收到"失败 - 网络错误",然后下载立即停止 - 在防火墙上,我看到会话是由服务器"tcp-rst-from-server"进行的。

我与帕洛阿尔托工程师和 Azure 工程师一起对帕洛阿尔托和 Azure 之间的 IPSec 进行故障排除,我们在帕洛阿尔托上找不到任何错误的配置。

我在 Azure 下使用 IIS 创建了一个新的 Windows 实例,并将一个大文件上传到服务器,以便我可以从 k8s 和普通实例下载同时性。

所以 2 分钟后,我在 k8s URL 上获得了 TCP-rst-from 服务器,但直接服务器仍在下载,没有掉线。

此外,我们这边没有看到任何水滴。 因此,我们在整个流程中所做的唯一更改是将防火墙更改为其他供应商。

有人有猜测吗?

谢谢大家!

恐怕你的测试可能不太可靠(如果怀疑与网络相关的问题,例如 NIC),因为新创建的 VM 和 AKS 群集不确定在同一虚拟网络中。

无需创建新的虚拟机,而是重用现有的工作节点,并通过 NodePort 服务公开 TeamCity。这将允许你消除客户端和 Web 服务器 (IIS) 之间的任何可能的代理服务器(如果 AKS 环境中存在任何代理服务器)。

值得添加有关AKS群集设置的任何详细信息(正在使用Azure CNI?),以及现在如何通过NGINX入口控制器或直接在POD的个人IP地址上访问它来公开TeamCity应用程序的主要内容?

相关内容

最新更新