Top 10 Proxmox CLI-opdrachten die elke beheerder zou moeten kennen

Proxmox virtuele omgeving (VE) kan worden beheerd met een gebruiksvriendelijke grafische interface in een webbrowser. In specifieke scenario’s is het echter beter om de opdrachtregelinterface (CLI) te gebruiken. De CLI biedt voordelen zoals meer gedetailleerde configuratie, batchverwerking, scripting en automatisering.

Er zijn standaard Linux-opdrachten en Proxmox-specifieke opdrachten om Proxmox virtuele omgevingen te beheren. Deze blogpost behandelt de top 10 Proxmox-specifieke opdrachten met voorbeelden voor effectieve administratie.

1. qm

De qm opdracht is een van de belangrijkste Proxmox CLI-opdrachten, en qm is een afkorting voor QEMU Manager. Het wordt gebruikt om virtuele machines (VM’s) in een Proxmox virtuele omgeving (Proxmox VE) te beheren. Virtuele machines op Proxmox zijn QEMU/KVM-gebaseerd, en de qm opdracht interacteert met hen. Je kunt VM’s maken, bewerken, configureren, starten, stoppen en migreren met deze opdracht.

De algemene syntaxis van de opdracht is:

qm [opties] <opdracht> [argumenten]

Virtuele machines opsommen

Je kunt de status en ID van de VM zien. Je hebt mogelijk de ID nodig om deze VM in de Proxmox CLI te beheren.

qm list

Een nieuwe virtuele machine maken

Algemene syntaxis:

qm create <vmid> [opties]

Voorbeeld:

qm create 103 --name "DebianVM" --memory 2048 --net0 virtio,bridge=vmbr0 --sockets 1 --cores 2 --ostype l26

De volgende Proxmox CLI-opdracht maakt een VM aan met ID 103 genaamd “DebianVM” met 2GB RAM, 1 socket, 2 cores en een Virtio-netwerkinterface die is verbonden met vmbr0. Het besturingssysteemtype is Linux (aangegeven door l26).

Een schijf aan een VM koppelen

qm set 105 --scsi0 local-lvm:32G

Koppelt een schijf van 32GB aan de VM via de SCSI-interface.

Koppel een CD-ROM voor OS-installatie

qm set 105 --ide2 local:iso/debian-10.7.0-amd64-netinst.iso,media=cdrom

Deze opdracht koppelt een Debian ISO aan de IDE CD-ROM-drive van de VM voor de installatie van een gastbesturingssysteem of andere doeleinden.

De opstartvolgorde configureren

qm set 105 --boot order=ide2;scsi0

De opdracht die in dit voorbeeld wordt gebruikt, configureert de VM om eerst op te starten vanaf de CD-ROM (IDE2), daarna de schijf (SCSI0).

Een virtuele machine starten

Syntax:

qm start <vmid>

Voorbeeld:

qm start 103

De VM met ID 103 starten

Een VM stoppen

qm stop <vmid>

Deze opdracht stopt een draaiende VM onmiddellijk. Deze manier om een VM te stoppen is hetzelfde als het trekken van de stekker van een fysieke machine.

qm stop 103

De VM met ID 103 stoppen.

Een VM afsluiten in Proxmox CLI

qm shutdown <vmid>

Dit commando sluit een VM op een nette manier af, waardoor het gast-OS bestanden kan sluiten en processen correct kan beëindigen.

qm shutdown 101

Een uitschakelsignaal verzenden naar de VM met ID 101.

Een VM naar een andere node migreren

qm migrate <vmid> <doelnode>

Dit commando migreert een VM van zijn huidige node naar een andere node binnen dezelfde Proxmox-cluster.

Bijvoorbeeld, om een VM met de ID 103 naar node2 te migreren, kunnen we het commando gebruiken:

qm migrate 103 node2

Een snapshot van een VM maken

qm snapshot <vmid> <snapshotnaam>

Het commando maakt een snapshot van de VM, waarbij de huidige staat wordt vastgelegd, inclusief het geheugen, de schijf en de apparaatsstatus.

qm snapshot 103 "before_upgrade"

Dit commando maakt een snapshot van de VM met ID 103 en noemt deze “before_upgrade“. Het gebruik van het commando om een snapshot te maken is nuttig voordat risicovolle bewerkingen worden uitgevoerd, zoals software-upgrades.

Een VM-status herstellen vanuit een snapshot

qm rollback <vmid> <snapshotnaam>

Dit commando zet een VM terug naar een vorige snapshot, waardoor de status wordt hersteld naar het punt waarop de snapshot is gemaakt.

