Некоторые из моих экземпляров развернуты с кодом в его /etc/rc.local
#!/bin/sh
# Managed by puppet - do not modify
/sbin/route del default
/sbin/route add default gw 11.0.0.254
Вначале все работает нормально, но через несколько минут шлюз изменится на значение по умолчанию (11.0.0.1)
Думаю, это происходит совсем недавно.
Это почему? Как я могу это изменить?
Больше информации:
Сразу после загрузки. Таблица маршрутов экземпляра выглядит так ...
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 11.0.0.254 0.0.0.0 UG 0 0 0 ens5
11.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens5
11.0.0.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens5
Через некоторое время выглядит так .. (и, конечно же, пропал доступ в интернет)
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 11.0.0.1 0.0.0.0 UG 0 0 0 ens5
11.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens5
11.0.0.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens5
Если я изменю таблицу маршрутов вручную. Через некоторое время это выглядит так ...
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 11.0.0.254 0.0.0.0 UG 0 0 0 ens5
0.0.0.0 11.0.0.1 0.0.0.0 UG 100 0 0 ens5
11.0.0.0 0.0.0.0 255.255.255.0 U 0 0 0 ens5
11.0.0.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens5
Доступ к Интернету работает, но мне не нравится это изменение без запроса, и мне не нравится этот ручной ремонт, поскольку эти экземпляры находятся в группе автоматического масштабирования.
Создать новая подсеть в вашем VPC с новым Таблица маршрутов в котором будет запись для 0.0.0.0/0
указывает на 11.0.0.254
(будучи вашим экземпляром NAT).
Затем переместите экземпляры приложения в эту подсеть. У них будет внешний доступ через экземпляр NAT, Load Balancer сможет связаться с ними, и вам не придется сражаться с демоном DHCP по маршрутам.
Подсети бесплатны, никаких дополнительных затрат для вас не будет.
Надеюсь, это поможет :)