LINUX.ORG.RU
ФорумAdmin

Помогите настроить proxmox cluster с private network и NAT-ом для контейнеров.

 , , ,


0

1

Прошу помощи. Хочу поднять две ноды в proxmox кластере. Кластер без drbd и прочего. Просто объеденить две ноды так, чтобы был общий интерфейс управления и возможность миграции. У каждой ноды по две сетевухи. Одна сетевая eth0 (100mb) смотрит в интернет, вторая сетевая eth1 (1Gb) объединяет ноды в private network (через свитч). Прикладываю картинку с пояснениями: http://s018.radikal.ru/i510/1306/a5/de330bbb0db4.png

Я хочу, чтобы все виртуальные контейнеры (только openVZ, KVM не планирую) имели приватные адреса из диапазона 10.0.0.xxx, в инет выходили желательно через NAT или bridge посредством eth0. Но при этом, чтобы виртуалки с одной ноды на виртуалки другой ноды ходили через eth1 т.к. через eth0 гонять медленно. И чтобы сам proxmox свои кластерные дела (копирование конфигов, миграция) делал через eth1.

И вот я не могу осилить как под такие требования настроить proxmox. С одной стороны, мне нужен bridge на eth1 через который будут общаться виртуалки, но тогда они не смогут вылезти в интернет. Зарулить bridge-м eth1 и eth0 выглядит чревато т.к. по eth1 планируется прличный траффик.


Давно забыл, как в openvz реализована сеть.

У контейнеров по одному интерфейсу? Если из контейнера идет пакет, то в iptables на хосте этот пакет попадает? Если да, можно написать правильные маршруты на хосте:

ip route add 10.0.0.0 dev eth1

И чтобы сам proxmox свои кластерные дела (копирование конфигов, миграция) делал через eth1.

Тоже маршрутизацией решится, наверное.

pianolender ★★★ ()

Насколько я помню в Openvz можно добавлять виртуалке интерфейс типа veth, который можно привязать к конкретному интерфейсу на Proxmox ноде. То есть можно добавить вирт. машине интерфейс veth0, который будет привязан к eth0, и интерфейс veth1 к eth1. Ну и IP адреса раздать из соответствующих сетей.

FreeBSD ★★★ ()
Ответ на: комментарий от pianolender

Про маршрутизацию думал, но боюсь как бы proxmox не затер мои кастомные конфиги при каких-либо связанных изменениях в вебадминке. Он тут давеча при задании ip для ноды, потер все кастомные вещи из /etc/network/interfaces

divog ()
Ответ на: комментарий от FreeBSD

Ага, когда openvz юзал из консольки тоже что-то такое помнится, попробую поискать можно ли это сделать в proxmox-е или хотя бы сделать руками, но чтобы proxmox не потер поломал потом эту конфигурацию.

divog ()
Ответ на: комментарий от divog

Так это в Proxmox'е и настраивается, через веб админку.

FreeBSD ★★★ ()

Отпишусь для потомков :)

Все просто получилось. В proxmox прописал нужные ip и маски для eth0 (public) и eth1 (private). После этого между контейнерами обоеих нод трафик сам забегал по eth0. У контейнеров veth не делал, делал venet, прописывал ему нужный IP (10.0.0.x), после чего контейнер нормально мог общаться с другими контейнерами и с нодами. Для того, что контейнер мог шастать в public через eth1, настроил NAT на нодах. После чего наступило полное щасте :) Доступ из public в контейнеры или проброской IP, или форвардингом.

divog ()
Ответ на: комментарий от divog

Написано же: # Please create/edit /etc/network/interfaces.head and # /etc/network/interfaces.tail instead, their contents will be # inserted at the beginning and at the end of this file, respectively. # # NOTE: it is NOT guaranteed that the contents of /etc/network/interfaces.tail # will be at the very end of this file.

Создается /etc/network/interfaces.head и в него прописываются настройки сети, которые не перезаписываются автоматически

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.