Bijvoorbeeld, als de software-upgrade binnen een VM niet succesvol was en is mislukt, kunnen we de VM-status herstellen met het commando:

qm rollback 103 "before_upgrade"

Alle wijzigingen die zijn aangebracht sinds de snapshot is gemaakt, worden verworpen (ongedaan gemaakt).

Het klonen van een virtuele machine

qm clone <vmid> <newid> [--name <newname>] [--full]

De qm clone opdracht kloont een bestaande VM om een nieuwe VM te maken met een andere ID. Je kunt ervoor kiezen om ofwel de volledige schijf (volledige kloon) of alleen de gekoppelde opslag te klonen.

qm clone 103 104 --name "DebianClone" --full

Deze opdracht kloont de VM met ID 103 naar een nieuwe VM met ID 104, met de naam “DebianClone“. De full optie creëert een volledige kloon en kopieert alle gegevens.

Het wijzigen van de schijfgrootte van een virtuele machine

qm resize <vmid> <disk> <size>

De qm resize opdracht wordt gebruikt om een virtuele schijf die aan een VM is gekoppeld te wijzigen, hetzij door deze uit te breiden of te verkleinen. Zorg ervoor dat het gast-besturingssysteem de wijziging kan verwerken.

qm resize 103 scsi0 +10G

Deze Proxmox CLI-opdracht vergroot de grootte van de scsi0-schijf op de VM met ID 103 met 10GB.

2. pve-firewall

De pve-firewall opdracht wordt gebruikt om de firewallinstellingen in de Proxmox virtuele omgeving te beheren, inclusief Proxmox clusters. Deze Proxmox CLI-opdracht biedt gebruiksvriendelijke opties voor het configureren van firewallregels en stelt beheerders in staat om netwerkverkeer naar en van Proxmox-nodes, virtuele machines en containers te controleren. De Proxmox-firewall is nauw geïntegreerd met de Proxmox-beheerinterface en maakt het beheer van de firewall in de gehele Proxmox-omgeving gemakkelijker. De pve-firewall tool is speciaal ontwikkeld voor Proxmox VE en gebruikt een high-level abstractie om firewallregels te beheren in vergelijking met de meer gedetailleerde en handmatige aanpak die wordt gebruikt in iptables.

Syntax:

pve-firewall <opdracht> [opties]

Voer de pve-firewall opdracht uit om het belangrijkste gebruik van de opdracht te zien.

Controleer de status

De status van de Proxmox VE firewallservice controleren:

pve-firewall status

De output toont of de firewall op de huidige node draait of niet.

Start de firewall

De firewallservice starten op de huidige Proxmox-node:

pve-firewall start

Herlaad de firewall

De firewallservice herladen en de wijzigingen in de firewallconfiguratie toepassen zonder de firewallservice te stoppen en opnieuw te starten.

pve-firewall reload

Accepteer SSH-verkeer

Een firewallregel creëren die SSH-verkeer accepteert:

pve-firewall create rule -action accept -macro ssh

Dit commando creëert een regel om SSH-toegang tot de Proxmox-omgeving toe te staan.

Waar: create <object> creëert een nieuw firewallobject, zoals een regel, beveiligingsgroep of IP-set.

Verwijder regel

Om de regel te verwijderen, gebruik het commando:

pve-firewall delete rule <rule-id>

Log weergeven

Geef het firewall-log weer, dat verkeer en regelovereenkomsten toont:

pve-firewall log

De uitvoer toont de meest recente firewall-logboekvermeldingen.

HTTP-verkeer weigeren

Om een firewallregel te creëren die al het HTTP-verkeer weigert, gebruik het commando:

pve-firewall create rule -action drop -macro http

3. pvesm

De pvesm opdracht in Proxmox CLI is de commandoregelhulpprogramma dat wordt gebruikt om de opslagconfiguratie in Proxmox VE te beheren. Met dit commandoregelhulpmiddel kun je opslagpools maken, verwijderen, wijzigen en beheren. Bovendien kun je verschillende opslaggerelateerde taken uitvoeren, zoals het creëren van mappen, het toevoegen van opslagapparaten en het beheren van inhoudstypen.

Syntax:

pvesm <command> [options]

Lijst opslag

pvesm list <storage>

Waarbij <storage> de naam is van de opslagpool (datastore) die je wilt weergeven.

Controleer de status van alle of specifieke opslagpools

pvesm status

De uitvoer toont de status van de opslagpool, inclusief informatie over of deze actief of inactief is, het type opslag en het huidige gebruik.

Een nieuwe opslagpool maken

