Prijeđi na sadržaj

Proxmox Virtual Environment

Izvor: Wikipedija
Proxmox Virtual Environment
Proxmox VE logo

Proxmox VE 7.0 administracijsko grafičko sučelje
Web stranice:www.proxmox.com/en/proxmox-ve
Tvrtka/razvijatelj:Proxmox Server Solutions GmbH
Porodica:GNU/Linux
Model izvornog koda:slobodan softver
Posljednja stabilna inačica:8.2-2 / 22. kolovoza 2024.
Marketinški cilj:virtualizacija, poslužitelj, računarstvo u oblaku
Dostupni jezici:Višejezičan
Metoda ažuriranja:APT
Upravitelj paketa:dpkg
Podržane platforme:AMD64 (x86-64)
Tip jezgre:monolitna (Linux)
Korisničko sučelje:Web baziran
Licencija:Affero General Public License
Radno stanje:razvija se

Proxmox Virtual Environment (Proxmox VE ili PVE) je platforma otvorenog programskog kôda (open-source software) za virtualizaciju i Linux kontejnere. Platforma sadrži takozvani hipervizor koji može pokretati virtualna računala odnosno operacijske sustave, uključujući Linux i Windows kao i Solaris, FreeBSD, macOS, Minix, i druge na sklopovlju (hardveru) x64. PVE se temelji na distribuciji Linuxa Debian s modificiranim kernelom LTS Ubuntua[1] koji omogućuje pokretanje i menadžment virtualnih računala i Linux kontejnera.[2][3] Proxmox VE sadrži web konzolu i skup programa naredbenog retka (CLI) te nudi REST API za pristup s drugih sustava ili aplikacija.

Podržane su dvije vrste virtualizacije s potpuno web baziranim sučeljem za upravljanje:[4]

  • Kontejnerski bazirane, upotrebom LXC kontejnera (od inačice 4.0 zamijenili su OpenVZ kontejnere s LXC kontejnerima[5]).
  • Potpuna virtualizacija s upotrebom Linux KVM komponente i QEMU emulatora za virtualizaciju.[6][7]

Proxmox VE je licenciran pod GNU Affero General Public License, licencom inačice tri.[8]

Povijest

[uredi | uredi kôd]

Razvoj Proxmox VE krenuo je kada su Dietmar Maurer i Martin Maurer, dvojica Linux programera, otkrili da OpenVZ Linux kontejneri nemaju alat za izradu sigurnosnih kopija niti grafičko (GUI) menadžment sučelje. KVM se pojavio u isto vrijeme pod Linuxom, te su podršku za njega dodali odmah potom.[9]

Prvo stabilno javno izdanje PVE je objavljeno početkom 2008. godine. Podržavalo je Linux kontejnere (tada OpenVZ) i potpunu virtualizaciju, uz upravljanje (menadžment) iz grafičkog sučelja.[10]

Kako radi Proxmox VE (instalacija)

[uredi | uredi kôd]

U najjednostavnijem slučaju, Proxmox VE (PVE) se instalira na kompatibilni x86-64 hardver kao što su: klasično računalo i poslužitelj ili blade poslužitelj, s isporučene ISO slike.[11] Instalacijski program gotovo automatski upravlja cijelim procesom instalacije, slično kao u osnovnoj instalaciji Debian distribucije Linuxa, koristeći cijeli prvi tvrdi disk računala. Moguće su i drugačije vrste instalacije i objašnjene su na PVE wiki stranici.[12] Nakon instalacije, sva administracija i konfiguracija PVE-a odvija se u jednostavnim koracima putem web sučelja. Osim toga, dostupan je i pristup SSH naredbenom retku na root razini (administratorski), na kojem se mogu izvesti opsežniji radovi i posebne konfiguracije na glavnom sustavu korištenjem odgovarajućih skripti, sistemskih programa ili čak ručnim uređivanjem konfiguracijskih datoteka PVE sustava, primjerice u slučaju kada želite nestandardnu konfiguraciju mrežnog, diskovnog ili nekog drugog sustava ili kompomente.[13]

Automatizirana instalacija

[uredi | uredi kôd]

Od Proxmox VE inačice 8.2. podržana je automatizirana instalacija Proxmox VE sustava. To je vrlo korisno kod instalacije većeg broja poslužitelja ili tijekom reinstalacije poslužitelja (pr. na novi hardver). Trenutno je moguće automatizirati instalaciju s tri metode[14]:

  • Prilagodbom ISO instalacijske datoteke.
  • S dodatnog diska (primjerice USB).
  • S mreže.

Značajke

[uredi | uredi kôd]

Proxmox VE je platforma za virtualizaciju i Linux kontejnere otvorenog programskog kôda, koja koristi dvije tehnologije: Kernel-based Virtual Machine (KVM) za virtualna računala te LXC za Linux kontejnere – sve preko jednog jedinog web sučelja.[6]

Proxmox VE je baziran na GNU AGPL, v3 licenci. Tvrtka koja stoji iza razvoja Proxmox VE (Proxmox Server Solutions GmbH) prodaje opcionalnu pretplatu uz korisničku podršku.[15]

Uz takvu pretplatu korisnici dobivaju pristup enterprise softver repozitorijima ili dodatnu (ovisno o razini pretplate) korisničku podršku.[16]

Virtualizacija

[uredi | uredi kôd]

