10 najważniejszych poleceń CLI Proxmox, które każdy administrator powinien znać
Środowiskiem wirtualnym Proxmox (VE) można zarządzać za pomocą przyjaznego dla użytkownika interfejsu graficznego w przeglądarce internetowej. Jednak w niektórych sytuacjach lepiej jest skorzystać z interfejsu wiersza poleceń (CLI). Interfejs CLI oferuje takie zalety, jak bardziej szczegółowa konfiguracja, przetwarzanie wsadowe, tworzenie skryptów i automatyzacja.
Do administracji środowiskami wirtualnymi Proxmox służą zarówno standardowe polecenia systemu Linux, jak i polecenia specyficzne dla Proxmox. W tym wpisie na blogu omówiono 10 najważniejszych poleceń specyficznych dla Proxmox wraz z przykładami, które pomogą w skutecznej administracji.
1. qm
Polecenie qm jest jednym z głównych poleceń interfejsu CLI Proxmox, a qm to skrót od QEMU Manager. Służy ono do zarządzania maszynami wirtualnymi (VM) w środowisku wirtualnym Proxmox (Proxmox VE). Maszyny wirtualne w Proxmox są oparte na QEMU/KVM, a polecenie qm współdziała z nimi. Za pomocą tego polecenia można tworzyć, edytować, konfigurować, uruchamiać, zatrzymywać i migrować maszyny wirtualne.
Ogólna składnia polecenia jest następująca:
qm [options] <command> [arguments]
Wyświetlanie listy maszyn wirtualnych
Można sprawdzić status i identyfikator (ID) maszyny wirtualnej. Identyfikator może być potrzebny do zarządzania tą maszyną wirtualną w interfejsie CLI Proxmox.
qm list

Tworzenie nowej maszyny wirtualnej
Ogólna składnia:
qm create <vmid> [options]
Przykład:
qm create 103 --name "DebianVM" --memory 2048 --net0 virtio,bridge=vmbr0 --sockets 1 --cores 2 --ostype l26
Poniższe polecenie CLI Proxmox tworzy maszynę wirtualną o nazwie „ID 103” o nazwie „DebianVM” z 2 GB pamięci RAM, 1 gniazdem, 2 rdzeniami oraz interfejsem sieciowym Virtio połączonym mostkowo z vmbr0. Typ systemu operacyjnego to Linux (wskazany przez l26).
Podłączanie dysku do maszyny wirtualnej
qm set 105 --scsi0 local-lvm:32G
Podłącza dysk o pojemności 32 GB do maszyny wirtualnej za pomocą interfejsu SCSI.
Podłączanie napędu CD-ROM w celu instalacji systemu operacyjnego
qm set 105 --ide2 local:iso/debian-10.7.0-amd64-netinst.iso,media=cdrom
Polecenie to podłącza obraz ISO Debiana do napędu CD-ROM IDE maszyny wirtualnej w celu instalacji systemu operacyjnego gościa lub w innych celach.
Konfiguracja kolejności rozruchu
qm set 105 --boot order=ide2;scsi0
Polecenie użyte w tym przykładzie konfiguruje maszynę wirtualną tak, aby najpierw uruchamiała się z napędu CD-ROM (IDE2), a następnie z dysku (SCSI0).
Uruchamianie maszyny wirtualnej
Składnia:
qm start <vmid>
Przykład:
qm start 103
Uruchamianie maszyny wirtualnej za pomocą ID 103
Zatrzymywanie maszyny wirtualnej
qm stop <vmid>
To polecenie natychmiast zatrzymuje działającą maszynę wirtualną. Ten sposób zatrzymania maszyny wirtualnej jest taki sam, jak wyjęcie wtyczki z gniazdka w przypadku maszyny fizycznej.
qm stop 103
Zatrzymywanie maszyny wirtualnej za pomocą ID 103.
Wyłączanie maszyny wirtualnej w interfejsie CLI Proxmox
qm shutdown <vmid>
Polecenie to wyłącza maszynę wirtualną w sposób kontrolowany, umożliwiając systemowi operacyjnemu gościa prawidłowe zamknięcie plików i zakończenie procesów.
qm shutdown 101
Wysyłanie sygnału wyłączenia do maszyny wirtualnej za pomocą ID 101.