pvesm create <type> <storage-id> --options

Waarbij:

<type> het type opslagbackend is dat moet worden gemaakt (bijvoorbeeld, dir, lvm, nfs, zfs).

<storage-id> de unieke naam of ID voor de opslagpool is.

opties definieert de aanvullende opties die specifiek zijn voor het type opslag.

Voorbeeld:

Een nieuwe directory-gebaseerde opslagpool maken met de naam new-datastore1 gelegen op /mnt/storage-name, die VM-afbeeldingen en ISO-bestanden kan opslaan:

pvesm create dir new-datastore1 --path /mnt/storage-name --content images,iso

Een bestaande opslagbackend aan Proxmox VE toevoegen

Het principe van deze opdracht is vergelijkbaar met de pvesm create opdracht, maar in plaats van nieuwe opslag te maken, wordt de opslag die al bestaat aan de Proxmox-configuratie toegevoegd om deze beschikbaar te maken.

Voorbeeld:

Een bestaande NFS-share gelegen op 192.168.101.100 op /export/data aan Proxmox VE toevoegen onder de naam test-nfs-storage:

pvesm add nfs test-nfs-storage --server 192.168.101.100 --export /export/data --path /mnt/pve/test-nfs-storage --content images,iso

Het aanpassen van de configuratie van een bestaande opslagpool

pvesm set <storage-id> --options

Voorbeeld:

Het aanpassen van de local-storage01 pool om deze in staat te stellen VM-afbeeldingen, ISO-bestanden en back-upbestanden op te slaan:

pvesm set local-storage01 --content images,iso,backup

Een nieuwe volume toewijzen op een gespecificeerde opslagpool voor een VM of container

pvesm alloc <storage-id> <vmid> <size>

Voorbeeld:

De opdracht om een volume van 10 GB toe te wijzen op de local-storage-name pool voor VM 100:

pvesm alloc local-storage-name 100 10G

4. pveum

De Proxmox Virtual Environment stelt je in staat meerdere gebruikers te creëren voor het beheren van Proxmox VE. Dit kan gedaan worden met Proxmox CLI-opdrachten door gebruik te maken van de pveum (gebruikersbeheer) opdracht. Proxmox-beheerders kunnen gebruikers en groepen beheren en toegangscontroles en machtigingen configureren. Dit definieert op zijn beurt wie toegang kan hebben en is toegestaan om actie te ondernemen op de verschillende onderdelen van de Proxmox-infrastructuur. Beheerders kunnen machtigingen toewijzen voor toegang tot objecten, zoals virtuele machines, opslag, cluster nodes, enz.

Syntax:

pveum <command> [options]

Een nieuwe gebruiker toevoegen aan Proxmox VE

pveum useradd <userid> --password <password> --comment <comment> --groups <group>

Waar:

Wachtwoord <wachtwoord> is het wachtwoord voor de nieuwe gebruiker.

Opmerking <opmerking> is een optionele opmerking of beschrijving voor de gebruiker.

Groepen <groep> zijn de groep(en) waar de gebruiker lid van moet zijn.

Voorbeeld:

pveum useradd user2@pve --password GeheimWachtwoord111 --comment "gebruiker2 - admin groep" --groups admin

Deze opdracht wordt gebruikt om een gebruiker met de naam gebruiker2 toe te voegen aan de admin groep met een beschrijving en om het wachtwoord voor deze gebruiker in te stellen.

Gebruiker verwijderen

Om een gebruiker te verwijderen, gebruik je de pveum opdracht met dezelfde logica als bij het toevoegen van een gebruiker, bijvoorbeeld:

pveum userdel gebruiker3@pve

Deze opdracht wordt gebruikt om gebruiker3 te verwijderen op een Proxmox host.

Groep aanmaken

Om een nieuwe groep aan te maken in de Proxmox CLI, gebruik je de groupadd opdracht.

Syntax:

pveum groupadd <groepsnaam> --comment <opmerking>

Voorbeeld:

pveum groupadd support --comment "Ondersteuningsteam Groep"

Deze opdracht maakt een nieuwe groep genaamd ondersteuning aan met de beschrijving “Ondersteuningsteam Groep“.

Groep verwijderen

Vergelijkbaar met het verwijderen van een gebruiker, kun je ook een groep verwijderen. Bijvoorbeeld, om een gasten groep te verwijderen, kun je de volgende opdracht gebruiken:

pveum groupdel gasten

Rollen toevoegen

Rollen worden gebruikt om een set machtigingen te definiëren voor gebruikers en groepen aan wie deze rol is toegewezen.

Syntax:

pveum roleadd <rolenaam> --privs <privileges>

Waar:

<rolenaam> is de naam van de rol die moet worden aangemaakt.

privs <privileges> is een door komma’s gescheiden lijst van privileges die aan de rol moeten worden toegewezen (bijvoorbeeld, VM.PowerMgmt,VM.Config.Disk).

Voorbeeld:

pveum roleadd vmmanager --privs VM.PowerMgmt,VM.Config.CDROM

Deze opdracht maakt een rol genaamd vmmanager met machtigingen om de VM-energie-instellingen te beheren en CD-ROM’s te configureren.

Bestaande rol wijzigen

Beheerders kunnen bestaande rollen en machtigingen wijzigen met de rolemod opdracht (privileges toevoegen of verwijderen).

Syntax:

pveum rolemod <rolenaam> --privs <privileges>

Voorbeeld:

pveum rolemod vmmanager --privs +VM.Config.Network

Deze opdracht voegt het VM.Config.Network privilege toe aan de vmmanager rol.

ACL wijzigen

Proxmox-beheerders kunnen Toegangscontrolelijsten (ACL) wijzigen door rollen toe te wijzen aan gebruikers of groepen op specifieke Proxmox-objecten.

Syntax:

pveum aclmod <path> --roles <rolename> --users <userid> --groups <groupname>

Waar:

<path> is het objectpad waarop de ACL wordt ingesteld (bijvoorbeeld, /vms/100 voor een specifieke VM of / voor de hele cluster).

roles <rolename> is de rol die wordt toegewezen.

users <userid> is de gebruiker aan wie de rol wordt toegewezen.

groups <groupname> is de groep aan wie de rol wordt toegewezen.

Voorbeeld:

pveum aclmod /vms/104 --roles vmmanager --users user4@pve

Deze opdracht wijst de rol vmmanager toe aan user4@pve op VM 104, waardoor de gebruiker (user4) die specifieke VM kan beheren volgens de rechten in de rol vmmanager. De aclremove opdracht wordt gebruikt om ACL’s dienovereenkomstig te verwijderen.

Authenticatierealmbeheer

Een authenticatierealm bepaalt hoe gebruikers zich aanmelden bij het systeem (bijvoorbeeld, met PAM, LDAP of Active Directory). U kunt authenticatierealms beheren met de realm opdracht in Proxmox VE.

Syntaxis:

pveum realm <command> [options]

Waarbij het commando kan zijn:

list om alle beschikbare realms weer te geven

add om een nieuwe realm toe te voegen

modify om een bestaande realm aan te passen

verwijderen om een bestaand domein te verwijderen

Bijvoorbeeld, om alle geconfigureerde authenticatiedomeinen in Proxmox VE te lijsten, gebruik het commando:

pveum realm list

Beheer van bestaande gebruikers

Je kunt bestaande gebruikers lijsten, bewerken en verwijderen met dit gebruikerscommando.

Syntax:

pveum user <commando> <gebruikersid> [opties]

De commando’s kunnen zijn:

lijst om alle gebruikers te lijsten

wijzigen om gebruikersgegevens te wijzigen, zoals het wijzigen van een wachtwoord of het bijwerken van de opmerking

verwijderen om een gebruiker te verwijderen

Bijvoorbeeld, om alle gebruikers op een Proxmox-host te lijsten, gebruik het commando:

pveum user list

Om meer beschikbare commando’s en opties te zien, voer het pveum help commando uit in de Proxmox CLI.

5. pvesh

Door het pvesh commando te gebruiken, kunnen beheerders interageren met de Proxmox REST API. Dit opdrachtregelhulpmiddel stelt je in staat om bijna elke actie uit te voeren die via de Proxmox-webinterface kan worden gedaan, rechtstreeks vanuit de Proxmox CLI. Het pvesh commando fungeert als een shell voor de Proxmox VE REST API, waardoor je API-aanroepen kunt doen met commando’s rechtstreeks vanuit de opdrachtregel. Met dit commando kun je virtuele machines, opslag, netwerk en andere elementen van de Proxmox-virtuele infrastructuur beheren.

Syntax:

pvesh <commando> [opties]

Resources of API-eindpunten lijsten

Deze opdracht is vergelijkbaar met de ls opdracht in Linux, maar het geeft de beschikbare API-paden of bronnen weer in de Proxmox VE-omgeving.

pvesh ls /path

Voorbeeld:

pvesh ls /cluster/resources

Deze opdracht geeft alle bronnen in de Proxmox-cluster weer, inclusief VM’s, containers en opslag.

Informatie ophalen