Proxmox VE kao samostalni operativni sustav, sadrži Linux kernel koji radi izravno na hardveru kao hipervizor, a temeljen je na navedenoj KVM tehnologiji, koja za emuliranje hardvera koristi QEMU emulator. Pri tome je KVM centralni dio hipervizora koji omogućuje i korištenje hardverski ubrzanih značajki modernih procesora za virtualizaciju (Intel VT-x ili AMD-V). Dok je QEMU emulator virtualnog sklopovlja (hardvera) jer je za rad virtualnih računala potrebno emulirati sve komponente računala poput: čipseta matične ploče+BIOS, mrežne kartice+BIOS, disk kontrolera+BIOS, grafičke kartice+BIOS itd. Ove dvije komponente zajedno su potrebne za virtualizaciju i (zajedno) čine hipervizor za virtualizaciju. Prednost virtualizacije leži u činjenici da se gotovo svaki x86 kompatibilni operativni sustav može pokrenuti pod centralnom administracijom hipervizora bez dodatnih prilagodbi. Dakle ovakav način rada naziva se potpuna virtualizacija ili hardverski virtualni stroj (HVM). Da bi to sve radilo, potrebna je i hardverska podrška za virtualizaciju unutar modernih procesora (CPU), koja se naziva AMD-V (za AMD procesore) ili Intel VT-x (za Intelove procesore).

U drugom slučaju, ako nemamo hardversku podršku unutar procesora za virtualizaciju, i dalje je moguće pokretanje virtualnih računala, ali će ona raditi drastično sporije.

KSM deduplikacija u RAM memoriji

[uredi | uredi kôd]

Proxmox VE podržava i takozvani KSM (engl. Kernel Samepage Merging) mehaizam deduplikacije podataka u RAM memoriji hipervizora.[17]

Kernel Samepage Merging (KSM) je značajka deduplikacije RAM memorije hipervizora koju nudi Linux kernel, a koja je prema zadanim postavkama omogućena u Proxmox VE. KSM radi skeniranjem niza stranica fizičke memorije u potrazi za identičnim sadržajem i identificiranjem virtualnih stranica memorije koje su im mapirane. Ako se pronađu identične stranice, odgovarajuće virtualne stranice memorije se ponovno mapiraju tako da sve pokazuju na istu fizičku stranicu, a stare stranice se oslobađaju. Virtualne stranice memorije su pri tome označene kao "copy-on-write", tako da će svako pisanje na njih biti zapisano u novo područje memorije, ostavljajući dijeljenu fizičku stranicu netaknutom.[18]

Dakle upotrebom KSM mehanizama koje koristi i KVM hipervizor, omogućuje KVM gostima (virtualnim računalima) da dijele identične memorijske stranice. Te dijeljene stranice obično su uobičajene biblioteke ili drugi identični podaci koji se često koriste. KSM zbog toga omogućuje veći broj identičnih ili sličnih gostujućih operativnih sustava (virtualnih računala) izbjegavanjem dupliciranja memorije.[19]

Ugniježđena virtualizacija (nested virtualization)

[uredi | uredi kôd]

Proxmox VE podržava i takozvanu ugniježđenu virtualizaciju (engl. nested virtualization[20]), a ona se odnosi na način rada u kojem je moguće pokrenuti hipervizor, poput PVE-a ili drugih (pr. VMware ESXi, Microsoft Hyper-V, VirtualBox i sl.), unutar virtualnog računala, koji radi na drugom hipervizoru, umjesto na stvarnom hardveru. Drugim riječima, imate hipervizor instaliran na hardver, na kojemu se pokreće gostujući hipervizor (kao virtualno računalo), a koji ponovno može pokretati vlastita virtualna računala. To je vrlo korisno za testiranje; primjerice ako na postojećem Proxmox VE poslužitelju (hipervizoru) želite pokrenuti novu inačicu Proxmox VE i unutar nje testirati nove značajke i pokretati virtualna računala pod njim. Isto je i s drugim hipervizorima (pr. VMware ESXi, Microsoft Hyper-V, VirtualBox i sl.) koje možda samo želite pokrenuti unutar Proxmox VE (kao hipervizorom) i nešto testirati na njima.

Osim testne primjene, moguće je unutar ovakve ugniježđene virtualizacije pokretati virtualna računala koja se samo prema potrebi mogu ponašati kao hipervizori. To je konkretno slučaj s nekim emulatorima mrežnih uređaja i mreže, poput:

Podršku za ugniježđenu virtualizaciju koristi KVM komponenta, oslanjajući se na podršku na razini kernela te kernel modula. Primjerice za Intel procesore je to kernel modul [kvm-intel] odnosno za AMD procesore kernel modul [kvm-amd].

VM emulirani/paravirtualizirani hardver

[uredi | uredi kôd]

S obzirom na to da Proxmox VE za virtualna računala koristi KVM (+QEMU) kao takozvani hipervizor, on nativno (iz grafičkog sučelja) podržava mnoge emulirane i paravirtualizirane hardverske komponente, poput:

Propuštanje hardvera prema virtualnim računalima

[uredi | uredi kôd]

Proxmox VE podržava propuštanje (eng. pass-through[25]): PCI i USB[26] uređaja s fizičkog poslužitelja prema virtualnim računalima, iz grafičkog sučelja. To znači da tada hipervizor PCI ili USB uređajima omogućuje prolaz do virtualnog računala odnosno da virtualno račualo ima izravan pristup fizičkom hardveru.

Dodatne opcije poput CPU zastavica (engl. flags) dostupne su iz grafičkog sučelja ili naredbenog retka. Različite vrste emuliranog hardvera (koji podržava sâm QEMU), također su dostupne preko naredbenog retka (CLI).

Podržani virtualizirani operativni sustavi i Linux kontejneri

[uredi | uredi kôd]

S obzirom na to da Proxmox VE u pozadini koristi KVM sustav za virualizaciju, on podržava sve operativne sustave koje podržava i KVM (za virtualna računala), poput:[27]

Vezano za Linux kontejnere, s obzirom na to da Proxmox VE u pozadini koristi LXC tehnologiju, on podržava upotrebu bilo koje distribucije Linuxa kao Linux kontejnera: Red Hat Enterprise Linux, CentOS, Rocky Linux, Fedora, Oracle Enterprise Linux, Debian, Ubuntu, SUSE Linux Enterprise Server, openSUSE, Gentoo, Arch Linux, Slackware i mnogi drugi.

