Проблемы при переключении IP и MAC адресов
У меня есть два Ubuntu-сервера, каждый из которых имеет две карты Ethernet. Я пытаюсь переключиться с одного на другой для обеспечения высокой доступности. К сожалению, при запросе arp я всегда получаю MAC-адрес первой карты (eth0), а не второй карты (eth1), чей IP-адрес был назначен динамически. Что я могу сделать?
Пример:
Сервер 1:
Eth0
- MAC: 00: 11: 11: 11: 11: 11
- IP: 192.168.0.1
Eth1
- MAC: 02: 33: 33: 33: 33: 33
- IP: 192.168.0.3
Сервер 2:
Eth0
- MAC: 00: 22: 22: 22: 22: 22
- IP: 192.168.0.2
Eth1
- вниз (идет вверх с MAC и IP от server1 eth1, когда server1 выходит из строя)
Когда я выполню arp -a 192.168.0.3
команда с машины Windows, результат 00:11:11:11:11:11 (eth0)
и не 02:33:33:33:33:33 (eth1)
2 ответа
То, что вы пытаетесь сделать, не невозможно, но и не оптимально...
Еще в XX веке мы делали именно то, что вы пытаетесь сделать сейчас, но сейчас, в XXI веке, мы используем соединение, которое дает вам и надежность, и более высокую пропускную способность, когда обе карты работают.
Так что забудьте о 2 IP-адресах на 2 NICS, перейдите на 1 IP-адрес на обеих NICS и воспользуйтесь удвоенной пропускной способностью!
:-)
То, что вы пытаетесь сделать, называется "кластер высокой доступности". Основная идея кластера высокой доступности заключается в том, что каждый член кластера имеет свой собственный IP-адрес (обычно используемый только для управления), а кластер имеет свой собственный IP-адрес.
Обычно этот вид установки управляется специальным программным обеспечением, но вы можете попробовать поиграть с помощью сценариев собственного производства.
В принципе:
- На каждом сервере свяжите две сетевые карты, получая высокодоступную сетевую карту на каждом сервере.
- Назначьте IP-адрес кластера этому новому NIC на сервере A. Убедитесь, что вы можете получить доступ к службам.
- Отмените назначение IP-адреса кластера с сервера A, назначьте его на сервере B. Убедитесь, что вы можете получить доступ к службам.
Теперь продолжим, выяснив, как убедиться, что только один из двух серверов обладает IP-адресом кластера, как убедиться, что сервер, не имеющий IP-адреса кластера, отказывается принимать запросы, как синхронизировать состояние между серверами и т. Д.. так далее.