Jak smakuje wirtualizacja na Proxmox PVE
Proxmox to darmowy przepiękny system operacyjny oparty o Debiana aktualnie lennego. Do pracy potrzebuje architekturę amd64 oraz opcjonalnie "kopa" dla wirtualizacji od strony procesora i płyty głównej. Owe wsparcie nosi nazwę Intel-VT dla procesorów Intela oraz AMD-V dla procesorów AMD. Warto od razu zaznaczyć, że rozwiązania AMD są o wiele tańsze niż Intel o czym miałem okazję przekonać się. Ja kupiłem Intel Quad Core 9600 a kumpel Athlona XP 64 core 2 i funkcjonalność jest podobna. Różnice w cenie sprawdźcie sobie sami 😉
Instalkę Proxmoxa ściągnąć można z sieci jako obraz iso, z którym wiadomo co się robi. Sam proces instalacji jest dokładnie opisany na oficjalnej stronie www i jest bajecznie prosty. Warto tylko dodać, że dystrybucja nie posiada wsparcia dla sotfwarowego raida a partycje instaluje jako LVM2 więc przed przystąpieniem do montażu Proxmoxa odwiedź najpierw wujka googla i sprawdź co to jest "Logical Volume Management". Swoją drogą jakiś czas temu uparłem się i postawiłem Proxa na softowym raid1 ale proces ten był mocno skomplikowany i w czasie testów na "żywym organizmie" stwierdziłem, że działa to wszystko strasznie powoli.
Apropos tematu postu. Proxmox umożliwia pracę w dwóch trybach wirtualizacji:
- Containers (OpenVZ) czyli dziecko korzysta z jaja mamy
- Fully Virtualized (KVM, Qemu) czyli dziecko ma swój własny emulowany sprzęt, do tego potrzeba dzieciakowi Intel-VT lub AMD-V
Pierwsza opcja moim zdaniem nadaje się perfekcyjnie jako baza dla serwerów hostingowych, pocztowych, dns itd ponieważ z poziomu mamusi można przeglądać bezpośrednio system plików dziecka. Jest to nieocenione w przypadku systemów backupowych (backup danych). W przypadku OpenVZ mamy jednak bardzo ograniczone możliwości korzystania z iptables czyli tworzenia firewalla. Obsługa sieci dla OpenVZ odbywa się na poziomie warstwy trzeciej przy użyciu routingu poprzez wirtualne interfejsy lub na poziomie warstwy drugiej (bridż). Wszystkie procesy uruchamiane przez dzieci są widzialne pod:
ps ax
wykonane u mamusi. Daje nam to dodatkową kontrolę nad nimi (np kill -9 hehe). Dodatkowo z poziomu mamy można przejść bezpośrednio na # konsoli wirtualnej maszyny bez znajomości hasła superusera prostym poleceniem:
vzctl enter id_maszyny
Wirtualizacja na poziomie systemu operacyjnego, którą jest OpenVZ umożliwia pracę jedynie w środowisku linux pod ograniczoną ilością dystrybucji. Oficjalne i nieoficjalne templatki VZ można znaleźć bez problemu w sieci.
Druga opcja (Qemu, KVM) przeznaczona jest bardziej dla routerów, które muszą mieć pełny dostęp do iptables oraz dla systemów operacyjnych != linux-kernel. Nic nie stoi na przeszkodzie aby zainstalować sobie WindeXP, Viste (ugh) albo inne cuda na czymś takim. Pytanie tylko po co 😉 Pełna wirtualizacja zabiera nam jednak możliwość dostępu do drzewa katalogów dzieci z poziomu matki. Nie ma również możliwości logowania do dziecka bez autoryzacji. Obsługa sieci jest możliwa tylko na poziomie warstwy drugiej (bridż).
Całością zarządzać można na dwa sposoby:
- poprzez konsolę
- poprzez gui ssl-owe przez przeglądarkę
Praca z Proxmoxem jest dość intuicyjna. Jeśli znasz podstawy sieci (warstwa 2 i 3) to odpalenie wirtualizacji zajmie Ci max godzinę zegarową. Jeśli nie - zapytaj kogoś kto zna - będzie szybciej 😉
Kolega Fair jest w trakcie tworzenia panelu dla klienta dla Proxmox, który Wam polecam. Kliknij tu po więcej szczegółów.