Kontejneri pod Linuxom

[uredi | uredi kôd]

Za razliku od virtualnih računala i sâme virtualizacije, Linux kontejneri imaju značajno niže zahtjeve za memorijom i drugim resursima, ali gostujući sustav (Linux kontejner) ograničen je na Linux operativni sustav, budući da se u gostujućem sustavu za kontejnere koristi kernel glavnog sustava. To radi tako da se pomoću cgroups mehanizama Linuxa za Linux kontejner ograničava pristup resursima fizičkog računala (RAM, CPU jezgre, mreža, disk, ...). Naime ovdje nema virtualizacije i svôg emuliranog hardvera: čipset+BIOS, mrežna kartica+BIOS, disk kontroler+BIOS, grafička kartica+BIOS i slojeva virtualizacije, pa je jasno da Linux kontejner mora raditi brže i s manjim zahtjevima prema hardveru, od virtualnih računala.

Komunikacija iz Linux kontejnera prema fizičkom računalu i njegovim Linuxom, jer ovdje nema hipervizora, odrađuje se preko takozvanih sistemskih poziva (tako rade i sve aplikacije i komponente normalnog Linuxa), prema kernelu. Linux kontejner nije svjestan toga da nema svoj kernel. Nadalje on nije svjestan niti toga da se izvršava unutar Linux kontejnera, jer se svi ovi sistemski pozivi prema kernelu preslikavaju kroz sloj izolacije (namespaces), do stvarnog kernela i Linuxa (Proxmox VE) instaliranog na hardver. Naime svi sistemski pozivi unutar Linux kontejnera se preslikavaju preko takozvanih izoliranih imeničnih prostora (namespaces) prema stvarnom kernelu i Linux operativnom sustavu odnosno prema Proxmox VE.

Središnji menadžment

[uredi | uredi kôd]

Proxmox VE koristi integrirano web bazirano sučelje unutar tzv. klasterskog (visoko dostupnog distribuiranog) datotečnog sustava naziva pmxcfs. To znači da ne postoji jedna točka kvara u klasteru, budući da svaki čvor (fizički host/poslužitelj) ima sve konfiguracijske datoteke pohranjene u datotečnom sustavu klastera, koji se dijeli između čvorova. Štoviše, svaki čvor (fizički poslužitelj) ima sve potrebne uloge/funkcije (upravljanje/vatrozid/sustav za pohranu/mreža/ ...) potrebne za rad. Kako klaster raste, razina redundancije također raste s njim.

To također znači da korisnik može konfigurirati sve potrebno, na bilo kojem čvoru (IP adresi čvora) unutar klastera, jer se sve promjene odmah sinkroniziraju unutar klastera i odmah su dostupne ostalim čvorovima.[31]

Proxmox Offline Mirror

[uredi | uredi kôd]

Pomoću alata Proxmox Offline Mirror moguće je upravljati lokalnim apt zrcalnim repozitorijem za sva ažuriranja paketa za Proxmox i Debian projekte. Iz ovog lokalnog apt repozitorija može se stvoriti vanjski medij, na primjer USB pogon ili dijeljeni mrežni disk, za ažuriranje onih sustava koji ne mogu pristupiti repozitoriju paketa izravno putem interneta.[32]

Mrežni model

[uredi | uredi kôd]

Proxmox VE koristi Bridge model mrežne veze prema virtualnim računalima i Linux kontejnerima.[33] Mrežni most (premosnik) odnosno bridge radi poput mrežnog preklopnika (switcha) na OSI sloju dva (OSI 2), ali implementiranog u softveru. Neke druge platforme za virtualizaciju (pr. VMware ESXi i Hyper-V) ovakvo sučelje nazivaju vSwitch ili virtual switch.

Svi virtualni gosti (virtualna računala ili linux kontejneri) mogu dijeliti jedno bridge sučelje ili možete stvoriti više bridge sučelja za odvojene mrežne domene. Izolaciju virtualnih računala ili linux kontejnera moguće je postići upotrebom VLAN (ili drugih protokola), obično na razini bridge sučelja prema virtualnom mrežnom sučelju unutar virtualnog računala ili Linux kontejnera (iz grafičkog sučelja).

Za sâmo bridge mrežno sučelje na razini hipervizora, moguće je birati između:

Dodatno, moguće je koristiti i takozvana Bond sučelja (agregcija/teaming) i to:

  • Linux Bond - za bond sučelje, moguće je odabrati Linux Bond način rada koji najbolje zadovoljava korisnikove potrebe
  • Open vSwitch bond vrstu sučelja, za koje je također moguće odabrati način rada koji najbolje zadovoljava korisnikove potrebe.

Sva navedena Bridge i Bond sučelja podržavaju VLANove (802.1Q) za izolaciju virtualnih računala i Linux kontejnera odnosno za segmentiranje mreže.

Nadalje Proxmox VE nativno (iz grafičkog sučelja) podržava i velike mrežne okvire (Jumbo frames). Dakle mrežne okvire veće od 1500 bajta (MTU).

PCI propuštanje

[uredi | uredi kôd]

Pošto Proxmox VE podržava PCI propuštanje PCI i PCIe kartica (eng. pass-through[25]), ono se odnosi i na mrežne kartice. To omogućuje izravan pristup fizičkom PCI uređaju, u ovom slučaju mrežnoj kartici, iz virtualnog računala. Ovakav način pristupa i korištenja mrežne kartice nudi najveću (hardversku) brzinu rada, drastično veću i od paravirtualiziranih mrežnih kartica, zato što se njenom mrežnom sučelju pristupa izravno bez slojeva virtualizacije ili paravirtualizacije.

