как поменять ip адрес proxmox
Proxmox VE, часть 2, настройка сети и iptables
В первой части я описал установку системы виртуализации Proxmox VE на сервер в Hetzner. Далее привожу пример конфигурации сети и настройки безопасности.
1. Арендованный в Hetzner сервер
2. Установленная ОС Debian 7.6 minimal
3. Установленная система Proxmox VE
4. 29 подсеть (можно заказать 28ю подсеть, или до трех дополнительных IP адресов)
Первым делом отредактируем сетевые настройки на нашем сервере:
Приведя их к следующему виду:
# Loopback device:
auto lo
iface lo inet loopback
# device: eth0
auto eth0
iface eth0 inet manual
auto vmbr0
iface vmbr0 inet static
address XXX.YY.ZZ.QQ
broadcast XXX.YY.ZZ.QQ
netmask 255.255.255.XXX
gateway XXX.YY.ZZ.QQ
bridge_ports eth0
bridge_stp off
bridge_fd 0
Сохраняем, ребутим сеть:
Далее, обезопасим наш сервер от лишних беспокойств:
1. Создаем файл в который пропишем наши настройки iptables, файл назовем «iptables», чтоб было понятно и поместим его в автозагрузку:
Структура скрипта следующая:
#Даем необходимые разрешения
#Разрешаю хетзнеровские DNS
Делаем наш файл исполняемым:
chmod +x /etc/network/if-pre-up.d/iptables
Следующий этап, прикручиваем нашу подсеть:
1. Открываем конфиг:
2. Добавляем интерфейс:
auto vmbr1
iface vmbr1 inet static
address XXX.YYY.ZZZ.QQQ # Первый адрес из 5ти доступных для использования, он же является шлюзом для гостевых машин
netmask 255.255.255.XXX
bridge_ports none
bridge_stp off
bridge_fd 0
Сохраняем и ребутимся. Теперь сервер готов для размещения гостевых машин.
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
Настраиваем сеть в Proxmox Virtual Environment
Если обратиться к официальной документации, то там будет рассказано о двух основных сетевых конфигурациях: с использованием моста и маршрутизации. Приведенные примеры покрывают основные сценарии использования и не углубляются в подробности, но различные комбинации настроек для этих вариантов позволяют реализовывать самые разнообразные сетевые конфигурации. В данном материале мы рассмотрим базовые возможности Proxmox, не касаясь объединения сетевых адаптеров или использования Open vSwitch, потому как это отдельные темы, лежащие за рамками базовой настройки.
Внешняя сеть
Сетевая конфигурация, создаваемая по умолчанию, когда и виртуальные машины, и гипервизор получают прозрачный доступ к вешней сети, подключенной через физический сетевой адаптер. Она же самая часто используемая, так как позволяет организовать простой доступ к виртуальным машинам, как к самым обычным узлам локальной сети.
Присвоение интерфейсу моста IP-адреса фактически подключает к виртуальному коммутатору сам хост, т.е. гипервизор, который также прозрачно попадет во внешнюю сеть. Если в Hyper-V для подключения гипервизора к сети на хосте создавался еще один виртуальный сетевой адаптер, то в Proxmox для этого следует назначить IP-адрес интерфейсу моста. Ниже показан пример такой настройки:
В настройках указывается адрес и шлюз, опция автозапуска и привязанный к мосту физический адаптер. Также мы советуем в поле комментарий оставлять осмысленное описание сетевого устройства, чтобы всегда было понятно, что это и зачем.
Для того, чтобы подключить к такой сети виртуальную машину в настройках ее сетевого адаптера следует выбрать нужный мост (виртуальный коммутатор):
Сетевые настройки виртуальной машины либо задаются вручную, либо могут быть получены от DHCP-сервера внешней сети.
Внешняя изолированная сеть
Данная конфигурация требует минимум двух сетевых адаптеров и предусматривает изоляцию гипервизора от внешней сети и виртуальных машин. Это может быть полезно при виртуализации пограничных устройства, например, шлюза. Либо когда виртуальные машины арендуются третьими лицами, либо находятся вне доверенной сети и доступ к гипервизору оттуда должен быть закрыт.
Для создания изолированной внешней сети нам потребуется создать новый сетевой мост без сетевых настроек и привязать к нему физический адаптер (тоже без настроек), таким образом будет обеспечен доступ виртуальных машин во внешнюю сеть с изоляцией этой сети от гипервизора.
Для доступа к самому гипервизору может быть использован либо другой сетевой адаптер (как показано на нашей схеме), так и созданная по умолчанию внешняя сеть с сетевым мостом. Оба варианта имеют право на жизнь, а во втором случае вы сможете также подключать виртуальные машины к разным виртуальным сетям. Поэтому не следует рассматривать приведенную нами схему как догму, это только один из возможных вариантов и выбран нами в целях упрощения схемы.
Для примера мы подключили к такой сети виртуальную машину, которая тут же получила по DHCP адрес из внешней сети, никак не связанной с гипервизором.
Внутренняя сеть с NAT
Применяется в тех случаях, когда нужно изолировать виртуальные машины в собственной сети, но в тоже время обеспечить им доступ в интернет, а также доступ из внешней сети к некоторым из них (или отдельным сетевым службам). Широко используется в лабораторных сценариях, а также при работе с контейнерами.
Обратите внимание, данная конфигурация не может быть изолирована от хоста, так как именно хост предоставляет ей службу трансляции сетевых адресов (NAT) и выступает шлюзом для виртуальных машин. Для настройки такой сети создайте новый сетевой мост без привязки к физическому адаптеру и назначьте ему IP-адрес из произвольной сети, отличной от внешней.
Откроем именно interfaces.new и внесем в конец следующие строки:
В качестве сети, в нашем случае 192.168.34.0/24, укажите выбранную вами сеть, а вместо интерфейса ens33 укажите тот сетевой интерфейс, который смотрит во внешнюю сеть с доступом в интернет. Если вы используете сетевую конфигурацию по умолчанию, то это будет не физический адаптер, а первый созданный мост vmbr0, как на скриншоте ниже:
Перезагрузим узел и назначим виртуальной машине или контейнеру созданную сеть (vmbr1), также выдадим ей адрес из этой сети, а шлюзом укажем адрес моста.
Не забудьте указать доступный адрес DNS-сервера и убедитесь, что виртуальная машина имеет выход в интернет через NAT.
Внутренняя сеть
Позволяет изолировать виртуальные машины от внешней сети и не предоставляет им доступ в интернет, используется в основном в лабораторных целях, когда в качестве шлюза будет выступать одна из виртуальных машин и обычно сочетается на хосте с одной из сетей, имеющих выход в интернет.
Чтобы получить такую сеть, просто создайте еще один мост без привязки к адаптеру и назначьте ему IP-адрес из любой отличной от используемых сети.
Частная сеть
Разновидность внутренней сети, которая подразумевает изоляцию не только от внешней сети, но и от хоста. Что позволяет получить полностью независимую сеть между виртуальными машинами, может быть полезна в лабораторных условиях, когда нужно смоделировать сеть, адресация которой пересекается с используемыми вами сетями.
Для такой сети просто создайте еще один сетевой мост без каких-либо настроек:
Подобные сети также обычно используются не самостоятельно, а в сочетании с иными типами сетей на хосте.
Организуем службы DNS и DHCP для внутренних сетей
Как вы уже могли заметить все адреса для виртуальных машин во внутренних сетях мы назначали вручную. Но можно это делать автоматически, сняв с себя еще одну заботу, это удобно, особенно в лабораторных и тестовых средах, где виртуальных машин много и назначать им адреса вручную может быть достаточно затруднительно.
В нашем примере мы организуем службы DNS и DHCP для внутренней сети с NAT и просто внутренней сети. Для первой мы должны будет выдавать адрес, шлюз и сервера DNS, для второй просто адрес. Данная конфигурация не является реальной, а создана нами исключительно в учебных целях.
В качестве серверов DNS и DHCP мы будем использовать уже известный нашим читателям пакет dnsmasq, который является простым и легким кеширующим DNS и DHCP-сервером. Установим его:
Затем перейдем в конфигурационный файл /etc/dnsmasq.conf и найдем и приведем к следующему виду параметры:
Здесь мы явно указали интерфейсы и адреса, на которых будет работать наш сервер. С одной стороны, присутствует некоторая избыточность, но лучше так, чем потом, при изменении сетевых настроек в вашей сети неожиданно появится неавторизованный DHCP-сервер.
Затем укажем выдаваемые клиентам диапазоны адресов:
Обратите внимание на формат записи, перед каждой настройкой мы указываем сетевой интерфейс к которой она применяется.
Аналогичным образом зададим нужные DHCP-опции, в нашем случае это Option 3 и 6 (шлюз и DNS-сервер).
Если настройки для моста vmbr1 не вызывают вопросов, то настройки для второй сети следует пояснить. Так как нам нужно передавать ей только IP-адрес и маску, без шлюза и серверов имен, то соответствующие опции следует передать пустыми, иначе будут переданы опции по умолчанию, где в качестве этих узлов будет передан адрес сервера.
Сохраняем конфигурационный файл и перезапускаем службу
После чего в виртуальных машинах, подключенных к внутренним сетям, мы можем установить настройки для получения адреса через DHCP и убедиться, что все работает как надо.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
Настройка сети в Proxmox
В первую очередь, на сервере виртуализации необходимо настроить сетевые подключения, которые в дальнейшем будут использоваться для доступа виртуальных машин в Интернет, обмена данными друг с другом, при необходимости распределить сети по VLAN. Для этого можно использовать реализованные в ядре Linux функции или установить Open vSwitch. В панели управления Proxmox VE реализован простой и понятный интерфейс управления сетями.
Таким образом, сервер на Proxmox VE можно использовать в качестве ядра виртуальной сети. В этой статье разберемся как выполняется настройка сети Proxmox Ve. Разберем, как настроить виртуальный мост и интерфейс с балансировкой по различным алгоритмам. Proxmox VE позволяет настроить VLAN на базе ядра Linux или Open vSwitch, но это отдельная большая тема, вне рамок обзора возможностей.
Виды сетевых соединений в Proxmox VE
Установка OVS в Proxmox VE
После установки Proxmox VE доступны сетевые функции ядра Linux. Для того, чтобы использовать функциональность Open vSwitch, необходимо установить его в систему. В программе терминал напишите команды:
sudo apt install openvswitch-switch
После этого нужно перезагрузить компьютер.
Настройка сети в Proxmox VE
После установки всех необходимых пакетов и перезагрузки ОС в WTB-интерфейсе Proxmox VE перейдите в раздел Датацентр, выберите имя гипервизора (на скриншоте PVE). В меню Система найдите раздел Сеть и нажмите кнопку Создать:
1. Настройка bridge
Создание интерфейса bridge для Open vSwitch и для ядра Linux практически ничем не отличаются, за исключением выбора способа создания и возможности указания для OVS Bridge дополнительных ключей Open vSwitch. Если планируется использовать VLAN для сетевого интерфейса, не забудьте указать чек-бокс возле пункта VLAN при создании bridge. Включение чек-бокса Автозапуск позволяет запускать выбранный сетевой интерфейс при загрузке гипервизора:
В общем случае, если сетевой интерфейс bridge создаётся единственный для гипервизора, то нет необходимости перечислять в пункте Порты сетевого моста все имеющиеся сетевые карты. Однако, если существует необходимость на уровне интерфейса разделить подключения к различным каналам связи или сегментам сети, то можно использовать различные комбинации сетевых устройств. На представленном хосте гипервизора их четыре, поэтому можно ввести два из них (перечислением через пробел) в bridge OVS:
Адрес интерфейса можно не указывать, настроенные на подключение к интерфейсу виртуальные машины будут использовать его как обычный свитч. Если же указать адрес IPv4 и/или IPv6, то он будет доступен извне на всех сетевых интерфейсах или на интерфейсах, перечисленных в поле Порты сетевого моста:
2. Настройка bond
Для балансировки нагрузки и объединения нескольких сетевых интерфейсов в один виртуальный, создайте OVS Bond. Это связано с тем, что его возможности шире, чем Linux Bond, а процесс создания практически идентичен. Для создания балансировщика нагрузки нажмите в меню Сеть кнопку Создать и выберите пункт OVS Bond:
Режимы балансировки можно установить только при создании интерфейса bond, перечислим их основные характеристики.
Для OVS Bridge:
Для Linux Bond:
3. Настройка VLAN
В меню Система найдите раздел Сеть и нажмите кнопку Создать и выберите OVS InPort:
Задайте имя интерфейса vlan50 тег VLAN, равный 50, укажите OVS Bridge. VLAN 50 на указанном виртуальном интерфейсе OVS Bridge vmbr1 с тегом 50 создан и может быть использован, например для организации видеонаблюдения. Таким образом, предлагаю настроить дополнительно VLAN30 для IP телефонии и VLAN100 для локальной сети с виртуализированными рабочими местами. Для создания всех VLAN используйте интерфейс vmbr1.
Выводы
В этой статье рассказано как выполняется настройка сети Proxmox VE. Теперь вы знаете про различные сетевые подключения с помощью интерфейса управления сервером. Гибкость решения позволяет использовать Proxmox VE в качестве управляемого и неуправляемого коммутатора, балансировать нагрузку по различным режимам балансировки.
Change Cluster Nodes IP Addresses
MRosu
Member
I’d like to change the IP addresses of our two notes (2 node cluster).
I wanna make sure I’m not missing anything critical.
Is it as simple as changing each node’s Network Settings via the GUI and rebooting?
wolfgang
Proxmox Staff Member
no you have to change the ip in up to three files, dependence on your setup.
/etc/network/interfaces
/etc/hosts
/etc/pve/corosync.conf (only on one node necessary)
After you change them on both nodes, reboot both nodes.
Best regards,
Wolfgang
czechsys
Active Member
no you have to change the ip in up to three files, dependence on your setup.
/etc/network/interfaces
/etc/hosts
/etc/pve/corosync.conf (only on one node necessary)
After you change them on both nodes, reboot both nodes.
MRosu
Member
Hey wolfgang, thank you so much for the assistance.
I do have one question.
When I check the corosync.conf file, I notice an IP address which I have not assigned myself, from what I recall:
totem <
cluster_name: Cluster1
config_version: 6
ip_version: ipv4
secauth: on
version: 2
interface <
bindnetaddr: 10.1.0.18
ringnumber: 0
>
I did not know this 10.1.0.18 address was being used (its not in my documentation), so I could have potentially assigned this address for another device.
I assume this was done automatically. If that is the case, I would just manually set this address myself, document it, and make sure nothing else takes it?
wolfgang
Proxmox Staff Member
Best regards,
Wolfgang
wolfgang
Proxmox Staff Member
The bindnet is the network where corosync executive should bind to. the rin[0|1]_address is the address of your node interface from the same network as bindnet.
If you have current a nodename as ring0_address this should also changed to a ip address.
Here read this Wiki page
Best regards,
Wolfgang
czechsys
Active Member
https://pve.proxmox.com/wiki/Cluster_Manager
Preparing Nodes
First, install Proxmox VE on all nodes. Make sure that each node is installed with the final hostname and IP configuration. Changing the hostname and IP is not possible after cluster creation.
If it’s only change in 3 files (+ssh fingerprints confirmation), it’s almost easy and not «not possible».
MRosu
Member
Thanks for all the help so far.
I’m planning on changing the iSCSI host’s IP as well.
Is the recommended action to change the IP address in /etc/pve/storage.cfg?
I also saw this thread with someone who successfully removed and re-added the iSCSI target and LVM group via GUI.
taenzerme
Active Member
I need to «hijack» this thread as I need to change my current 3 node clusters ip addresses, too.
Is it really sufficient to update the ips in these files only:
Do I have to «update» the version in the totem section?
Is corosync.conf synced to the other nodes or do I have to edit this individually on each host?
Anything else to consider here?
wolfgang
Proxmox Staff Member
yes this are all files what you must change.
On one node in the cluster if the quorum is ok.
Best regards,
Wolfgang
taenzerme
Active Member
osteoboon
New Member
Hi All. I just discovered proxmox this week, and it looks wonderful! Thanks to all who made and maintain it!
May I follow up in this thread with my own dilemma as Sebastian did? Or is that considered poor form in this community?
I have the exact same question as MRosu except that I have only one node: how to effectively change my single node’s IP address?
I changed the ip address in /etc/hosts and /etc/network/interfaces as specified above and rebooted, but after the reboot, the node still thought that it’s IP address was the originally configured one. Also thought I could get away with changing the hostname in /etc/hosts and did so, but that change does not show up in the command prompt (as indicated below). Then I did a
# service networking restart
and immediately after the service restart, the node was indeed reachable on the new network from a remote host with ssh. However, there is now no service running on port 8006 (even after rebooting) and now when the node boots up, the usual messages I see in the console about connecting to https://IPADDR:8006/ are no longer present.
It looks like by changing the node’s ip address as indicated above, I somehow broke the PVE services running on port 8006?
As for the third file mentioned above (/etc/pve/corosync.conf), my node has no files in /etc/pve/ at all:
So should I add corosync.conf to /etc/pve myself? Maybe following the example of MRosu’s post on Mar 6, 2017?
Thanks for any suggestions.
taenzerme
Active Member
Did you edit all three files:
/etc/network/interfaces
/etc/hosts
/etc/pve/corosync.conf
and updated the IP in there AND (important!) updated the version in /etc/pve/corosync.conf?
taenzerme
Active Member
I remember on a single node it might be different:
2. Edit /etc/pve/cluster.cfg
osteoboon
New Member
Thanks for the warm welcome, Sebastian, and for your quick reply.
But I have no cluster cfg file in etc pve (or anywhere in the directory tree rooted at etc for that matter).
And I have no etc pve corosync.conf file.
I have etc default corosync and etc init corosync conf and an empty directory etc corosync uidgid d but nothing like corosync in etc pve.
My etc pve looks like this:
So I’m still not sure how to change my node’s ip address.
(I had to remove the all slants and dots in my pathnames because the forum software seems to think they are part of external URLs and I’m a new user, so it won’t let me post URLs in case I’m a spammer).
[ The following error occurred:
New users aren’t allowed to post external links, for anti-spam measurement reasons.]
Proxmox change IP address in 3 simple steps
Over time and business growth, majority online businesses tend to require more server resources. Ensuring high uptime is also very critical. To accomplish this, Proxmox cluster with fail-over setup helps.
But setting up clusters, configuring fail-over, performing IP updates, etc. may require changing the IP address of the existing Proxmox server that was set initially.
There may also be times you need to switch your IP blocks to another set, which usually happens during data center changes or network updates.
In all these scenarios, the Proxmox server IP address will have to be changed to another IP. Today we’ll discuss how to change main IP address in Proxmox.
Steps to change IP address of Proxmox server
You can change the Proxmox node IP address in three simple steps as given here:
1. Lookup the current IP address in Proxmox console
To change IP address in Proxmox, go to the management console of Proxmox VE. You can access the console at https://IPaddress:8006/
You’ll see the server IP in the summary section.
Proxmox server IP address
To change the IP, go to the ‘proxmox node’ and choose option ‘Network’ and edit the ‘vmbr0’ section.
Edit ‘vmbr0’ to change IP address of Proxmox
2. Change the IP address of Proxmox node
Enter the new IP address in the ‘Edit’ window and click ‘OK’. Here we’re changing the IP address from 172.17.4.45 to 172.17.5.45.
The new IP address would be now shown in the ‘Network’ section:
New IP address shown in Proxmox
3. Change the IP address of Proxmox in hosts file
However, the above IP change will not yet reflect in the main Summary section. For that, we edit the ‘/etc/hosts’ file in the server and change the IP address.
Change Proxmox IP in /etc/hosts
Once the /etc/hosts is updated, Logout and Login to the Proxmox VE management console to see the new IP listed. If it doesn’t show, reboot the machine and check.
New Proxmox IP address in Summary
Today we saw the steps to easily change a Proxmox node IP address. To change the IP address, you need to first ensure that the new IP is available and bound to the server.
[ Managing your Proxmox server infrastructure doesn’t have to be hard, or costly. Get world class server virtualization management services at affordable pricing. ]
The gateway and the network interface for the new IP address should be mentioned correctly after checking the details in the server. Otherwise you’d get errors while adding the IP.
The hostname and DNS changes should also be made in cases where they are applicable. If you’d like to know how to do it for your servers, we’d be happy to talk to you.
Related posts:
Want to manage your Proxmox servers?
Worried about upgrades and service errors in your servers? Let us help you.