Procedura zmiany adresów ip lub nazwy hosta w nodach klastra Proxmox.
Przed zmianą adresów musimy zapewnić aby nody widziały się używając nowych ip.
Na zmienianym nodzie przygotowujemy konfigurację interfejsów z nowym adresem i sprawdzamy czy jest komunikacja między pozostałymi nodami a tym nowym ip.
Ja dodałem nowy interfejs VLAN do którego przypisałem adres 192.168.8.3:
# ip a
. . . . . . .
vmbr0.255@vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 00:00:00:00:00:00 brd ff:ff:ff:ff:ff:ff
inet 192.168.8.3/24 scope global vmbr0.255
. . . . . . .
Wyłączamy lub przenosimy wszystkie vm z noda którego zmieniamy.
W shell na zmienianym nodzie, sprawdzamy status klastra.
# pvecm status
. . . . . .
Votequorum information
----------------------
Expected votes: 3
Highest expected: 3
Total votes: 3
Quorum: 2
Flags: Quorate Qdevice
Membership information
----------------------
Nodeid Votes Qdevice Name
0x00000001 1 A,V,NMW 192.168.1.1
0x00000002 1 A,V,NMW 192.168.1.2
0x00000003 1 A,V,NMW 192.168.1.3
Następnie w pliku /etc/pve/corosync.conf zmieniamy ip lub nazwę hosta naszego noda oraz config_version. Musimy to zrobić bardzo ostrożnie gdyż każdy zapis zostanie od razu rozpropagowany na pozostałe nody klastra. Teraz na pozostałych nodach sprawdzamy czy naniesione zmiany są widoczne w pliku /etc/pve/corosync.conf.
Na każdym nodzie restartujemy corosynca.
# systemctl restart corosync
Ponownie sprawdzamy status klastra
# pvecm status
. . . . . .
Votequorum information
----------------------
Expected votes: 3
Highest expected: 3
Total votes: 3
Quorum: 2
Flags: Quorate Qdevice
Membership information
----------------------
Nodeid Votes Qdevice Name
0x00000001 1 A,V,NMW 192.168.1.1
0x00000002 1 A,V,NMW 192.168.1.2
0x00000003 1 A,V,NMW 192.168.8.3
Powinniśmy nadal obserwować quorum, a nasz nod będzie miał zmieniony ip.
Pozostało nam zaktualizować adres ip lub nazwę hosta w pliku /etc/hosts.
Jeżeli chcemy zmienić ip lub nazwę hosta następnemu nodowi postępujemy dokładnie tak samo.