Od novijih inačica Proxmox VE (v.8.x.), u Proxmox VE klasteru je moguće migrirati virtualna računala (HA način rada) koja koriste PCI propuštanje.

Proxmox VE podržava i mrežne kartice koje podržavaju takozvani Single Root I/O Virtualization (SR-IOV) način rada, ali trenutno (v.8.1.x) ne konfiguracijom iz grafičkog sučelja, već iz naredbenog retka.

SDN (Software Defined Network)

[uredi | uredi kôd]

Jezgra softverski definiranog umrežavanja odnosno mrežnog stoga (SDN) je kod Proxmox VE-a od inačice 8.1. prešla s eksperimentalnog na standardno podržanu značajku.[34] Pogledajmo što trenutno podržava:

  • Proxmox VE SDN omogućuje preciznu kontrolu virtualnih mreža gostiju (virtualnih računala i Linux kontejnera) na razini podatkovnog centra.
  • Novi dodatak za automatsko upravljanje IP adresama pomoću DHCP poslužitelja unutar IPAM (IP Address Management) modula može se koristiti za transparentno dodjeljivanje IP adresa virtualnim računalima, za sada (v.8.1) samo u jednostavnim zonama (simple zona). Ova značajka je trenutno označena kao tech-preview.
  • Web korisničko sučelje sada omogućuje pregled i uređivanje DHCP unosa kojima upravlja ugrađeni IPAM modul.


To znači da je pomoću SDN modula, uz mnoge druge opcije specifične za SDN,[35][36] moguće za izolaciju odnosno segmentaciju mreže virtualnih računala i Linux kontejnera koristiti nekoliko modela odnosno tzv. zona:

  • Simple zonu kod koje se za svaku ovakvu zonu kreira po jedno izolirano VNet bridge sučelje.
  • VLAN zonu koja za izolaciju koristi VLAN-ove (802.1Q).
  • QinQ zonu koja za izolaciju koristi QinQ (802.1ad).
  • VxLAN zonu koja za izolaciju koristi Virtual Extensible LAN (RFC 7348).
  • EVPN zonu koja za izolaciju koristi EVPN (Ethernet VPN).

Sustav za pohranu

[uredi | uredi kôd]

Proxmox VE podržava fleksibilne lokalne i udaljene (mrežne) sustave za pohranu podataka (engl. storages),[35][37] koji se mogu koristiti za pohranjivanje: diskovnih slika virtualnih računala ili Linux kontejnera, sigurnosnih kopija, predložaka linux kontejnera (engl. container template), ISO slika i drugog sadržaja.

Proxmox VE podržava lokalne sustave za pohranu, poput[37]

Proxmox VE podržava i udaljene (mrežne) sustave za pohranu, poput[37]

Nadalje, sustavi za pohranu se mogu dijeliti u dvije kategorije:

  • File level storage – koji omogućuju pristup POSIX kompatibilnom datotečnom sustavu
  • Block level storage – koji omogućuje pristup blokovima podataka.

Osim toga potrebno je definirati vrstu sustava za pohranu, za svaki pojedini sustav pohrane, ovisno o željenoj upotrebi odnosno sadržaju specifičnog sustava za pohranu. Kao što su primjerice sustavi za pohranu:[41]

  • Slika diskova virtualnih računala (pr. QCOW2, RAW, VDI, VHD, VMDK,...).
  • Slika diskova Linux kontejnera.
  • ISO slika.
  • LXC predložaka.
  • Sigurnosnih kopija [backup] i drugih sadržaja.

Diskovne slike i formati

[uredi | uredi kôd]

Vezano za diskovne slike virtualnih računala Proxmox VE nativno iz grafičkog sučelja podržava slijedeće formate:[42][43]

  • .qcow2 - QCOW2 – on je format koji podržava kopiranje tijekom snimanja (copy on write) te omogućuje snimku stanja diska u vremenu (snapshot), ali i dinamičko širenje te minimalno zauzeće diska [engl. thin provisioning] odnosno zauzeće diskovnog prostora samo onoliko koliko je stvarnih podataka.
  • .raw- RAW – on je sirovi format (i najbrži) koji ne podržava niti jednu od značajki koje podržava QCOW2 format.
  • .vmdk - VMWare format – koristan je ako ste uvezli[44] virtualno računalo s VMware platforme za virtualizaciju.

Nadalje, iz naredbenog retka (CLI) [naredba qemu-img convert], moguće je napraviti razne druge manipulacije i promjene na diskovnim slikama, među kojima je i konverziju između formata diskovnih slika, poput:

  • .raw – sirovi (raw), već objašnjen format.
  • .qcow2- QCOW2 – napredni, objašnjen format (koristi ga i OpenStack platforma za virtualizaciju).
  • .vdi - VDI – VirtualBox format.
  • .vhd i .vhdxHyper-V formati.
  • .vmdk - format VMware platforme za virtualizaciju.
  • nekih drugih formata.

Thin provisioning

[uredi | uredi kôd]

Određeni broj sustava za pohrana, ali i Qemu format slike qcow2 podržavaju takozvani Thin provisioning način pohrane.[42][45]

U takvom radu, samo blokovi podataka koje sustav za goste (virtualna računala ili linux kontejnere) zapravo koristi, bit će zapisani u sustav za pohranu to jest diskovni sustav. Recimo da ste, na primjer, stvorili gostujuće računalo (virtualno računalo ili linux kontejner) s tvrdim diskom od 100 GB, a nakon instaliranja operativnog sustava gostujućeg sustava, datotečni sustav sadrži samo 5 GB podataka. U tom slučaju samo se 5 GB zapisuje na sustav za pohranu, čak i ako gostujuče računalo (VM/Kontejner) vidi tvrdi disk od 100 GB. Ovakav rad ovisi o tome na koji sustav za pohranu se spremaju diskovne slike virtualnih računala odnosno Linux kontejnera. Neki od sustava za pohranu koji podržavaju Thin provisioning na Proxmox VE platformi su:

Replikacija sustava za pohranu

[uredi | uredi kôd]

Proxmox VE podržava redundanciju (zalihost) za goste odnosno virtualna računala ili Linux kontejnere, koji koriste lokalne sustave za pohranu, tako da mogu replicirani njihove diskovne slike na neki drugi PVE čvor (fizički poslužitelj), korištenjem metode koja se naziva "storage replication". Ovakvi replikacijski zadaci mogu biti pokretani automatski u zadanim vremenskim intervalima.[46][47]

Visoko dostupni (HA) klaster

[uredi | uredi kôd]

Proxmox VE (PVE) sustav može se raspodijeliti odnosno raditi na više poslužiteljskih čvorova istovremeno.[48][49]

Službena dokumentacija jamči (testirana je) na veličinu klastera do 32 fizička poslužitelja (čvora), bez obzira na broj jezgri procesora ili bilo koja druga hardverska ograničenja. Ali moguća je čak i veća veličina klastera (50+).[50][51]

Ova ograničenja na veličinu kastera nije nametnuo sâm Proxmox VE već Corosync sustav na kojem je temeljen klaster.

Proxmox VE od inačice 2.0 (iz 2012.g.) nudi visoko dostupni klaster[51] (high availability) koji je baziran na Corosync sustavu.

Od PVE inačice 6.0 u upotrebi je inačica Corosync v.3.x, koja nije kompatibilna s ranijim inačicama PVE sustava. Individualna virtualna računala mogu se konfigurirati za visoku dostupnost, korištenjem ugrađenog ha-manager sustava.[52][53] U slučaju kada poslužitelj ima samo jedno fizičko mrežno sučelje, ono će biti korišteno i za sve klasterske zadatke. Međutim moguće je koristiti i zasebno mrežno sučelje za klastersku mrežu. Dobra je praksa koristiti zasebnu klastersku mrežu (za corosync), koja upravlja komunikacijom klastera u Proxmox VE.

Vezano za rad u klasteru, ako Proxmox poslužitelj (čvor u klasteru) postane nedostupan, ili je u kvaru, zadano virtualno računalo može se automatski preseliti na drugi fizički poslužitelj u klasteru.[54]

Tijekom bilo koje migracije virtualnog računala s jednog fizičkog poslužitelja na drugi, standardno se koristi klasterska mreža, iako je to moguće i drugačije definirati kroz Web sučelje ili iz naredbenog retka.[55]

Nadalje, FUSE-bazirani Proxmox Cluster filesystem (pmxcfs[56]) omogućuje konfiguraciju svakog fizičkog poslužitelja u klasteru upotrebom sustava Corosync te SQlite sustava.[7]

Redundantni klaster

[uredi | uredi kôd]

Pošto je klasterska mreža jedan od najvažnijih dijelova u sustavu otpornom na greške (HA), treba biti svjestan činjenice da drugi mrežni promet potencijalno može poremetiti klastersku sinkronizaciju između poslužitelja. Stoga se preporuča upotreba zasebnog mrežnog sučelja (mrežne kartice) za klastersku mrežu. Kako bi i klasterska mreža bila redundantna, moguće je definirati i više njih. Dakle, moguće je koristiti čak dva (ili više) mrežnih sučelja samo za klastersku komunikaciju, koja se definira u takozvanim klasterskim prstenovima, upotrebom Redundant Ring Protocol[57] protokola. Jedini preduvjet za potpuno redundantnu klastersku mrežu jest upotreba zasebnih mrežnih sučelja - po jedno za svaki prsten klastera.[58] U takvom načinu rada samo jedno klastersko sučelje se koristi u radu, dok je drugo pasivno, sve dok prvo ne postane nedostupno (tzv. Active-Standby način rada).

Višestruki klasteri

[uredi | uredi kôd]

Moguće je stvoriti i više klastera u istoj fizičkoj ili logičkoj mreži. U ovom slučaju, svaki klaster mora imati jedinstveno ime kako bi se izbjegli mogući sukobi u komunikacijskom stôgu klastera.[51] Jedna od najavljenih novosti u budućim inačicama (prema službenom Roadmapu[59] [prosinac 2022]) je i mogućnost migracije između više klastera.

Migracija virtualnih računala i/ili Linux kontejnera

[uredi | uredi kôd]

Od 2012.g. u HA klasteru moguće je migrirati virtualna računala s jednog fizičkog PVE poslužitelja na drugi.[60][61]

Vezano za migraciju, PVE podržava sljedeće vrste migracija za virtualna računala i/ili Linux kontejnere:

  • Offline
  • Online (uz određena ograničenja vezana za LXC kontejnere)

PVE podržava i migraciju virtualnih računala i/ili Linux kontejnera čak i s lokalnih sustava za pohranu (lokalnih fizičkom poslužitelju/hipervizoru) ili korištenjem mrežno dijeljenih sustava za pohranu (pr. NFS, iSCSI, SMB/CIFS, GlusterFS, CEPH, ...).

Za migraciju virtualnih računala ili Linux kontejnera s jednog fizičkog računala na drugo, standardno se koristi klasterska mreža, iako je i to moguće drugačije konfigurirati, kako iz Web sučelja, tako i iz naredbenog retka.[62]

Mapiranje resursa

[uredi | uredi kôd]

