Proxmox
Proxmox - https://www.proxmox.com je projekt virtualizačního SW postaveného na distribuci debian a VZ.
Příprava
Pár pěkných odkazů na návod z instalací:
- https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_11_Bullseye
- https://pve.proxmox.com/wiki/Install_Proxmox_VE_on_Debian_12_Bookworm
Ještě něco pro ansible:
- https://framagit.org/ansible-proxmox-datacenter/ansible-proxmoxve-install/-/tree/main?ref_type=heads
- https://github.com/jkirk/ansible-role-proxmox
- https://github.com/lae/ansible-role-proxmox
Po nainstalování je nutné nainstalovat ovladače z http://www.spice-space.org
Instalace z ISO
Na stránce Proxmox - Download si stáhneme požadované ISO pro následnou instalaci.
Pokud potřebuje inage nakopírovat na USB, můžeme pro Win použít třeba Etcher. Případné další možnosti nalezneme na wiki strámce.
Během instalace budeme vyzváni k několika konfiguračním možnostem.
Po nainstalování bude další administrace dostupná přes web na https://ip_adresa_serveru:8006. Výchozí login je root a heslo dle instalace.
Jako první krok nastavme firewal.
Síť
NAT, routing
V podstatě nejednoduší varianta. Přes "Datacenter -> SDN" vytvoříme zonu a vnet který pak přiřadíme vytvářenym VM. Pro konkrétní síť pak můžeme nastavit, zda bude obsahovat SNAT, nebo bude vnet routovaná.
VRF
Vytvoření pravidel
echo "# Only valid when the kernel was compiled with CONFIG_NET_L3_MASTER_DEV" > /etc/sysctl.d/21-net-ipv4-vrf.conf echo net.ipv4.tcp_l3mdev_accept = 1 >> /etc/sysctl.d/21-net-ipv4-vrf.conf echo net.ipv4.udp_l3mdev_accept = 1 >> /etc/sysctl.d/21-net-ipv4-vrf.conf echo net.ipv4.ip_forward = 1 >> /etc/sysctl.d/21-net-ipv4-vrf.conf
Příklad nastaveni sítě.
auto bond0 iface bond0 inet static bond-slaves eth0 eth1 bond-mode 802.3ad bond-xmit-hash-policy layer3+4 address 188.246.118.59 netmask 255.255.255.192 gateway 188.246.118.1
auto bond0.218 iface bond0.218 inet static address 172.16.118.59 netmask 255.255.255.0 post-up ip route add 172.16.0.0/16 via 172.16.118.1 pre-down ip route del 172.16.0.0/16 via 172.16.118.1
Licence
Postup jak odstranit hlášku o licenci najdeme na https://johnscs.com/remove-proxmox51-subscription-notice/ V podstatě by mělo stačit:
sed -Ezi.bak "s/(function\(orig_cmd\) \{)/\1\n\torig_cmd\(\);\n\treturn;/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js && systemctl restart pveproxy.service
DHCP
Pokud chceme na Proxmoxu používat DHCP server pro vnitřní sít, je potřeba doinstalovat dnsmasq a následně zakázat spouštění po startu.
apt install dnsmasq systemctl disable --now dnsmasq
Po nainstalování otevřeme Datacenter > SDN > Zone a vytvoříme Simple Zone. Tu přiřadíme konkrétními virtualu. Následně VNets vytvoříme vlastní privátní síť kterou přiřadíme do dříve vytvořené zóny a nastavíme požadovaný Subnet.
Hook
Skripty ktere se spouštějí jsou v adresáři /var/lib/vz/snippets/. Pokud snippets neexistuje, tak jej vytvoříme.
Proxmox spouští skript ze dvouma parametry: <skript> VM_ID EXECUTION_PHASE
- VM_ID - ID VM stroje
- EXECUTION_PHASE - Status
- pre-start
- post-start
- pre-stop
- post-stop
Po vutvoření skriptu jej pak ještě musíme přiřadit k VM.
https://codingpackets.com/blog/proxmox-hook-script-port-mirror/