Migracja maszyny wirtualnej do innego węzła
qm migrate <vmid>
<targetnode>
Polecenie to migruje maszynę wirtualną z bieżącego węzła do innego węzła w ramach tego samego klastra Proxmox.
Na przykład, aby przenieść maszynę wirtualną o adresie ID 103 na node2, możemy użyć polecenia:
qm migrate 103 node2
Tworzenie migawki maszyny wirtualnej
qm snapshot <vmid>
<snapshotname>
Polecenie to tworzy migawkę maszyny wirtualnej, rejestrując jej aktualny stan, w tym stan pamięci, dysku i urządzeń.
qm snapshot 103 "before_upgrade"
Polecenie to tworzy migawkę maszyny wirtualnej o adresie ID 103 i nadaje jej nazwę "before_upgrade". Użycie polecenia do utworzenia migawki jest przydatne przed wykonaniem ryzykownych operacji, takich jak aktualizacje oprogramowania.
Przywracanie stanu maszyny wirtualnej z migawki
qm rollback <vmid>
<snapshotname>
To polecenie cofa maszynę wirtualną do poprzedniej migawki, przywracając jej stan do momentu, gdy migawka została zrobiona.
Na przykład, jeśli aktualizacja oprogramowania wewnątrz maszyny wirtualnej zakończyła się niepowodzeniem, możemy przywrócić jej stan za pomocą polecenia:
qm rollback 103 "before_upgrade"
Wszelkie zmiany dokonane od czasu zrobienia migawki zostaną odrzucone (cofnięte).
Klonowanie maszyny wirtualnej
qm clone <vmid>
<newid> [--name <newname>] [--full]
Polecenie qm clone klonuje istniejącą maszynę wirtualną, tworząc nową maszynę wirtualną z innym ID. Możesz wybrać klonowanie całego dysku (pełne klonowanie) lub tylko powiązaną pamięć maszową.
qm clone 103 104 --name "DebianClone" --full
To polecenie klonuje maszynę wirtualną z ID 103 do nowej maszyny wirtualnej z ID 104, nadając jej nazwę "DebianClone". Opcja --full tworzy pełny klon, kopiując wszystkie dane.
Zmiana rozmiaru dysku maszyny wirtualnej
qm resize <vmid>
<disk>
<size>
Polecenie qm resize używane jest do zmiany rozmiaru dysku wirtualnego podłączonego do maszyny wirtualnej, czy to poprzez jego rozszerzenie, czy zmniejszenie. Upewnij się, że system operacyjny gościa może obsłużyć tę zmianę.
qm resize 103 scsi0 +10G
To polecenie CLI Proxmox zwiększa rozmiar dysku scsi0 na maszynie wirtualnej z ID 103 o 10GB.
2. pve-firewall
Polecenie pve-firewall używane jest do zarządzania ustawieniami zapory sieciowej w środowisku wirtualnym Proxmox, w tym w klastrach Proxmox. To polecenie CLI Proxmox zapewnia przyjazne opcje konfiguracji reguł zapory sieciowej i pozwala administratorom kontrolować ruch sieciowy do i z węzłów Proxmox, maszyn wirtualnych oraz kontenerów. Zapora Proxmox ściśle integrowana z interfejsem zarządzania Proxmox, ułatwia zarządzanie zaporą w całym środowisku Proxmox. Narzędzie pve-firewall zostało opracowane specjalnie dla Proxmox VE i używa abstrakcji wysokiego poziomu do zarządzania regułami zapory w porównaniu z bardziej szczegółowym i ręcznym podejściem używanym w iptables.
Składnia:
pve-firewall <command> [options]
Uruchom polecenie pve-firewall aby zobaczyć główne informacje użycia.
Sprawdzanie statusu
Sprawdzanie statusu usługi zapory Proxmox VE:
pve-firewall status
Wynik wyświetla, czy zapora działa na bieżącym węźle.
Uruchamianie zapory
Uruchamianie usługi zapory na bieżącym węźle Proxmox:
pve-firewall start
Przeładowanie zapory
Przeładowanie usługi zapory i zastosowanie nowych ustawień zapory bez potrzeby zatrzymywania i ponownego uruchamiania usługi zapory.
pve-firewall reload
Akceptowanie ruchu SSH
Tworzenie reguły zapory, która akceptuje ruch SSH:
pve-firewall create rule -action accept -macro ssh
To polecenie tworzy regułę, która zezwala na dostęp SSH do środowiska Proxmox.
Gdzie: create <object> tworzy nowy obiekt firewalla, taki jak reguła, grupa bezpieczeństwa lub zestaw IP.
Usuń regułę
Aby usunąć regułę, użyj polecenia:
pve-firewall delete rule <rule-id>
Pokaż log
Pokaż dziennik firewalla, który pokazuje ruch sieciowy i dopasowania reguł:
pve-firewall log
Wynik wyświetla najnowsze wpisy z dziennika firewalla.
Zablokuj ruch HTTP
Aby utworzyć regułę firewalla, która blokuje dowolny ruch HTTP, użyj polecenia:
pve-firewall create rule -action drop -macro http
3. pvesm
Polecenie pvesm w Proxmox CLI to narzędzie wiersza poleceń używane do zarządzania konfiguracją magazynu w Proxmox VE. Z pomocą tego narzędzia można tworzyć, usuwać, modyfikować i zarządzać pulami magazynowymi. Dodatkowo można wykonywać różne zadania związane z magazynem, takie jak tworzenie katalogów, dodawanie urządzeń magazynowych i zarządzanie typami zawartości.
Składnia:
pvesm <command> [options]
Lista magazynów
pvesm list <storage>
Gdzie to nazwa puli magazynowej (magazyn danych) do wyświetlenia.
<storage>