Unutar klastera, kada koristite ili referencirate lokalne resurse (npr. hardversku adresu PCI uređaja), korištenje PCI adrese uređaja ili njegov ID, ponekad je problematično, kao u slučajevima:

  • Kada koristite HA: drugi uređaj s istim ID-om ili stazom do uređaja može postojati na ciljnom čvoru (poslužitelju) u klasteru, a ako netko nije pažljiv pri dodjeljivanju takvih virtualnih računala HA grupama, mogao bi se koristiti pogrešan uređaj, uzrokujuči probleme u radu virtualnog računala.
  • Promjena hardvera može promijeniti ID-ove i staze do PCI ili PCIe uređaja, tako da bi trebalo provjeriti sve dodijeljene uređaje i vidjeti jesu li staza do PCI/PCIe uređaja ili njegov ID još uvijek točni.

Da bi se to bolje riješilo, može se definirati mapiranje resursa na razini klastera, tako da resurs ima jedinstveni identifikator klastera - korisnički odabrani identifikator koji može odgovarati različitim uređajima na različitim poslužiteljima u klasteru. Uz to, HA neće pokrenuti virtualno računalo s pogrešnim uređajem, a promjene hardvera mogu se brzo detektirati, kako bi se izbjegli problemi u radu.

Osim mapiranja lokalnih PCI/PCI express uređaja, moguće je mapirati i USB uređaje.

Klonovi i predlošci

[uredi | uredi kôd]

PVE podržava klonove i predloške. Klonovi su identične kopije virtualnog računala ili Linux kontejnera, a predlošci (Template) mogu biti kreirani od postojećih virtualnih računala ili Linux kontejnera.[63] Kasnije se predlošci mogu koristiti tako da se on njih naprave klonovi u nova virtualna računala ili Linux kontejnere.[64]

Virtualni softverski kontejneri (appliances)

[uredi | uredi kôd]

Proxmox VE dolazi s cijelim nizom softverskih kontejnera (appliances) koji se mogu dohvatiti s interneta, preko grafičkog sučelja.

Moguće ih je koristiti preko: TurnKey Linux Virtual Appliance Library.[65][66][67]

Izrada sigurnosnih kopija (data backup)

[uredi | uredi kôd]

Proxmox VE ima ugrađen sustav za izradu sigurnosnih kopija[68] (engl. backup), vzdump, koji omogućuje i komprimiranje podataka (data compression) i izvršavanje u pozadini, u tzv. "snapshot" načinu rada.[69] Od 2020. godine dostupan je i napredni sustav naziva Proxmox Backup Server (PBS),[40] koji nudi deduplikaciju, komprimiranje, kriptiranje i autentifikaciju te inkrementalni backup.[70]

Proxmox Backup Server (PBS) je samostalan operativni sustav, koji je potrebno instalirati na zaseban poslužitelj (ili više njih) koji će se koristiti kao mrežni sustav za pohranu sigurnosnih kopija virtualnih računala i Linux kontejnera. Podrška za njega je s druge strane već integrirana unutar Proxmox VE sustava, pa ga je potrebno samo aktivirati i konfigurirati.

Važno je razumjeti da se izrada sigurnosnih kopija (backupa) može raditi samo na sustave za pohranu koji su naznačeni za tu namjenu, a to mogu biti:[71][72]


Nadalje, postoji nekoliko vrsta izrada sigurnosnih kopija (backupa):

  • Zakazani na razini klastera, u točno određeno vrijeme (pr. svakog dana u određeno vrijeme i sl.), za točno označena virtualna računala ili Linux kontejnere, na točno određeni sustav za pohranu (lokalni ili mrežni).
  • Ručno pokrenuti, za željena virtualna računala ili Linux kontejnere.

Postoji i nekoliko načina rada sustava za izradu sigurnosnih kopija::

Postoji i nekoliko načina rada sustava za izradu sigurnosnih kopija::

  • Stop mode – osigurava visoku konzistenciju, uključuje zaustavljanje virtualnog računala/Linux kontejnera, izradu sigurnosne kopije i kada je gotovo, ponovnog pokretanja.
  • Suspend mode – daje nižu konzisteniju, uključuje pauziranje virtualnog računala/Linux kontejnera, te aktivaciju snapshot moda i izradu sigurnosne kopije, a kada je gotovo, ponovnog pokretanja (iz pauziranog načina rada).
  • Snapshot mode – daje najvišu dostupnost sustava uz nižu konzistenciju jer uključuje snapshot (snimku stanja u vremenu) virtualnog računala/Linux kontejnera. Zatim izradu sigurnosne kopije (live) bez zaustavljanja virtualnog računala ili Linux kontejnera (upotreba tzv. QEMU guest agenta unutar virtualnog računala je visoko preporučena).

Izrada snimke stanja u vremenu (snapshot)

[uredi | uredi kôd]

PVE također podržava stvaranje snimke stanja virtualnog računala ili Linux kontejnera u datom trenutku (vremenu[73]). Ova značajka se zove snapshot. Možete stvoriti i mnoge snimke stanja; na primjer prije ažuriranja virtualnog računala/kontejnera, i vratiti se na bilo koju od njih.[74]

Napomena: snimka stanja u vremenu nije sigurnosna kopija!

Integrirani vatrozid (Firewall)

[uredi | uredi kôd]

PVE ima integrirani vatrozid u tri razine:[75][76]

  • Na razini klastera.
  • Na razini fizičkog PVE poslužitelja (hosta/hipervizora).
  • Na razini virtualnog računala/kontejnera (gosta).

Administracija temeljena na ulogama

[uredi | uredi kôd]

Na Proxmox VE moguće je definirati granularni pristup za sve objekte kao što su:

  • Čvorovi u klasteru (fizički poslužitelji) i sistemske postavke.
  • Virtualna računala i linux kontejneri.
  • Sustavi za pohranu i drugo.

Korištenjem metode upravljanja korisnicima i dopuštenjima na temelju uloga. To omogućuje definiranje privilegija i pomaže nam da kontroliramo pristup objektima sustava. Ovaj koncept radi tako da svaka dozvola navodi subjekt (korisnika ili korisničku grupu) te ulogu odnosno skup privilegija za željene objekte.[77]