De get opdracht haalt informatie op van een specifiek API-eindpunt. Deze opdracht wordt gebruikt om een bron te raadplegen voor details.

pvesh get /path

Waarbij path het API-pad is waarvan je informatie wilt ophalen.

Bijvoorbeeld, om de statusinformatie voor de node pve-node1 op te halen, zoals CPU-belasting, geheugengebruik en uptime, kun je de opdracht gebruiken:

pvesh get /nodes/pve-node1/status

De configuratie wijzigen

De set opdracht wordt gebruikt om de configuratie van een bron te wijzigen of bij te werken. Dit is gelijk aan het maken van een POST- of PUT-verzoek in de REST API.

Syntax:

pvesh set /path --key value [--key value ...]

key value zijn de sleutel-waardeparken van de instellingen die je wilt wijzigen.

Voorbeeld:

pvesh set /nodes/pve-node1/qemu/100/config --name new-vm-name

Deze opdracht verandert de naam van VM 100 op de node pve-node1 naar new-vm-name.

Een bron aanmaken

De create-opdracht stelt je in staat om een nieuwe resource te creëren, zoals een nieuwe VM of opslagvolume.

Syntax:

pvesh create /path --key waarde [--key waarde ...]

Bijvoorbeeld, je maakt een nieuwe VM met specifieke parameters met de opdracht:

pvesh create /nodes/pve-node1/qemu --vmid 106 --name nieuwe-vm-naam --memory 2048 --cores 2

Deze opdracht creëert een nieuwe VM met ID 106 op de node pve-node1, met de naam nieuwe-vm-naam, 2 GB RAM en 2 CPU-kernen.

VM’s starten

Er is een opdracht om een VM of container te starten met pvesh:

pvesh start /path

Bijvoorbeeld, om de VM met ID 101 op de node pve-node1 te starten, kun je de opdracht uitvoeren:

pvesh start /nodes/pve-node1/qemu/101

VM afsluiten

In tegenstelling tot de stop-opdracht, sluit de shutdown-opdracht een VM of container op een nette manier af:

pvesh shutdown /path

Bijvoorbeeld, om een VM met het ID 101 op een Proxmox-host, waarvan de naam pve-node1 is, af te sluiten, gebruik je de opdracht:

pvesh shutdown /nodes/pve-node1/qemu/101

Alle VM’s starten

Om alle VM’s op een node of in het gehele cluster te starten of te stoppen, kun je de bijbehorende opdracht gebruiken:

pvesh startall /nodes/<nodenaam>

pvesh stopall /nodes/<nodenaam>

6. pvecm

De pvecm opdracht is een hulpmiddel voor het beheer van Proxmox-clusters dat wordt gebruikt om een Proxmox-cluster te beheren en te configureren. U kunt dit hulpmiddel gebruiken om een cluster te creëren en de knooppunten binnen een Proxmox-cluster toe te voegen en te beheren. Een cluster wordt beheerd als een enkele entiteit met configuratiefuncties, zoals Hoge Beschikbaarheid, live VM-migratie, gedeelde opslag, enz.

Syntax:

pvecm <opdracht> [opties]

Om alle ondersteunde pvecm opdrachten te zien, voert u deze opdracht uit:

man pvecm

Een cluster creëren

Om een nieuwe Proxmox VE-cluster te creëren, kunt u de create opdracht gebruiken. U moet deze opdracht uitvoeren op het eerste knooppunt (master knooppunt) dat het cluster zal vormen.

pvecm create <clusternaam>

Voorbeeld:

De onderstaande opdracht creëert een cluster genaamd cluster01. Dit knooppunt (waar we de opdracht uitvoeren) wordt het master knooppunt van het cluster.

pvecm create cluster01

Een knooppunt aan een cluster toevoegen

Gebruik de addnode opdracht om nieuwe knooppunten toe te voegen aan een bestaand Proxmox-cluster. Voer deze opdracht uit op een knooppunt dat u aan het cluster wilt toevoegen.

pvecm add <master-node-ip>

Voorbeeld:

Het toevoegen van de huidige Proxmox-host aan een cluster dat wordt beheerd door een master knooppunt met het IP-adres 192.168.101.121:

pvecm add 192.168.101.121

Een knooppunt uit een cluster verwijderen

Het delnode commando wordt gebruikt in Proxmox CLI om een node uit de cluster te verwijderen.

Syntax:

pvecm delnode <nodenaam>

Voorbeeld:

Het commando om de node met de naam pve-node2 uit de cluster te verwijderen is:

pvecm delnode pve-node2

Het weergeven van alle nodes in een cluster

