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żą standardowe polecenia systemu Linux oraz polecenia specyficzne dla Proxmox. Ten wpis na blogu omawia 10 najważniejszych poleceń specyficznych dla Proxmox wraz z przykładami 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>
Polecenie to cofa maszynę wirtualną do poprzedniej migawki, przywracając jej stan do momentu wykonania migawki.
Na przykład, jeśli aktualizacja oprogramowania wewnątrz maszyny wirtualnej nie powiodła się i zakończyła się niepowodzeniem, możemy przywrócić stan maszyny wirtualnej za pomocą polecenia:
qm rollback 103 "before_upgrade"
Wszelkie zmiany wprowadzone od momentu wykonania 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ą o innym identyfikatorze. Można sklonować cały dysk (klonowanie pełne) lub tylko powiązaną pamięć masową.
qm clone 103 104 --name "DebianClone" --full
Polecenie to klonuje maszynę wirtualną o nazwie ID 103 do nowej maszyny wirtualnej o nazwie ID 104, nadając jej nazwę "DebianClone". Opcja --full tworzy klon pełny, kopiując wszystkie dane.
Zmiana rozmiaru dysku maszyny wirtualnej
qm resize <vmid>
<disk>
<size>
Polecenie qm resize służy do zmiany rozmiaru dysku wirtualnego podłączonego do maszyny wirtualnej poprzez jego powiększenie lub zmniejszenie. Należy upewnić się, że system operacyjny gościa obsługuje tę zmianę.
qm resize 103 scsi0 +10G
To polecenie CLI Proxmox zwiększa rozmiar dysku scsi0 na maszynie wirtualnej z ID 103 o 10 GB.
2. pve-firewall
Polecenie pve-firewall służy 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 sieciowa Proxmox jest ściśle zintegrowana z interfejsem zarządzania Proxmox i sprawia, że zarządzanie zaporą w całym środowisku Proxmox jest wygodniejsze. Narzędzie pve-firewall zostało opracowane specjalnie dla Proxmox VE i wykorzystuje abstrakcję wysokiego poziomu do zarządzania regułami zapory w porównaniu z bardziej szczegółowym i ręcznym podejściem stosowanym w iptables.
Składnia:
pve-firewall <command> [options]
Uruchom polecenie pve-firewall , aby wyświetlić główne informacje o użyciu polecenia.

Sprawdź status
Sprawdzanie statusu usługi zapory sieciowej Proxmox VE:
pve-firewall status
Wynik pokazuje, czy zapora działa na bieżącym węźle.
Uruchom zaporę
Uruchamianie usługi zapory na bieżącym węźle Proxmox:
pve-firewall start
Przeładuj zaporę
Przeładowanie usługi zapory i zastosowanie zmian w konfiguracji zapory bez konieczności zatrzymywania i 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łę zezwalającą na dostęp SSH do środowiska Proxmox.
Gdzie: create <object> tworzy nowy obiekt zapory, np. regułę, grupę zabezpieczeń lub zestaw adresów IP.
Usuń regułę
Aby usunąć regułę, użyj polecenia:
pve-firewall delete rule <rule-id>
Wyświetl dziennik
Wyświetl dziennik zapory, który pokazuje ruch sieciowy i dopasowania reguł:
pve-firewall log
Wynik wyświetla najnowsze wpisy dziennika zapory.
Odmowa ruchu HTTP
Aby utworzyć regułę zapory odrzucającą cały ruch HTTP, użyj polecenia:
pve-firewall create rule -action drop -macro http
3. pvesm
Polecenie pvesm w interfejsie CLI Proxmox jest narzędziem wiersza poleceń służącym do zarządzania konfiguracją magazynu w Proxmox VE. Za pomocą tego narzędzia wiersza poleceń można tworzyć, usuwać, modyfikować i zarządzać pulami pamięci masowej. Ponadto można wykonywać różne zadania związane z pamięcią masową, takie jak tworzenie katalogów, dodawanie urządzeń pamięci masowej i zarządzanie typami treści.
Składnia:
pvesm <command> [options]
Wyświetl pamięć masową
pvesm list <storage>
Gdzie to nazwa puli pamięci masowej (magazynu danych), którą chcesz wyświetlić.
<storage>

