У меня есть 4 сервера за балансировщиком нагрузки, но только на одном из них работает определенная служба. Я хочу, чтобы три из них пересылали запросы четвертому в зависимости от порта. Итак, в настоящее время все 4 работают с nginx на порту 80, но только на одном из них запущена необходимая служба на порту 7070.
Все 4 экземпляра amazon EC2 работают под управлением CentOS 5 за эластичным балансировщиком нагрузки amazon. Я настроил балансировщик нагрузки для перенаправления порта 7070 на все машины. Мне нужны серверы 1,2 и 3 для пересылки запросов с порта 7070 через порт 7070 на сервере 4 (на котором запущена служба).
Я попробовал несколько существующих вопросов / ответов здесь, на sf, но по какой-то причине я мгновенно потерял соединение с моими серверами и был вынужден перезагрузиться; видя, как на этих серверах работают живые сервисы, я внезапно забеспокоился о том, чтобы попытаться применить подход "удачи и промахи"!
Итак, чтобы было ясно, серверы 1, 2 и 3 ничего не запускают на порту 7070, но сервер 4 работает. Ни один из них не использует другой тип переадресации портов, поэтому IP-таблицы в настоящее время не настроены.
Спасибо.
Что касается того, почему это не сработало для вас, исходя из предыдущих инструкций, я предполагаю, что iptables заблокировал все по умолчанию. Если вы следовали существующему набору инструкций с этого сайта (скажи, этот), вероятно, в них также не было инструкций по открытию необходимых портов. Вам понадобится 22 для SSH, 80 для вашего веб-сервера и, возможно, другие.
Разумное руководство: https://help.ubuntu.com/community/IptablesHowTo
Обратите внимание на эту команду, которая гарантирует, что установленные сеансы (например, текущий сеанс SSH) будут продолжать работать, даже если вы заблокируете себя:
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
Поскольку вы используете EC2, я бы рекомендовал для тестирования загрузить 5-й экземпляр вне производственного набора с балансировкой нагрузки. Иногда настройка разделения разработки и производства является сложной или дорогой, но не с EC2. Шесть центов окупятся, если вы что-нибудь сломаете.
Обратите внимание, что перезагрузка стерла ваши правила тестирования; как только у вас будет что-то настроенное, что вы протестировали и одобрили, обязательно используйте iptables-save
.