Sprawdzanie statusu wszystkich lub określonych pul magazynowych
pvesm status
Wynik wyświetla status puli magazynowej, łącznie z informacjami o tym, czy jest aktywna czy nieaktywna, typie magazynu i bieżącym wykorzystaniu.

Tworzenie nowej puli magazynowej
pvesm create <type> <storage-id> --options
Gdzie:
to typ backendu magazynowego do utworzenia (na przykład, dir, lvm, nfs, zfs).
<type>
<storage-id> to unikalna nazwa lub ID dla puli magazynowej.
--options definiuje dodatkowe opcje specyficzne dla typu magazynu.
Przykład:
Tworzenie nowej puli magazynowej opartej na katalogu o nazwie new-datastore1 zlokalizowanej w /mnt/storage-name, która może przechowywać obrazy VM i pliki ISO:
pvesm create dir new-datastore1 --path /mnt/storage-name --content images,iso
Dodawanie istniejącego backendu magazynowego do Proxmox VE
Zasada działania tego polecenia jest podobna do polecenia pvesm create, ale zamiast tworzenia nowego magazynu, magazyn, który już istnieje, jest dodawany do konfiguracji Proxmox, aby go udostępnić.
Przykład:
Dodawanie istniejącego udziału NFS zlokalizowanego w 192.168.101.100 w /export/data do Proxmox VE pod nazwą 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
Modyfikacja konfiguracji istniejącej puli magazynowej
pvesm set <storage-id> --options
Przykład:
Modyfikacja puli local-storage01 w celu umożliwienia przechowywania plików VM, ISO i kopii zapasowych:
pvesm set local-storage01 --content images,iso,backup
Alokowanie nowego woluminu na określonej puli magazynowej dla VM lub kontenera
pvesm alloc <storage-id>
<vmid>
<size>
Przykład:
Polecenie alokowania woluminu 10 GB na puli local-storage-name dla VM 100:
pvesm alloc local-storage-name 100 10G
4. pveum
Proxmox Virtual Environment pozwala tworzyć wielu użytkowników do zarządzania Proxmox VE. Można to zrobić za pomocą poleceń wiersza poleceń Proxmox, korzystając z polecenia pveum (zarządzanie użytkownikami). Administratorzy Proxmox mogą zarządzać użytkownikami i grupami oraz konfigurować kontrolę dostępu i uprawnienia. To z kolei określa, kto ma dostęp i może wykonywać operacje w różnych częściach infrastruktury Proxmox. Administratorzy mogą przypisywać uprawnienia dostępu do obiektów, takich jak maszyny wirtualne, magazyn, węzły klastra itp.
Składnia:
pveum <command> [options]
Dodawanie nowego użytkownika do Proxmox VE
pveum useradd <userid> --password <password> --comment <comment> --groups <group>
Gdzie:
--password <password> to hasło nowego użytkownika.
--comment <comment> to opcjonalny komentarz lub opis użytkownika.
--groups <group> to grupa (lub grupy), do której użytkownik powinien należeć.
Przykład:
pveum useradd user2@pve --password UserSecretPassword111 --comment "user2 – admin group" --groups admin
Polecenie to służy do dodania użytkownika o nazwie user2 do grupy admin z opisem oraz ustawieniem hasła dla tego użytkownika.
Usuwanie użytkownika
Aby usunąć użytkownika, należy użyć polecenia pveum zgodnie z tą samą logiką, co w przypadku dodawania użytkownika, na przykład:
pveum userdel user3@pve
Polecenie to służy do usunięcia user3 na hoście Proxmox.
Tworzenie grupy
Aby utworzyć nową grupę w CLI Proxmox, należy użyć polecenia groupadd.
Składnia:
pveum groupadd <groupname> --comment <comment>
Przykład:
pveum groupadd support --comment "Support Team Group"
Polecenie to tworzy nową grupę o nazwie support z opisem "Support Team Group".
Usuwanie grupy
Podobnie jak w przypadku usuwania użytkownika, można usunąć grupę. Na przykład, aby usunąć grupę guests, można użyć polecenia:
pveum groupdel guests
Dodawanie ról
Role służą do definiowania zestawu uprawnień dla użytkowników i grup, którym ta rola jest przypisana.
Składnia:
pveum roleadd <rolename> --privs <privileges>
Gdzie:
to nazwa roli, którą chcesz utworzyć.
<rolename>
--privs <privileges> to rozdzielona przecinkami lista uprawnień, które chcesz przypisać do roli (na przykład VM.PowerMgmt,VM.Config.Disk).
Przykład:
pveum roleadd vmmanager --privs VM.PowerMgmt,VM.Config.CDROM
To polecenie tworzy rolę o nazwie vmmanager z uprawnieniami do zarządzania ustawieniami zasilania maszyn wirtualnych i konfigurowania napędów CD-ROM.
Modyfikowanie istniejącej roli
Administratorzy mogą modyfikować istniejące role i uprawnienia za pomocą polecenia rolemod (dodawać lub usuwać uprawnienia).
Składnia:
pveum rolemod <rolename> --privs <privileges>
Przykład:
pveum rolemod vmmanager --privs +VM.Config.Network
Polecenie to dodaje uprawnienie VM.Config.Network do roli vmmanager.
Modyfikowanie listy ACL
Administratorzy Proxmox mogą modyfikować listy kontroli dostępu (ACL), przypisując role do użytkowników lub grup w odniesieniu do określonych obiektów Proxmox.
Składnia:
pveum aclmod <path> --roles <rolename> --users <userid> --groups <groupname>
Gdzie:
to ścieżka obiektu, dla którego ma zostać ustawiona lista ACL (na przykład /vms/100 dla konkretnej maszyny wirtualnej lub / dla całego klastra).
<path>
--roles <rolename> to rola, która ma zostać przypisana.
--users <userid> to użytkownik, któremu przypisywana jest rola. --groups <groupname> to grupa, której przypisano tę rolę.
Przykład:
pveum aclmod /vms/104 --roles vmmanager --users user4@pve
Polecenie to przypisuje rolę vmmanager do konta user4@pve na maszynie wirtualnej 104, umożliwiając użytkownikowi (user4) zarządzanie tą konkretną maszyną wirtualną zgodnie z uprawnieniami zawartymi w roli vmmanager. Polecenie aclremove służy do odpowiedniego usuwania list ACL z obiektów.
Zarządzanie obszarami uwierzytelniania
Obszar uwierzytelniania określa sposób, w jaki użytkownicy uwierzytelniają się w systemie (na przykład za pomocą PAM, LDAP lub Active Directory). Obszarami uwierzytelniania można zarządzać za pomocą polecenia realm w Proxmox VE.
Składnia:
pveum realm <command> [options]
Gdzie polecenie może być:
list w celu wyświetlenia listy wszystkich dostępnych obszarów
add w celu dodania nowego obszaru
modify w celu modyfikacji istniejącego obszaru
remove w celu usunięcia istniejącego obszaru
Na przykład, aby wyświetlić listę wszystkich obszarów uwierzytelniania skonfigurowanych w Proxmox VE, należy użyć polecenia:
pveum realm list