Sprawdzanie stanu wszystkich lub określonych pul pamięci masowej
pvesm status
Wynik wyświetla stan puli pamięci masowej, w tym informacje o tym, czy jest ona aktywna czy nieaktywna, typ pamięci masowej oraz aktualne wykorzystanie.

Tworzenie nowej puli pamięci masowej
pvesm create <type> <storage-id> --options
Gdzie:
to typ zaplecza pamięci masowej do utworzenia (na przykład dir, lvm, nfs, zfs).
<type>
<storage-id> to unikalna nazwa lub identyfikator puli pamięci masowej.
--options określa dodatkowe opcje specyficzne dla danego typu pamięci masowej.
Przykład:
Tworzenie nowego magazynu opartego na katalogach o nazwie new-datastore1 zlokalizowanego pod adresem /mnt/storage-name, który może przechowywać obrazy maszyn wirtualnych i pliki ISO:
pvesm create dir new-datastore1 --path /mnt/storage-name --content images,iso
Dodawanie istniejącego magazynu pamięci masowej do Proxmox VE
Zasada działania tego polecenia jest podobna do polecenia pvesm create , ale zamiast tworzyć nowy magazyn, istniejący magazyn jest dodawany do konfiguracji Proxmox, aby był dostępny.
Przykład:
Dodawanie istniejącego udziału NFS znajdującego się na 192.168.101.100 pod adresem /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
Modyfikowanie konfiguracji istniejącej puli pamięci masowej
pvesm set <storage-id> --options
Przykład:
Modyfikowanie puli local-storage01 w celu umożliwienia przechowywania obrazów maszyn wirtualnych, plików ISO i plików kopii zapasowych:
pvesm set local-storage01 --content images,iso,backup
Przydzielanie nowego woluminu w określonej puli pamięci masowej dla maszyny wirtualnej lub kontenera
pvesm alloc <storage-id>
<vmid>
<size>
Przykład:
Polecenie przydzielające wolumin o rozmiarze 10 GB w puli local-storage-name dla maszyny wirtualnej 100:
pvesm alloc local-storage-name 100 10G
4. pveum
Środowisko Proxmox Virtual Environment pozwala na utworzenie wielu użytkowników do zarządzania Proxmox VE. Można to zrobić za pomocą poleceń wiersza poleceń Proxmox, korzystając z polecenia ` pveum ` (administracja 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 wraz 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 interfejsie 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
Za pomocą polecenia pvesh administratorzy mogą korzystać z interfejsu API REST Proxmox. To narzędzie wiersza poleceń pozwala na wykonywanie niemal każdej czynności dostępnej w interfejsie internetowym Proxmox bezpośrednio z poziomu wiersza poleceń Proxmox. Polecenie pvesh działa jako powłoka dla interfejsu API REST Proxmox VE, umożliwiając wysyłanie żądań API za pomocą poleceń bezpośrednio z wiersza poleceń. Za pomocą tego polecenia można zarządzać maszynami wirtualnymi, pamięcią masową, siecią i innymi elementami wirtualnej infrastruktury Proxmox.
Składnia:
pvesh <command> [options]
Wyświetlanie zasobów lub punktów końcowych API
Polecenie to jest podobne do polecenia ls w systemie Linux, ale wyświetla dostępne ścieżki API lub zasoby w środowisku Proxmox VE.
pvesh ls /path
Przykład:
pvesh ls /cluster/resources
Polecenie to wyświetla wszystkie zasoby w klastrze Proxmox, w tym maszyny wirtualne, kontenery i pamięć masową.
Pobieranie informacji
Polecenie get pobiera informacje z określonego punktu końcowego API. Polecenie to służy do wysyłania zapytań o szczegóły dotyczące zasobu.
pvesh get /path
Gdzie path to ścieżka API, z której chcesz pobrać informacje.
Na przykład, aby pobrać informacje o stanie węzła pve-node1, takie jak obciążenie Procesora, wykorzystanie pamięci i czas pracy, można użyć polecenia:
pvesh get /nodes/pve-node1/status

Modyfikowanie konfiguracji
Polecenie set służy do modyfikowania lub aktualizowania konfiguracji zasobu. Jest to równoważne z wysłaniem żądania POST lub PUT w interfejsie API REST.
Składnia:
pvesh set /path --key value [--key value ...]
--key value to pary klucz-wartość ustawień, które chcesz 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 create pozwala utworzyć nowy zasób, taki jak nowa maszyna wirtualna lub wolumin magazynu.
Składnia:
pvesh create /path --key value [--key value ...]
Na przykład, aby utworzyć nową maszynę wirtualną o określonych parametrach, należy użyć polecenia:
pvesh create /nodes/pve-node1/qemu --vmid 106 --name new-vm-name --memory 2048 --cores 2
To polecenie tworzy nową maszynę wirtualną o identyfikatorze 106 na węźle pve-node1, o nazwie new-vm-name, z 2 GB pamięci RAM i 2 procesorami.
Uruchamianie maszyn wirtualnych
Istnieje polecenie do uruchamiania maszyny wirtualnej lub kontenera o nazwie pvesh:
pvesh start /path
Na przykład, aby uruchomić maszynę wirtualną o nazwie ID 101 na węźle pve-node1, można uruchomić polecenie:
pvesh start /nodes/pve-node1/qemu/101
Wyłączanie maszyny wirtualnej
W przeciwieństwie do polecenia stop, polecenie shutdown wyłącza maszynę wirtualną lub kontener w sposób kontrolowany:
pvesh shutdown /path
Na przykład, aby wyłączyć maszynę wirtualną o nazwie ID 101 na hoście Proxmox o nazwie pve-node1, należy użyć 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, służącym do zarządzania i konfiguracji klastra Proxmox. Za pomocą tego narzędzia można tworzyć klastry, a także dołączać węzły do klastra Proxmox i zarządzać nimi. 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 wyświetlić wszystkie obsługiwane polecenia pvecm , uruchom to polecenie:
man pvecm
Tworzenie klastra
Aby utworzyć nowy klaster Proxmox VE, możesz użyć polecenia create . Polecenie to należy uruchomić na pierwszym węźle (węźle głównym), który będzie tworzył klaster.
pvecm create <clustername>
Przykład:
Poniższe polecenie tworzy klaster o nazwie cluster01. Ten węzeł (na którym uruchamiamy polecenie) staje 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świetlenia listy wszystkich węzłów klastra wraz z ich statusem, w tym nazwami węzłów i adresami IP, brzmi:
pvecm nodes
Ustawianie nowego węzła głównego
Można ustawić inny węzeł klastra jako 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
Za pomocą polecenia expected można sprawdzić, ile węzłów jest wymaganych do osiągnięcia kworum w klastrze. Korzystanie z tego polecenia może być konieczne, gdy niektóre węzły klastra są tymczasowo offline, aby uniknąć zakłóceń. Kworum służy do uniknięcia sytuacji typu split-brain, gdy różne węzły klastra mają sprzeczne informacje o stanie klastra. pvecm expected <number>
7. hamanager
Polecenie 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).
--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 włączony 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 zapasowej 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, oferujący wysokie współczynniki kompresji przy optymalnej wydajności.
--storage <storage> określa miejsce docelowe przechowywania 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 tylko nieudane kopie zapasowe.
Tworzenie kopii zapasowej wielu maszyn wirtualnych
Tworzenie kopii zapasowej maszyn wirtualnych z IDs 101, 102i 103 sekwencyjnie:
vzdump 101 102 103
Zapisywanie kopii zapasowej z kompresją
vzdump 101 --storage local --compress gzip --maxfiles 3
Polecenie vzdump z tymi opcjami powoduje wykonanie następujących czynności:
- Zapisuje kopię zapasową
VM 101do magazynu o nazwie local. Magazyn lokalny może być lokalnym katalogiem na hoście Proxmox lub pulą magazynów. - Wykorzystywana jest kompresja
gzip. Tworzenie kopii zapasowej zaszyfrowanej przy użyciu kompresjigzipmoże trwać dłużej, ale w rezultacie otrzymujesz mniejszy plik kopii zapasowej. - Zachowywane są tylko 3 najnowsze kopie zapasowe, podczas gdy starsze są automatycznie usuwane.
Pomiń pliki dziennika
vzdump 102 --exclude-path /var/log
Wykonuje 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. Wykonuje kopię zapasową maszyny wirtualnej 101, przechowuje ją w magazynie nfs-backup i zachowuje tylko 5 najnowszych kopii zapasowych, automatycznie usuwając wszystkie starsze.
Tworzenie kopii zapasowych w trybie migawki
vzdump --all --mode snapshot --storage nfs-backup --bwlimit 20480 --remove old --maxfiles 7
Tworzenie kopii zapasowych (np. nocnych) wszystkich maszyn wirtualnych i kontenerów przy użyciu trybu kopii zapasowej w postaci migawki. Kopie zapasowe są zapisywane w udziale NFS o nazwie nfs-backup. Przepustowość jest ograniczona do 20480 kilobajtów na sekundę (20 MB/s), aby zapobiec przeciążeniu sieci. Zachowywanych jest tylko 7 ostatnich kopii zapasowych, a starsze kopie są automatycznie usuwane.
9. qmrestore
Polecenie qmrestore służy do przywracania maszyn wirtualnych z kopii zapasowych utworzonych za pomocą polecenia vzdump w środowisku wirtualnym Proxmox. Polecenia vzdump i qmrestore są natywnymi narzędziami Proxmox do tworzenia kopii zapasowych i odzyskiwania maszyn wirtualnych. Kopię zapasową można przywrócić na nową lub istniejącą maszynę wirtualną.
Składnia:
qmrestore [options] <backupfile>
<vmid>
Gdzie:
to ścieżka do pliku kopii zapasowej, którą chcesz przywrócić. Plik ten jest zazwyczaj generowany przez polecenie
<backupfile>
vzdump i przechowywany w katalogu lub na sieciowym urządzeniu pamięci masowej.
to identyfikator maszyny wirtualnej, którą chcesz przywrócić. Jeśli identyfikator maszyny wirtualnej już istnieje, istniejąca maszyna wirtualna zostanie nadpisana, chyba że użyje się określonych opcji, aby temu zapobiec.
<vmid>
Opcje polecenia:
--force służy do nadpisania istniejącej maszyny wirtualnej o tym samym identyfikatorze; nie pojawia się pytanie potwierdzające. Opcji tej można użyć do przywrócenia maszyny wirtualnej, gdy nie ma znaczenia utrata aktualnego stanu maszyny wirtualnej o tym samym identyfikatorze.
--unique służy do wygenerowania nowego, unikalnego identyfikatora maszyny wirtualnej dla przywracanej maszyny. Należy rozważyć użycie tej opcji do przywrócenia kopii zapasowej poprzez utworzenie nowej maszyny wirtualnej bez nadpisywania istniejących maszyn.
--storage <storage> określa docelową lokalizację przechowywania obrazów dysków wirtualnych przywracanej maszyny wirtualnej. Jeśli ta opcja nie zostanie określona, maszyna wirtualna zostanie przywrócona do pierwotnej lokalizacji przechowywania lub do lokalizacji domyślnej.
--pool <pool> umożliwia przypisanie przywróconej maszyny wirtualnej do określonej puli zasobów w środowisku wirtualnym Proxmox. Pule zasobów służą do grupowania maszyn wirtualnych w celu ułatwienia zarządzania.
--hostname <name> ustawia nazwę hosta przywróconej maszyny wirtualnej. Ta opcja jest przydatna, jeśli chcesz ustawić dla przywróconej maszyny wirtualnej nazwę hosta inną niż pierwotna.
--name <name> ustawia niestandardową nazwę dla przywróconej maszyny wirtualnej (nazwę wyświetlaną w interfejsie użytkownika Proxmox), różną od pierwotnej nazwy maszyny wirtualnej, której kopia zapasowa została wykonana.
Przywróć maszynę wirtualną do pierwotnego identyfikatora
Przywracanie maszyny wirtualnej do pierwotnego identyfikatora:
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 o identyfikatorze ID 101. Jeśli maszyna wirtualna o nazwie ID 101 już istnieje, zostanie nadpisana.
Przywracanie kopii zapasowej 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 o nazwie ID 102, zapisując jej obrazy dysków w local-lvm .
Odzyskiwanie oraz zmiana nazwy hosta i nazwy maszyny wirtualnej
Przywracanie kopii zapasowej oraz 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 przy użyciu ID 103, zmienia nazwę maszyny wirtualnej na MyRestoredVM i ustawia jej nazwę hosta na restored-vm.
10. proxmox-backup-client
Polecenie proxmox-backup-client jest narzędziem wiersza poleceń używanym w połączeniu z Proxmox Backup Server, natywnym rozwiązaniem do tworzenia kopii zapasowych Proxmox, służącym do operacji tworzenia kopii zapasowych i przywracania danych. Narzędzie to pozwala administratorom chronić maszyny wirtualne, kontenery i inne rodzaje danych. Narzędzie proxmox-backup-client współpracuje z serwerem Proxmox Backup Server (PBS) w celu zarządzania kopiami zapasowymi
Składnia:
proxmox-backup-client <command> [options]
Podstawowa składnia polecenia wykonania kopii zapasowej
proxmox-backup-client backup <archive-name>
<path> --repository <repository> [options]
Gdzie:
<archive-name> to nazwa, jaką chcesz nadać archiwum kopii zapasowej.
określa ścieżkę do katalogu lub pliku, którego kopię zapasową chcesz wykonać.
<path>
--repository <repository> repozytorium docelowe na serwerze kopii zapasowych Proxmox, zazwyczaj w postaci user@pbs:datastore
Przykład:
proxmox-backup-client backup etc.pxar /etc --repository root@pbs@10.10.10.101:datastore1
Polecenie to wykonuje kopię zapasową katalogu /etc do katalogu datastore1 na serwerze kopii zapasowych Proxmox znajdującym się pod adresem 10.10.10.101. Kopia zapasowa jest przechowywana jako archiwum o nazwie etc.pxar.
Podstawowa składnia polecenia przywracania
Polecenie przywracania dla narzędzi wiersza poleceń proxmox-backup-client służy do przywracania danych z serwera kopii zapasowych Proxmox do systemu lokalnego.
proxmox-backup-client restore <archive-name>
<path> --repository <repository> [options]
Gdzie:
<archive-name> to nazwa archiwum, które chcesz przywrócić.
to ścieżka, do której dane mają zostać przywrócone.
<path>
--repository <repository> to repozytorium, w którym przechowywana jest kopia zapasowa.
Przykład:
proxmox-backup-client restore etc.pxar /restore/etc --repository root@pbs@10.10.10.101:datastore1
Polecenie to przywraca archiwum etc.pxar z datastore1 na serwerze kopii zapasowych Proxmox pod adresem 10.10.10.101 do lokalnego katalogu /restore/etc.
Wnioski
Polecenia CLI Proxmox stanowią potężny zestaw narzędzi do zarządzania środowiskiem wirtualnym Proxmox, w tym magazynem, maszynami wirtualnymi, klastrami, kopiami zapasowymi maszyn wirtualnych itp. Jeśli chcesz wdrożyć kompleksową strategię tworzenia kopii zapasowej maszyn wirtualnych, zainstaluj NAKIVO Backup & Replication i skorzystaj z funkcji tworzenia kopii zapasowej bez agenta dla maszyn wirtualnych Proxmox VE.