Het commando om alle cluster nodes weer te geven en hun status, inclusief de node namen en IP-adressen, is:

pvecm nodes

Het instellen van de nieuwe master node

Je kunt een andere cluster node instellen als master in een Proxmox cluster:

pvecm setmaster <nodenaam>

Waar <nodenaam> de naam is van de node die je wilt aanwijzen als de master.

Het weergeven van de cluster status

Je kunt de status van een Proxmox cluster weergeven, inclusief informatie over de quorum, het aantal nodes en hun rollen.

pvecm status

Het instellen van het verwachte aantal nodes

Je kunt controleren hoeveel nodes nodig zijn om de quorum te bereiken in de cluster met het expected commando. Je kunt dit commando gebruiken wanneer sommige cluster nodes tijdelijk offline zijn om onderbrekingen te voorkomen. Quorum wordt gebruikt om split-brain situaties te vermijden wanneer verschillende cluster nodes conflicterende informatie hebben over de status van de cluster.

pvecm expected <aantal>

7. hamanager

De hamanager opdracht wordt gebruikt om de High Availability (HA) functie voor virtuele machines te beheren na het aanmaken van een Proxmox-cluster. Deze opdrachtregelhulpmiddel stelt je in staat om High Availability voor kritieke VMs te configureren en in te stellen hoe ze opnieuw moeten worden opgestart in een cluster als de node waarop ze draaien, uitvalt. De hamanager tool in Proxmox CLI interacteert met de Proxmox High Availability Manager.

Syntax:

ha-manager <command> [options]

Status bekijken

Om de huidige status van de HA-resources te bekijken, kun je de opdracht gebruiken:

ha-manager status

De uitvoer toont informatie over welke VMs of CTs zijn geconfigureerd voor HA, hun huidige status (gestart, gestopt), inclusief de HA-status en failover-status, en op welke node ze draaien.

HA inschakelen voor een VM

Syntax:

ha-manager add <vmid> --group <groupname> --max-restarts <n> --max-migrate-tries <n>

Waar:

<vmid> is de ID van de VM of CT die je aan HA wilt toevoegen.

group <groupname> is de HA-groep waaraan de resource moet worden toegevoegd (optioneel).

max-restarts <n> is het maximale aantal herstartpogingen als de resource uitvalt.

max-migrate-tries <n> is het maximale aantal migratiepogingen naar een andere node als de resource niet kan worden herstart.

Voorbeeld:

Een VM met ID 105 toevoegen aan de HA-manager met een maximum van 3 herstartpogingen en 1 migratiepoging in geval van een fout:

ha-manager add 105 --max-restarts 3 --max-migrate-tries 1

De HA-status van een VM uitschakelen

Gebruik het remove commando om de hoge beschikbaarheidsstatus van een virtuele machine uit te schakelen en de VM uit de HA-manager te verwijderen.

ha-manager remove <vmid>

Bijvoorbeeld, om de HA-status voor de VM met ID 105 uit te schakelen, voer het commando uit:

ha-manager remove 105

Na het uitvoeren van het commando, zal de VM niet langer worden beheerd als een hoog beschikbare bron.

VM-migratie

U kunt handmatig een hoog beschikbare VM migreren naar een andere node in de cluster met het migrate commando:

ha-manager migrate <vmid> <targetnode>

Bijvoorbeeld, om een VM met ID 106 te migreren naar een node genaamd pve-node2, voer het commando uit:

ha-manager migrate 106 pve-node2

8. vzdump

Het vzdump commando wordt gebruikt om back-ups te maken in Proxmox VE met native Proxmox-tools. Dit commando ondersteunt het maken van back-ups van VMs en containers. Back-ups kunnen worden opgeslagen in .vma, .tgz of .lzo formaat.

Syntax:

vzdump [options] <vmid> [<vmid2> ...]

Waar:

vmid is de ID van een VM of container die u wilt back-uppen.

modus <modus> definieert de back-up modus. Er zijn drie ondersteunde back-up modi:

  • snapshot – maakt een live snapshot van een Proxmox virtuele machine of container. Deze modus wordt standaard gebruikt en stelt u in staat een back-up uit te voeren wanneer een VM of container actief is.
  • suspend – deze modus wordt gebruikt om de VM of container te pauzeren voordat er een back-up wordt gemaakt, wat ervoor zorgt dat de gegevens consistent zijn. Korte downtime veroorzaakt door deze modus is een nadeel.
  • stop – stopt de virtuele machine of container voordat de back-up wordt uitgevoerd. Deze aanpak stelt u in staat de consistentie van de back-upgegevens te behouden, maar vereist een langere downtime.

