Azure SNAT 耗尽 - 我怎么知道它何时发生?

Posted

技术标签:

【中文标题】Azure SNAT 耗尽 - 我怎么知道它何时发生?【英文标题】:Azure SNAT exhaustion - how do I know when it is happening? 【发布时间】:2019-05-06 04:59:38 【问题描述】:

我们认为 Cloud Foundry 中的一组虚拟机存在 Azure SNAT 耗尽问题。这些机器没有通过负载平衡器。 我已经通过这个文件: https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-outbound-connections#snatexhaust

如果可能,我想了解如何在无需向 Microsoft 开具支持请求的情况下了解我们是否遇到了 SNAT 耗尽问题。修复或防止 SNAT 问题不是我要问的。

谢谢,

【问题讨论】:

【参考方案1】:

对于Azure WebApp,单击诊断和解决问题,然后在搜索框中输入snat,然后单击SNAT Port Exhaustion 作为搜索结果出现的项目。

【讨论】:

【参考方案2】:

我刚通过 Microsoft Azure 支持打完电话。目前,我们作为客户,不开票是无法看到 SNAT 耗尽的。

【讨论】:

【参考方案3】:

我已向 Microsoft 提出增强请求以启用对其进行监控:https://feedback.azure.com/forums/231545-diagnostics-and-monitoring/suggestions/36274288-apim-load-balancer-metrics-to-view-snat-metrics-st

如果这听起来像是一个好的解决方案,请务必投票!

【讨论】:

嗨!欢迎来到***,感谢您的回答,请务必查看***.com/help/how-to-answer您可能会发现一些有用的提示【参考方案4】:

答案可能已经过时。使用 Azure 标准 LoadBalancer,您将能够看到以下 SNAT 指标。

    SNAT 连接数 分配的 SNAT 端口 使用的 SNAT 端口

这不适用于 Azure 基本负载均衡器,它需要支持票证才能获取有关 SNATS 的信息。

希望对你有帮助。

【讨论】:

【参考方案5】:

如果可能的话,我想知道如何知道我们是否击中 SNAT 用尽问题

当 SNAT 端口资源耗尽时,出站流失败。您可能会观察到出站连接失败支持人员会告知您正在耗尽 SNAT 端口。

出站连接有一个4-minute idle timeout。此超时不可调整。由于使用的算法不同,UDP SNAT 端口的消耗通常比 TCP SNAT 端口快得多。因此,您可以通过在 VM 上使用 Microsoft Network Monitor 或在 Azure 门户上使用 Network Watcher for packet capture 捕获网络包来检查超时流。

如果您对我的回复有任何不清楚的地方,请随时告诉我。

【讨论】:

谢谢,这是很好的信息,但仅仅看到失败的连接并不能确认 SNAT 耗尽。看到失败的连接表明我们遇到了问题,但事实证明,如果没有 Microsoft 的票证,无法确认 SNAT 耗尽。

以上是关于Azure SNAT 耗尽 - 我怎么知道它何时发生?的主要内容,如果未能解决你的问题,请参考以下文章

Azure (Java) BlobClient.uploadWithResponse 何时准备好上传?

Azure 触发的 Webjob - 检测 webjob 何时停止

在我的 viewDidAppear 中,我怎么知道它何时被孩子解开?

我怎么知道iPad上的分割窗拖动手柄何时出现?

ECSlidingViewController - 你怎么知道菜单何时显示?

Azure *** 网关的监控