Zarządzanie istniejącymi użytkownikami
Za pomocą tego polecenia można wyświetlać listę, edytować i usuwać istniejących użytkowników.
Składnia:
pveum user <command>
<userid> [options]
Polecenia mogą być następujące:
list w celu wyświetlenia listy wszystkich użytkowników
modify w celu modyfikacji danych użytkownika, takich jak zmiana hasła lub aktualizacja komentarza
delete w celu usunięcia użytkownika
Na przykład, aby wyświetlić listę wszystkich użytkowników na hoście Proxmox, użyj polecenia:
pveum user list
Aby zobaczyć więcej dostępnych poleceń i opcji, uruchom polecenie pveum help w interfejsie CLI Proxmox.
5. pvesh
Korzystając z polecenia pvesh, administratorzy mogą wchodzić w interakcje z REST API Proxmox. To narzędzie wiersza poleceń umożliwia wykonywanie prawie wszystkich czynności dostępnych przez interfejs webowy Proxmox bezpośrednio z CLI Proxmox. Polecenie pvesh działa jako powłoka dla REST API Proxmox VE, pozwalając na wykonywanie wywołań API za pomocą poleceń bezpośrednio z linii poleceń. Za pomocą tego polecenia można zarządzać maszynami wirtualnymi, magazynem, siecią oraz innymi elementami wirtualnej infrastruktury Proxmox.
Składnia:
pvesh <command> [options]
Listowanie zasobów lub końcówek API
To polecenie jest podobne do polecenia ls w systemie Linux, ale listuje dostępne ścieżki API lub zasoby w środowisku Proxmox VE.
pvesh ls /path
Przykład:
pvesh ls /cluster/resources
To polecenie listuje wszystkie zasoby w klastrze Proxmox, w tym maszyny wirtualne, kontenery i magazyn.
Pobieranie informacji
Polecenie get pobiera informacje z konkretnej końcówki API. To polecenie jest używane do zapytania o szczegóły zasobu.
pvesh get /path
Gdzie path to ścieżka API, z której chcemy pobrać informacje.
Na przykład, aby pobrać informacje o statusie dla węzła pve-node1, takie jak obciążenie procesora, użycie pamięci i czas działania, można użyć polecenia:
pvesh get /nodes/pve-node1/status