comprimeren <type> wordt gebruikt om de compressiemethode te specificeren. Er zijn drie ondersteunde compressieopties:

  • lzo – lichte en snelle compressie voor Proxmox back-up (standaard gebruikt).
  • gzip – dit is een efficiëntere compressiemethode maar kost meer tijd om gegevens te comprimeren (langzamere compressie).
  • zstd – Dit compressietype maakt gebruik van een modern compressiealgoritme dat hoge compressieverhoudingen biedt met optimale prestaties.

opslag <opslag> specificeert het opslagdoel voor het back-upbestand. Dit kan een lokale directory zijn, een NFS-share of een Proxmox-opslagpool.

maxbestanden <n> beperkt het aantal back-upbestanden dat behouden moet blijven. Oudere back-ups worden automatisch verwijderd als het limiet is bereikt.

verwijder <modus> verwijdert automatisch back-upbestanden volgens de opgegeven modus. Modussen omvatten:

  • oud – verwijdert oude back-ups wanneer nieuwe worden aangemaakt.
  • falen – verwijdert alleen mislukte back-ups.

Maak back-up van meerdere VM’s

Maak back-up van VM’s met de ID’s 101, 102 en 103 sequentieel:

vzdump 101 102 103

Bewaar back-up met compressie

vzdump 101 --storage local --compress gzip --maxfiles 3

De vzdump opdracht met deze opties voert de volgende acties uit:

  • Bewaar de back-up van VM 101 naar de opslag genaamd local. Lokale opslag kan een lokale map op een Proxmox-host of een opslagpool zijn.
  • De gzip compressie wordt gebruikt. Het aanmaken van een back-up die versleuteld is met gzip compressie kan langer duren, maar je eindigt met een kleinere back-upbestand.
  • Er worden alleen de 3 meest recente back-ups bewaard, terwijl oudere automatisch worden verwijderd.

Logbestanden uitsluiten

vzdump 102 --exclude-path /var/log

Maakt een back-up van VM 102 maar sluit de /var/log map uit, waardoor de grootte van de back-up wordt verminderd door logbestanden weg te laten.

Verwijder oude back-ups

vzdump 101 --storage nfs-backup --maxfiles 5 --remove old

Dit is een geautomatiseerde back-up met het verwijderen van oude back-ups. Het maakt een back-up van VM 101, slaat de back-up op in de nfs-backup opslag en behoudt alleen de 5 meest recente back-ups, waarbij eventuele oudere back-ups automatisch worden verwijderd.

Maak een back-up in snapshotmodus

vzdump --all --mode snapshot --storage nfs-backup --bwlimit 20480 --remove old --maxfiles 7

Het maken van back-ups (zoals een nachtelijke back-up) van alle VM’s en containers met behulp van de snapshot back-upmodus. De back-ups worden opgeslagen op een NFS-share genaamd nfs-backup. De bandbreedte is beperkt tot 20480 Kbytes per seconde (20 MBps) om overbelasting van het netwerk te voorkomen. Alleen de laatste 7 back-ups worden behouden en oudere back-ups worden automatisch verwijderd.

9. qmrestore

De qmrestore opdracht wordt gebruikt om virtuele machines te herstellen van back-ups die zijn gemaakt met de vzdump opdracht in de Proxmox virtuele omgeving. Deze vzdump en qmrestore opdrachten zijn native Proxmox tools voor VM back-up en herstel. Een back-up kan worden hersteld naar een nieuwe of bestaande VM.

Syntax:

qmrestore [opties] <backupbestand> <vmid>

Waar:

<backupbestand> is het pad naar het back-upbestand dat u wilt herstellen. Dit bestand wordt meestal gegenereerd door de vzdump opdracht en opgeslagen in een directory of op een netwerkopslagapparaat.

<vmid> is de ID van de VM die u wilt herstellen. Als de VM ID al bestaat, wordt de bestaande VM overschreven, tenzij specifieke opties worden gebruikt om dit te voorkomen.

Opdrachtopties:

force wordt gebruikt om een bestaande VM met dezelfde ID te overschrijven, en er is geen bevestigingsvraag. U kunt deze optie gebruiken om een VM te herstellen wanneer u het niet erg vindt om de huidige staat van de virtuele machine met dezelfde ID te verliezen.

unique wordt gebruikt om een nieuwe, unieke VM-ID te genereren voor een herstelde VM. Overweeg deze optie te gebruiken om een back-up te herstellen door een nieuwe VM te creëren zonder bestaande VM’s te overschrijven.

