我在 AWS VPC 内运行自己的 NAT 实例。我想确保 NAT 实例不会成为瓶颈,为此我想设定何时扩展到辅助 NAT(如果有的话)的预期。
我明白那个实例类型(如果这很重要的话,目前是 m1.medium)是这方面的一个重要方面,但我想知道如何检查 NAT 实例是否开始达到其最大值,以及如果其中一些机器使用不同的 NAT 实例,我是否可以为 VPC 中的机器实现更好的吞吐量。
它是通过一个非常简单的 iptables 指令进行 NAT 的,如下所示:
$ iptables --table nat --list
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
MASQUERADE all -- 10.0.0.0/16 anywhere
答案1
有两个方面可能会成为瓶颈:CPU 和带宽。监控 CPU 应该很简单,并且很容易判断何时达到极限。带宽应该很容易监控,但很难判断何时达到极限,因为 EC2 不保证一定数量的网络带宽。您可以进行一些带宽测试并从中推断出极限。
无论如何,网络问题都会以 TCP 重传的形式显示在客户端上。监控所有客户端上的 TCP 重传会告诉您何时出现问题,但不一定知道问题出在您的 NAT 实例上还是其他方面。