Područja provjere autentičnosti

[uredi | uredi kôd]

Proxmox VE podržava višestruke izvore autentifikacije kao što su:[77]

  • Microsoft Active Directory
  • LDAP poslužitelj
  • Linux PAM standardna autentifikacija
    • Već postojeći (ugrađeni) Proxmox VE poslužitelj za autentifikaciju
  • OpenID Connect.

Nadalje, PVE podržava i dvofaktorsku provjeru autentičnosti.

Vanjski poslužitelji za prikupljanje metrike

[uredi | uredi kôd]

U Proxmox VE moguće je definirati vanjske poslužitelje za metriku[78] koji će povremeno primati različite statistike o fizičkim poslužiteljima, virtualnim računalima ili Linux kontejnerima, sustavima za pohranu i slično. Trenutno (v.8.1.) podržani poslužitelji za metriku su:

  • Graphite
  • InfluxDB

Notifikacijski sustav

[uredi | uredi kôd]

Proxmox VE ima integriran sustav za slanje obavijesti u slučaju značajnih događaja u sustavu.

Postoji niz različitih događaja koje je moguće definirati prema željenim kriterijima te definirati odredište na koje se obavijest potom treba poslati.[79]

Moguće je koristiti nekoliko odredišta za slanje ovako definiranih važnih obavijesti. Trenutno su to: Sendmail, SMTP (izravno slanje na SMTP poslužitelj) ili Gotify.

Poznata ograničenja

[uredi | uredi kôd]

U Proxmox VE 8.2. (travanj 2024.) poznata su određena ograničenja:[75]

  • Svaki pojedini fizički poslužitelj može imati maksimalno RAM memorije: 128 TB[80] {64 PB}.[81]
  • Svaki pojedini fizički poslužitelj može imati maksimalno CPU jezgi: 8.192 logičkih CPU jezgri[80]
  • Broj fizičkih poslužitelja u high availability klasteru: 32+ (službeno, iako su mogući i veći klasteri),[50].[51]
  • Maksimalan broj Bridge sučelja po fizičkom poslužitelju: 4.094[33]
    • Maksimalan broj logičkih mreža, ako se koriste: VLANovi: 4.094[33]
    • Maksimalan broj logičkih mreža, ako se koriste: VxLANovi (pomoću SDN): 16.777.216[36]
    • Maksimalan broj logičkih mreža, ako se koristi: QinQ (pomoću SDN): 16.777.216[36]

Povezani članci

[uredi | uredi kôd]

Vanjske poveznice

[uredi | uredi kôd]

Izvori