storage <storage> specificeert de doellocatie voor virtuele schijfimages van de herstelde VM. Als deze optie niet is opgegeven, wordt de VM hersteld naar de oorspronkelijke opslag of naar de standaardopslag.

pool <pool> stelt u in staat om de herstelde VM aan een specifieke resourcepool in de Proxmox-virtuele omgeving toe te wijzen. Resourcepools worden gebruikt om virtuele machines te groeperen voor gemakkelijker beheer.

hostname <name> stelt de hostnaam van de herstelde VM in. Deze optie is nuttig als u een andere hostnaam voor de herstelde VM wilt instellen dan de oorspronkelijke hostnaam.

name <name> stelt een aangepaste naam in voor de herstelde VM (een naam die wordt weergegeven in de Proxmox-gebruikersinterface), anders dan de oorspronkelijke VM-naam die werd geback-upt.

Herstel VM naar oorspronkelijke ID

Een VM herstellen naar zijn oorspronkelijke ID:

qmrestore /var/lib/vz/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 101

Dit commando herstelt het back-up bestand vzdump-qemu-101-2023_08_27-00_00_00.vma naar de VM met ID 101. Als er al een VM met ID 101 bestaat, zal deze worden overschreven.

Herstel back-up naar nieuwe VM

Het herstellen van de back-up naar een nieuwe VM:

qmrestore /mnt/pve/nfs-backup/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 102 --storage local-lvm

Dit commando herstelt de back-up naar een nieuwe VM met ID 102, waarbij de schijfbeelden worden opgeslagen op de local-lvm opslag.

Herstel en wijzig hostnaam en VM naam

Het herstellen van de back-up en het wijzigen van de hostnaam en naam:

qmrestore /mnt/pve/nfs-backup/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 103 --hostname restored-vm --name "MyRestoredVM"

Herstelt de back-up naar een nieuwe VM met ID 103, hernoemt de VM naar MyRestoredVM en stelt de hostnaam in op restored-vm.

10. proxmox-backup-client

Het proxmox-backup-client commando is een commandoregelhulpmiddel dat wordt gebruikt in combinatie met Proxmox Backup Server, een native Proxmox back-up oplossing, gebruikt voor back-up en hersteloperaties. Dit hulpmiddel stelt beheerders in staat om virtuele machines, containers en andere soorten gegevens te beschermen. Het proxmox-backup-client hulpmiddel werkt samen met een Proxmox Backup Server (PBS) om back-ups te beheren

Syntax:

proxmox-backup-client <command> [options]

De basis syntaxis van het back-up commando

proxmox-backup-client backup <archief-naam> <pad> --repository <repository> [opties]

Waar:

<archief-naam> is de naam die je aan het back-uparchief wilt geven.

<pad> definieert het pad naar de directory of het bestand dat je wilt back-uppen.

repository <repository> is de doelrepository op de Proxmox Backup Server, meestal in de vorm van gebruiker@pbs:datastore

Voorbeeld:

proxmox-backup-client backup etc.pxar /etc --repository root@[email protected]:datastore1

Deze opdracht maakt een back-up van de /etc directory naar de datastore1 op de Proxmox Backup Server gelegen op 10.10.10.101. De back-up wordt opgeslagen als een archief genaamd etc.pxar.

De basis-syntaxis van de herstelopdracht

De herstelopdracht voor de proxmox-backup-client commandoregeltools wordt gebruikt om gegevens van een Proxmox Backup Server naar het lokale systeem te herstellen.

proxmox-backup-client restore <archief-naam> <pad> --repository <repository> [opties]

Waar:

<archief-naam> is de naam van het archief dat je wilt herstellen.

<pad> is het pad waar de gegevens hersteld moeten worden.

repository <repository> is de repository waar de back-up is opgeslagen.

Voorbeeld:

proxmox-backup-client restore etc.pxar /restore/etc --repository root@[email protected]:datastore1

Dit commando herstelt het etc.pxar archief van datastore1 op de Proxmox Backup Server op 10.10.10.101 naar de lokale directory /restore/etc.

Conclusie

Proxmox CLI-commando’s zijn een krachtige set tools voor het beheren van de Proxmox virtuele omgeving, inclusief opslag, virtuele machines, clusters, VM-backup, enzovoort. Als je een uitgebreide VM-backupstrategie wilt implementeren, installeer dan NAKIVO Backup & Replication en gebruik de agentloze backupfunctionaliteit voor Proxmox VE VM’s.

Source:
https://www.nakivo.com/blog/top-10-proxmox-cli-commands-every-admin-should-know/