Modyfikowanie konfiguracji
Polecenie set jest używane do modyfikowania lub aktualizacji konfiguracji zasobu. Jest to równoważne wykonaniu żądań POST lub PUT w REST API.
Składnia:
pvesh set /path --key value [--key value ...]
--key wartość to pary klucz-wartość ustawień, które chcemy zmienić.
Przykład:
pvesh set /nodes/pve-node1/qemu/100/config --name new-vm-name
To polecenie zmienia nazwę maszyny wirtualnej 100 na węźle pve-node1 na new-vm-name.
Tworzenie zasobu
Polecenie tworzenie pozwala na utworzenie nowego zasobu, takiego jak nowa maszyna wirtualna lub wolumin magazynu.
Składnia:
pvesh create /path --key value [--key value ...]
Na przykład, tworzymy nową maszynę wirtualną z określonymi parametrami za pomocą polecenia:
pvesh create /nodes/pve-node1/qemu --vmid 106 --name new-vm-name --memory 2048 --cores 2
To polecenie tworzy nową maszynę wirtualną z ID 106 na węźle pve-node1, z nazwą new-vm-name, 2 GB RAM i 2 rdzeniami procesora.
Uruchamianie maszyn wirtualnych
Istnieje polecenie do uruchomienia maszyny wirtualnej lub kontenera za pomocą pvesh:
pvesh start /path
Na przykład, aby uruchomić maszynę wirtualną z ID 101 na węźle pve-node1, można wykonać polecenie:
pvesh start /nodes/pve-node1/qemu/101
Wyłączanie maszyn wirtualnych
W przeciwieństwie do polecenia stop, polecenie shutdown zamyka maszynę wirtualną lub kontener łagodnie:
pvesh shutdown /path
Na przykład, aby zamknąć maszynę wirtualną z ID 101 na hostu Proxmox, której nazwa to pve-node1, użyj polecenia: pvesh shutdown /nodes/pve-node1/qemu/101
Uruchamianie wszystkich maszyn wirtualnych
Aby uruchomić lub zatrzymać wszystkie maszyny wirtualne na węźle lub w całym klastrze, można użyć odpowiedniego polecenia:
pvesh startall /nodes/<nodename>
pvesh stopall /nodes/<nodename>
6. pvecm
Polecenie pvecm jest narzędziem do zarządzania klastrem Proxmox, które służy do zarządzania i konfiguracji klastra Proxmox. Możesz użyć tego narzędzia do utworzenia klastra, a także do dołączenia i zarządzania węzłami w klastrze Proxmox. Klaster jest zarządzany jako pojedyncza jednostka z funkcjami konfiguracyjnymi, takimi jak Wysoka Dostępność, migracja maszyn wirtualnych na żywo, współdzielona pamięć masowa, itp.
Składnia:
pvecm <command> [options]
Aby zobaczyć wszystkie obsługiwane polecenia pvecm, uruchom to polecenie:
man pvecm
Tworzenie klastra
Aby utworzyć nowy klaster Proxmox VE, można użyć polecenia create. Należy uruchomić to polecenie na pierwszym węźle (węzeł główny), który będzie tworzył klaster.
pvecm create <clustername>
Przykład:
Poniższe polecenie tworzy klaster o nazwie cluster01. Ten węzeł (gdzie uruchamiamy polecenie) stanie się węzłem głównym klastra.
pvecm create cluster01
Dodawanie węzła do klastra
Użyj polecenia addnode, aby dodać nowe węzły do istniejącego klastra Proxmox. Uruchom to polecenie na węźle, który chcesz dodać do klastra.
pvecm add <master-node-ip>
Przykład:
Dodawanie bieżącego hosta Proxmox do klastra kontrolowanego przez węzeł główny o adresie IP 192.168.101.121 :
pvecm add 192.168.101.121
Usuwanie węzła z klastra
Polecenie delnode służy w interfejsie CLI Proxmox do usuwania węzła z klastra.
Składnia:
pvecm delnode <nodename>
Przykład:
Polecenie służące do usunięcia węzła o nazwie pve-node2 z klastra brzmi:
pvecm delnode pve-node2
Wyświetlanie listy wszystkich węzłów klastra
Polecenie służące do wyświetlania listy wszystkich węzłów klastra oraz ich stanów, w tym nazw węzłów i adresów IP, brzmi:
pvecm nodes
Ustawianie nowego węzła głównego
Można ustawić inny węzeł klastra jako węzeł główny w klastrze Proxmox:
pvecm setmaster <nodename>
Gdzie to nazwa węzła, który chcesz wyznaczyć jako główny.
<nodename>
Wyświetlanie stanu klastra
Można wyświetlić stan klastra Proxmox, w tym informacje o kworum, liczbie węzłów i ich rolach.
pvecm status
Ustawianie oczekiwanej liczby węzłów
Można sprawdzić, ile węzłów jest oczekiwanych do osiągnięcia kworum w klastrze, za pomocą polecenia expected. Możesz potrzebować tego polecenia, gdy niektóre węzły klastra są tymczasowo offline, aby uniknąć zakłóceń. Kworum jest używane, aby uniknąć sytuacji typu split-brain, kiedy różne węzły klastra mają sprzeczne informacje o stanie klastra. pvecm expected <number>
7. menedżer ha
nPolecenie hamanager służy do zarządzania funkcją wysokiej dostępności (HA) maszyn wirtualnych po utworzeniu klastra Proxmox. To narzędzie wiersza poleceń pozwala skonfigurować wysoką dostępność dla krytycznych maszyn wirtualnych oraz określić sposób ich ponownego uruchamiania w klastrze w przypadku awarii węzła, na którym działają. Narzędzie hamanager w interfejsie CLI Proxmox współpracuje z menedżerem wysokiej dostępności Proxmox.
Składnia:
ha-manager <command> [options]
Wyświetlanie stanu
Aby wyświetlić aktualny stan zasobów HA, można użyć polecenia:
ha-manager status
Wynik wyświetla informacje o tym, które maszyny wirtualne lub kontenery są skonfigurowane dla HA, ich aktualny stan (uruchomione, zatrzymane), w tym stan HA i Tryb failover, oraz na którym węźle działają.
Włączanie HA dla maszyny wirtualnej
Składnia:
ha-manager add <vmid> --group <groupname> --max-restarts <n> --max-migrate-tries <n>
Gdzie:
to identyfikator maszyny wirtualnej lub kontenera, który chcesz dodać do HA.
<vmid>
--group <groupname> to grupa HA, do której zasób powinien zostać dodany (opcjonalnie).nn--max-restarts <n> to maksymalna liczba prób ponownego uruchomienia w przypadku awarii zasobu.
--max-migrate-tries <n> to maksymalna liczba prób migracji do innego węzła, jeśli zasób nie może zostać ponownie uruchomiony.
Przykład:
Dodawanie maszyny wirtualnej o adresie ID 105 do menedżera HA z maksymalnie 3 próbami ponownego uruchomienia i 1 próbą migracji w przypadku awarii:
ha-manager add 105 --max-restarts 3 --max-migrate-tries 1
Wyłączanie statusu HA maszyny wirtualnej
Użyj polecenia remove aby wyłączyć status wysokiej dostępności maszyny wirtualnej i usunąć ją z menedżera HA.
ha-manager remove <vmid>
Na przykład, aby wyłączyć status HA dla maszyny wirtualnej o adresie ID 105, uruchom polecenie:
ha-manager remove 105
Po uruchomieniu polecenia maszyna wirtualna nie będzie już zarządzana jako zasób o wysokiej dostępności.
Migracja maszyn wirtualnych
Możesz ręcznie przenieść maszynę wirtualną o wysokiej dostępności na inny węzeł w klastrze za pomocą polecenia migrate:
ha-manager migrate <vmid>
<targetnode>
Na przykład, aby przenieść maszynę wirtualną o adresie ID 106 na węzeł o nazwie pve-node2, uruchom polecenie:
ha-manager migrate 106 pve-node2
8. vzdump
Polecenie vzdump służy do tworzenia kopii zapasowych w Proxmox VE przy użyciu natywnych narzędzi Proxmox. Polecenie to obsługuje tworzenie kopii zapasowych maszyn wirtualnych i kontenerów. Kopie zapasowe można zapisywać w formacie .vma, .tgz or .lzo.
Składnia:
vzdump [options] <vmid> [<vmid2> ...]
Gdzie:
vmid to identyfikator maszyny wirtualnej lub kontenera, którego kopię zapasową chcesz wykonać.
--mode <mode> określa tryb wykonywania kopii zapasowej. Obsługiwane są trzy tryby wykonywania kopii zapasowych:
snapshot– wykonuje migawkę na żywo maszyny wirtualnej lub kontenera Proxmox. Ten tryb jest domyślnie aktywny i umożliwia wykonanie kopii zapasowej podczas działania maszyny wirtualnej lub kontenera.suspend– ten tryb służy do zawieszenia maszyny wirtualnej lub kontenera przed wykonaniem kopii zapasowej, co pozwala zapewnić spójność danych. Wadą tego trybu jest krótki czas przestoju.stop– zatrzymuje maszynę wirtualną lub kontener przed wykonaniem kopii zapasowej. Takie podejście pozwala zachować spójność danych kopii zapasowej, ale wymaga dłuższego czasu przestoju.
--compress <type> służy do określenia metody kompresji. Obsługiwane są trzy opcje kompresji:
lzo– lekka i szybka kompresja dla kopii zapasowych Proxmox (używana domyślnie).gzip– jest to bardziej wydajna metoda kompresji, ale wymaga więcej czasu na skompresowanie danych (wolniejsza kompresja).zstd– ten typ kompresji wykorzystuje nowoczesny algorytm kompresji, zapewniający wysoki stopień kompresji przy optymalnej wydajności.
--storage <storage> określa lokalizację docelową pliku kopii zapasowej. Może to być katalog lokalny, udział NFS lub pula pamięci masowej Proxmox.
--maxfiles <n> ogranicza liczbę plików kopii zapasowych do zachowania. Starsze kopie zapasowe są automatycznie usuwane po osiągnięciu limitu.
--remove <mode> automatycznie usuwa pliki kopii zapasowych zgodnie z określonym trybem. Dostępne tryby to:
old– usuwa stare kopie zapasowe po utworzeniu nowych.fail– usuwa wyłącznie nieudane kopie zapasowe.
Tworzenie kopii zapasowej wielu maszyn wirtualnych
Tworzenie kopii zapasowej maszyn wirtualnych z IDs 101, 102 i 103 kolejno:
vzdump 101 102 103
Zapisywanie kopii zapasowej z kompresją
vzdump 101 --storage local --compress gzip --maxfiles 3
Polecenie vzdump z tymi opcjami wykonuje następujące czynności:
- Zapisuje kopię zapasową
VM 101do pamięci o nazwie local. Pamięcią lokalną może być lokalny katalog na hoście Proxmox lub pula pamięci masowej. - Stosowana jest kompresja
gzip. Tworzenie kopii zapasowej zaszyfrowanej przy użyciu kompresjigzipmoże potrwać dłużej, ale w rezultacie otrzymamy mniejszy plik kopii zapasowej. - Zachowywane są tylko 3 najnowsze kopie zapasowe, a starsze są automatycznie usuwane.
Pomiń pliki dziennika
vzdump 102 --exclude-path /var/log
Tworzy kopię zapasową maszyny wirtualnej 102, ale wyklucza /var/log directory, zmniejszając rozmiar kopii zapasowej poprzez pominięcie plików dziennika.
Usuń stare kopie zapasowe
vzdump 101 --storage nfs-backup --maxfiles 5 --remove old
Jest to automatyczna kopia zapasowa z usuwaniem starych kopii zapasowych. Tworzy kopie zapasową maszyny wirtualnej 101, zapisuje kopię zapasową w magazynie nfs-backup i zachowuje tylko 5 najnowszych kopii zapasowych, automatycznie usuwając starsze kopie zapasowe.
Kopia zapasowa w trybie migawki
vzdump --all --mode snapshot --storage nfs-backup --bwlimit 20480 --remove old --maxfiles 7
Tworzenie kopii zapasowych (np. nocnej kopii zapasowej) wszystkich maszyn wirtualnych i kontenerów za pomocą trybu kopii zapasowej migawkowej. Kopie zapasowe są zapisywane na udziale NFS o nazwie nfs-backup. Przepustowość jest ograniczona do 20480 Kbajtów na sekundę (20 MB/s), aby zapobiec przeciążeniu sieci. Zachowuje się tylko 7 ostatnich kopii zapasowych, a starsze kopie zapasowe są automatycznie usuwane.
9. qmrestore
Polecenie qmrestore służy do przywracania maszyn wirtualnych z kopii zapasowych utworzonych poleceniem vzdump w środowisku wirtualnym Proxmox. Te polecenia vzdump i qmrestore są natywnymi narzędziami Proxmox do tworzenia i odzyskiwania kopii zapasowych maszyn wirtualnych. Kopię zapasową można przywrócić do nowej lub istniejącej maszyny wirtualnej.
Składnia:
qmrestore [options] <backupfile>
<vmid>
Gdzie:
jest ścieżką do pliku kopii zapasowej, który chcesz przywrócić. Plik ten jest zazwyczaj tworzony przez polecenie
<backupfile>
vzdump i przechowywany w katalogu lub na urządzeniu magazynującym w sieci.
jest ID maszyny wirtualnej, którą chcesz przywrócić. Jeśli ID maszyny wirtualnej już istnieje, istniejąca maszyna wirtualna zostanie nadpisana, chyba że użyjesz określonych opcji, aby temu zapobiec.
<vmid>
Opcje polecenia:
--force służy do nadpisania istniejącej maszyny wirtualnej z tym samym ID i nie pojawia się żadne pytanie o potwierdzenie. Możesz użyć tej opcji, aby przywrócić maszynę wirtualną, gdy nie zależy Ci na utracie bieżącego stanu maszyny wirtualnej z tym samym ID.
--unique służy do generowania nowego, unikalnego ID dla przywróconej maszyny wirtualnej. Rozważ użycie tej opcji, aby przywrócić kopię zapasową, tworząc nową maszynę wirtualną bez nadpisywania istniejących maszyn wirtualnych.
--storage <storage> określa miejsce docelowe urządzenia magazynującego dla obrazów dysków wirtualnych przywróconych maszyn wirtualnych. Jeśli ta opcja nie jest określona, maszyna wirtualna zostanie przywrócona do oryginalnego magazynu lub do magazynu domyślnego.
--pool <pool> pozwala przypisać przywróconą maszynę wirtualną do określonej puli zasobów w środowisku wirtualnym Proxmox. Pula zasobów jest używana do grupowania maszyn wirtualnych dla łatwiejszego zarządzania.
--hostname <name> ustawia nazwę hosta dla przywróconej maszyny wirtualnej. Ta opcja jest przydatna, jeśli chcesz ustawić inną nazwę hosta dla przywróconej maszyny wirtualnej niż oryginalna nazwa hosta.
--name <name> ustawia niestandardową nazwę dla przywróconej maszyny wirtualnej (nazwę, która jest wyświetlana w interfejsie użytkownika Proxmox), różną od oryginalnej nazwy maszyny wirtualnej, z której zrobiono kopię zapasową.
Przywróć maszynę wirtualną do oryginalnego ID
Przywracanie maszyny wirtualnej do jej oryginalnego ID:
qmrestore /var/lib/vz/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 101
To polecenie przywraca plik kopii zapasowej vzdump-qemu-101-2023_08_27-00_00_00.vma do maszyny wirtualnej z ID 101. Jeżeli maszyna wirtualna z ID 101 już istnieje, zostanie nadpisana.
Odzyskaj kopię zapasową do nowej maszyny wirtualnej
Przywracanie kopii zapasowej do nowej maszyny wirtualnej:
qmrestore /mnt/pve/nfs-backup/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 102 --storage local-lvm
To polecenie przywraca kopię zapasową do nowej maszyny wirtualnej z ID 102, przechowując jej obrazy dysków w magazynie local-lvm.
Odzyskaj i zmień nazwę hosta oraz nazwy maszyny wirtualnej
Przywracanie kopii zapasowej i zmiana nazwy hosta i nazwy:
qmrestore /mnt/pve/nfs-backup/dump/vzdump-qemu-101-2023_08_27-00_00_00.vma 103 --hostname restored-vm --name "MyRestoredVM"
Przywraca kopię zapasową do nowej maszyny wirtualnej z ID 103, zmienia nazwę maszyny na MyRestoredVM i ustawia jej nazwę hosta na restored-vm.
10. proxmox-backup-client
Polecenie proxmox-backup-client to narzędzie wiersza poleceń używane w połączeniu z Proxmox Backup Server, natywnym rozwiązaniem do tworzenia kopii zapasowych Proxmox, używane do operacji tworzenia i przywracania kopii zapasowych. To narzędzie umożliwia administratorom ochronę maszyn wirtualnych, kontenerów i innych typów danych. Narzędzie proxmox-backup-client współpracuje z Proxmox Backup Server (PBS) w celu zarządzania kopiami zapasowymi
Składnia:
proxmox-backup-client <command> [options]
Podstawowa składnia polecenia kopii zapasowej
proxmox-backup-client backup <archive-name>
<path> --repository <repository> [options]
Gdzie:
<archive-name> to nazwa, którą chcesz nadać archiwum kopii zapasowej.
definiuje ścieżkę do katalogu lub pliku, który chcesz wykonać kopię zapasową.
<path>
--repository <repository> to docelowe repozytorium na Proxmox Backup Server, zazwyczaj w formie user@pbs:datastore
Przykład:
proxmox-backup-client backup etc.pxar /etc --repository root@pbs@10.10.10.101:datastore1
To polecenie tworzy kopię zapasową katalogu /etc do datastore1 na Proxmox Backup Server zlokalizowanej pod adresem 10.10.10.101. Kopia zapasowa jest przechowywana jako archiwum nazwane etc.pxar.
Podstawowa składnia polecenia przywracania
Polecenie przywracania dla narzędzi wiersza poleceń proxmox-backup-client jest używane do przywracania danych z Proxmox Backup Server na system lokalny.
proxmox-backup-client restore <archive-name>
<path> --repository <repository> [options]
Gdzie:
<archive-name> to nazwa archiwum, które chcesz przywrócić.
to ścieżka, gdzie dane mają zostać przywrócone.
<path>
--repository <repository> to repozytorium, gdzie kopia zapasowa jest przechowywana.
Przykład:
proxmox-backup-client restore etc.pxar /restore/etc --repository root@pbs@10.10.10.101:datastore1
To polecenie przywraca archiwum etc.pxar z datastore1 na Proxmox Backup Server pod adresem 10.10.10.101 do lokalnego katalogu /restore/etc.
Wniosek
Polecenia CLI Proxmox to potężny zestaw narzędzi do zarządzania środowiskiem wirtualnym Proxmox, w tym magazynem, maszynami wirtualnymi, klastrami, kopiami zapasowymi maszyny wirtualnej itp. Jeśli chcesz wdrożyć kompleksową strategię kopii zapasowych maszyn wirtualnych, zainstaluj NAKIVO Backup & Replication i wykorzystaj bezagentową możliwość tworzenia kopii zapasowych dla maszyn wirtualnych Proxmox VE.