[uredi | uredi kôd]
  1. Proxmox VE Kernel - Proxmox VE. pve.proxmox.com (engleski). Pristupljeno 26. svibnja 2017.
  2. Simon M.C. Cheng. 31. listopada 2014. Proxmox High Availability. Packt Publishing Ltd. str. 41–. ISBN 978-1-78398-089-5
  3. Plura, Michael. Srpanj 2013. Aus dem Nähkästchen. IX Magazin. Heise Zeitschriften Verlag. 2013 (7): 74–77. Pristupljeno 20. srpnja 2015.
  4. Vervloesem, Koen. "Proxmox VE 2.0 review – A virtualisation server for any situation", Linux User & Developer, 11 April 2012. Retrieved on 16 July 2015.
  5. Proxmox VE 4.0 with Linux Containers (LXC) and new HA Manager released. Proxmox. 11. prosinca 2015. Pristupljeno 12. prosinca 2015.
  6. a b Ken Hess. 11. srpnja 2011. Proxmox: The Ultimate Hypervisor. ZDNet. Pristupljeno 29. rujna 2021.
  7. a b Drilling, Thomas. Svibanj 2013. Virtualization Control Room. Linux Pro Magazine. Linux New Media USA. Pristupljeno 17. srpnja 2015.
  8. Open Source – Proxmox VE. Proxmox Server Solutions. Pristupljeno 17. srpnja 2015.
  9. Proxmox VE 1.5: combining KVM and OpenVZ. Linux Weekly News. Pristupljeno 10. travnja 2015.
  10. Ken Hess. 15. travnja 2013. Happy 5th birthday, Proxmox. ZDNet. Pristupljeno 4. listopada 2021.
  11. PVE ISO image download. Proxmox VE. Proxmox. Pristupljeno 10. kolovoza 2022.
  12. PVE Wiki - Install. Proxmox VE. Proxmox. Pristupljeno 10. kolovoza 2022.
  13. PVE Wiki - PMXCFS. Proxmox VE. Proxmox. Pristupljeno 10. kolovoza 2022.
  14. Automated Installation - Proxmox VE. pve.proxmox.com. Pristupljeno 25. travnja 2024.
  15. Support for Proxmox VE. Pristupljeno 19. listopada 2021.
  16. Package Repositories. Pristupljeno 19. listopada 2021.
  17. Kernel Samepage Merging (KSM) - Proxmox VE. pve.proxmox.com. Pristupljeno 21. studenoga 2022.
  18. 8.3. Kernel Same-page Merging (KSM) Red Hat Enterprise Linux 7. Red Hat Customer Portal (engleski). Pristupljeno 21. studenoga 2022.
  19. Increasing memory density by using KSM (PDF). Red Hat. Red Hat, Inc. Pristupljeno 10. kolovoza 2022.
  20. Nested Virtualization - Proxmox VE. pve.proxmox.com. Pristupljeno 22. studenoga 2022.
  21. Getting Started with GNS3 | GNS3 Documentation. mother.github.io (engleski). Pristupljeno 22. studenoga 2022. |url-status=dead zahtijeva |archive-url= (pomoć)
  22. System Requirement (engleski). Pristupljeno 22. studenoga 2022.
  23. a b c d e f g VirtIO. kvm.org. KVM. Pristupljeno 10. kolovoza 2022.
  24. QEMU guest agent. QEMU.org. QEMU.org. Pristupljeno 10. kolovoza 2022.
  25. a b Pci passthrough - Proxmox VE. pve.proxmox.com. Pristupljeno 13. prosinca 2022.
  26. USB Devices in Virtual Machines - Proxmox VE. pve.proxmox.com. Pristupljeno 13. prosinca 2022.
  27. a b KVM. KVM. KVM.org. Pristupljeno 10. kolovoza 2022.
  28. KVM wiki: Guest support status. Pristupljeno 27. svibnja 2007.
  29. Running Mac OS X as a QEMU/KVM Guest. Pristupljeno 20. kolovoza 2014.
  30. status. Gnu.org. Pristupljeno 12. veljače 2014.
  31. Proxmox VE Administration guide (PDF). Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  32. Introduction — Proxmox Offline Mirror 0.5.0-1 documentation. pom.proxmox.com. Pristupljeno 5. prosinca 2022.
  33. a b c Network config. Proxmox VE. Proxmox. Pristupljeno 10. kolovoza 2022.
  34. Roadmap - Proxmox VE. pve.proxmox.com. Pristupljeno 13. prosinca 2023.
  35. a b c Proxmox VE Administration guide (PDF). Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  36. a b c Software Defined Network. Proxmox VE. Proxmox. Pristupljeno 10. kolovoza 2022.
  37. a b c d Storage types. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  38. Storage: CephFS - Proxmox VE. pve.proxmox.com. Pristupljeno 29. studenoga 2022.
  39. Storage: RBD - Proxmox VE. pve.proxmox.com. Pristupljeno 29. studenoga 2022.
  40. a b Proxmox Backup Server. Proxmox. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  41. Proxmox VE Storage (common storage properties). pve.proxmox.com. Pristupljeno 9. prosinca 2022.
  42. a b Horvat, Hrvoje. 6. srpnja 2023. Operativni sustavi i računalne mreže - Linux u primjeni. Hrvoje Horvat. Osijek. str. 1068, 1076–1078. doi:10.5281/zenodo.8119310. ISBN 978-953-59438-22CS1 održavanje: datum i godina (link)
  43. Disk images. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  44. VM migration to PVE. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  45. Storage - Proxmox VE. pve.proxmox.com. Pristupljeno 28. studenoga 2022.
  46. Storage_Replication. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  47. Proxmox VE Administration guide (PDF). Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  48. HA Cluster. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  49. Wasim Ahmedi. 14. srpnja 2014. Mastering Proxmox. Packt Publishing Ltd. str. 99–. ISBN 978-1-78398-083-3
  50. a b Proxmox VE Forum. Proxmox VE Forum. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  51. a b c d Proxmox Cluster Manager. Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  52. PVE HA Manager Source repository. Pristupljeno 19. listopada 2020.
  53. Proxmox VE documentation: High Availability. Pristupljeno 19. listopada 2020.
  54. High Availability Virtualization using Proxmox VE and Ceph. Jacksonville Linux Users' Group. Inačica izvorne stranice arhivirana 30. studenoga 2020. Pristupljeno 15. prosinca 2017.
  55. Proxmox VE Administration Guide. pve.proxmox.com. Pristupljeno 14. prosinca 2023.
  56. Proxmox Cluster filesystem. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  57. Separate Cluster Network - Proxmox VE. pve.proxmox.com. Pristupljeno 14. prosinca 2023.
  58. Proxmox VE Administration Guide. pve.proxmox.com. Pristupljeno 14. prosinca 2023.
  59. Roadmap. Proxmox. Pristupljeno 3. prosinca 2014.
  60. Qemu/KVM Virtual Machines - Proxmox VE
  61. Introduction to Proxmox VE. Linuxaria. Pristupljeno 3. prosinca 2014.
  62. Proxmox VE Administration Guide. pve.proxmox.com. Pristupljeno 14. prosinca 2023.
  63. Templates and clones. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  64. Proxmox VE Administration guide (PDF). Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  65. Announcing TurnKey OpenVZ optimized builds (+ Proxmox VE channel). Alon Swartz. 24. veljače 2012. Pristupljeno 20. srpnja 2015.
  66. The Proxmox developers have released several virtual appliances, which are ready-made OpenVZ templates that can be downloaded directly from within the Proxmox web interface.
  67. The next server operating system you buy will be a virtual machine. Ken Hess. 15. listopada 2013. Pristupljeno 20. srpnja 2015.
  68. Backup and Restore. Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  69. How to backup a Virtual Machine on Proxmox VE. Manjaro Linux Tutorial and Guide site. 23. rujna 2017. Pristupljeno 4. listopada 2021.
  70. Introduction. Proxmox Backup Documentation. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2021.
  71. Proxmox VE Administration guide (PDF). Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  72. Introduction. Proxmox Backup Documentation. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2021.
  73. Live snapshots. Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  74. Proxmox VE Administration guide (PDF). Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  75. a b Proxmox VE Administration guide (PDF). Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  76. Firewall. Proxmox VE. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  77. a b User Management - Proxmox VE. pve.proxmox.com. Pristupljeno 12. prosinca 2022.
  78. External Metric Server - Proxmox VE. pve.proxmox.com. Pristupljeno 13. prosinca 2022.
  79. Notifications. pve.proxmox.com. Pristupljeno 21. ožujka 2024.
  80. a b Proxmox VE comparison. pve.proxmox.com. Proxmox Server Solutions GmbH. Pristupljeno 10. kolovoza 2022.
  81. https://www.kernel.org/doc/Documentation/x86/x86_64/mm.txt Kernel dokumentacija (sustav virtualne memorije).