2010 04 Red Hat i wirtualizacja [Rozwiazania]

background image

Rozwiązania

Red Hat i wirtualizacja

32

kwiecień 2010

linux@software.com.pl

Red Hat
i wirtualizacja

Firma Red Hat w swoim systemie operacyjnym ofi cjalnie wspiera dwa mechanizmy wirtualizacji:
Xen oraz KVM

Bohdan Sydor

F

irma Red Hat, publikując w marcu 2007 roku

system Red Hat Enterprise Linux 5 udostępni-

ła mechanizm wirtualizacji Xen. Zasada dzia-

łania była dokładnie taka sama, jak w konku-

rencyjnym produkcie Novell SUSE Linux Enterprise Se-

rver 10, czyli kupując subskrypcję na używanie dystrybu-

cji, mamy możliwość bez dodatkowych opłat używać me-

chanizmu wirtualizacji dla architektur x86 oraz x86_64.

Warto przy okazji pamiętać, że technologia Xen pierwot-

nie opracowana na Uniwersytecie w Cambridge wymaga

załadowania odpowiedniego hypervisora, który to z ko-

lei uruchamia specjalnie zmodyfi kowane jądro Linuksa.

Xen obsługuje dwa tryby wirtualizacji: para wirtualizację

oraz pełną wirtualizację. Ta ostatnia wymaga specjalnego

wsparcia sprzętowego dla pełnej wirtualizacji w proceso-

rze, które jest dostarczane w technologiach zarówno Inte-

la (Intel-VT), jak i AMD (AMD-V). Ani sam hypervisor

Xen, ani modyfi kacje jądra Linux do pracy w tej technolo-

gii nie są dostępne w głównej gałęzi jądra Linux. Funkcjo-

nalność wirtualizacji Xen jest dostarczana przez develope-

rów konkretnych dystrybucji, najczęściej poprzez osobne

pakiety z tak przygotowanym jądrem Linux. Technologia

Xen jest dostępna wyłącznie w RHEL5 i nie będzie dalej

rozwijana przez fi rmę RedHat.

Firma Red Hat w ramach projektu ET (EmergingTech-

nology, et.redhat.com) rozwija libvirt – API do wirtualizacji

pozwalającego na lokalne i bezpieczne zdalne zarządzanie

maszynami wirtualnymi, pulami pamięci masowych i wirtu-

alnymi sieciami. Przy użyciu tej biblioteki można w prosty

sposób wysokopoziomowo zarządzać systemami z wirtuali-

zacją poprzez dostępne narzędzia zarówno tekstowe (virsh),

jak i grafi czne (virt-manager). We wrześniu 2008 roku Red

Hat ogłosił przejęcie fi rmy Qumra net.Przejęcie obejmowa-

ło rozwiązanie wirtualizacyjne, włączając KVM (Kernel-ba-

sed Virtual Machine) oraz SolidICE – infrastrukturę wirtu-

alnych desktopów, co razem daje kompletną platformę wir-

tualizacyjną dla klientów korporacyjnych.Tym samym Red

Hat, rozszerzając swoje portfolio dotyczące usług wirtuali-

zacyjnych, wzbogacił się o ofertę, która pozwala na zwięk-

szenie niezawodności i zredukowanie kosztów infrastruktu-

ry IT, poprzez udostępnienie następujących rozwiązań:

RHEL – wiodący otwarty system operacyjny z wbu-

dowaną wirtualizacją,

32-36-redhat.indd 32

2010-02-26, 17:49:55

background image

Rozwiązania

Red Hat i wirtualizacja

33

www.lpmagazine.org

• wbudowany hypevisor wspierający syste-

my RHEL i MSWindows,

• spójna platforma zarządzająca zarówno dla

maszyn fi zycznych, jak i wirtualnych.

KVM jest technologią pełnej wirtualizacji do-

stępną w jądrze Linux dla architektury x86

i x86_64 zawierającej rozszerzenia wirtualiza-

cyjne (IntelVT lub AMD-V). Składa się z mo-

dułów do jądra:

kvm.ko, które dostarcza podstawową infra-

strukturę wirtualizacyjną, a także moduł spe-

cyfi

czny dla procesora, kvm-intel.ko lub

kvm-amd.ko. KVM wymaga także zmodyfi -

kowanego QEMU w przestrzeni użytkownika.

Przy użyciu KVM można uruchamiać maszy-

ny wirtualne z niezmodyfi kowanym jądrem

Linux lub Windows. Każda maszyna wirtual-

na posiada własny wirtualny sprzęt:

• kartę sieciową, dysk, kartę grafi czną itp.

Pierwotnie KVM powstał jako łata na ją-

dro składająca się z 500 linii kodu i jest

obecny w głównej linii jądra Linux od

wersji 2.6.20.W RHEL KVM jest obecny

od wersji 5.4 (wrzesień 2009) i stał się do-

myślną technologią wirtualizacji dla tego

systemu.

Główną różnicą pomiędzy Xen i KVM jest ar-

chitektura: Xen jest zewnętrznym hyperviso-

rem; przejmuje on kontrolę nad maszynami

i dzieli zasoby pomiędzy gości. Z drugiej stro-

ny KVM jest częścią jądra Linux i wykorzystu-

je standardowy scheduler i zarządzanie pamię-

cią. Oznacza to, że KVM jest o wiele mniejszy

i prostszy w użyciu, a także bardziej elastyczny.

Z drugiej strony KVM działa wyłącznie w try-

bie pełnej wirtualizacji, gdzie Xen może praco-

wać zarówno w pełnej, jak i para wirtualizacji,

jednakże KVM wspiera para wirtualne sterow-

niki dla urządzeń blokowych i sieciowych, któ-

re poprawiają operacje I/O do osiągów zbliżo-

nych do tych, które występują na fi zycznym

sprzęcie. Red Hat dostarcza sterowników Vir-

tIO dla systemów RHEL od wersji 4.8 i 5.3 oraz

dla systemów MS Windows.

W listopadzie 2009 roku Red Hat ofi cjal-

nie wydał nowy produkt noszący nazwę Red

Hat Enterprise Virtualization (RHEV) for Se-

rvers.W chwili pisania niniejszego artykułu

wersja dla desktopów znajduje się w fazie be-

ta. Podstawowe elementy składowe RHEV to

jądro Linux z KVM, libvirt oraz Red Hat En-

terprise Virtualization Manager – oprogramo-

wanie zarządzające systemem wirtualizacyj-

nym, odpowiedzialne za wysoką dostępność,

migrację maszyn wirtualnych, zarządzanie-

przestrzenią dyskową, a także dynamiczne za-

rządzanie zasobami sprzętowymi. Zarządzanie

odbywa się przez przeglądarkę WWW. Wy-

magania sprzętowe, które muszą być spełnio-

ne, aby wdrożyć produkt, to 64-bitowe ma-

szyny ze wsparciem pełnej wirtualizacji In-

tel VT lub AMD-V, a także macierz dyskowa

udostępniająca przestrzeń dyskową protokoła-

mi FC, iSCSI lub NFS. Pikanterii dodaje fakt,

że RHEV Manager działa wyłącznie pod syste-

mem MS Windows Server2003 z .NET, Power-

Shell oraz SQLServer. Dla osób decydujących

o wdrożeniu RHEV na wielką skalę na pewno

będzie miało znaczenie, że Red Hat w swojej

ofercie edukacyjnej wprowadził nową certyfi -

kację Red Hat Certifi ed Virtualization Admini-

strator składającą się z praktycznego egzaminu

(EX318RHCVA) oraz czterodniowego szko-

lenia przygotowującego (RH318 Red Hat En-

terprise Virtualization). Dla osób ubiegających

się o tytuł RHCDS lub RHCA egzamin EX318

może zastąpić egzamin EX423 Red Hat Enter-

prise Directory Services and Authentication.

Certyfi kowani administratorzy RHEV dają for-

malną gwarancję, że produktem zarządza kom-

petentny personel.

Licencjonowanie

Red Hat sprzedaje swoje produkty w posta-

ci subskrypcji na pojedynczy fi zyczny serwer

(w zależności od produktu dochodzi dodatko-

wo ograniczenie na ilość fi zycznych proceso-

rów w serwerze).

Czas trwania subskrypcji to standardowo

jeden rok. Ten model sprzedaży oznacza, że

kupując wolne oprogramowanie, mamy tak-

że dostęp do kodów źródłowych, poprawek

bezpieczeństwa, a także do wszystkich wer-

sji zakupionego produktu, które są aktualnie

wspierane przez Red Hata. Możemy zatem

swobodnie podnosić i obniżać wersje nasze-

go systemu w zależności od naszych aktual-

nych potrzeb.

Red Hat Enterprise Linux jest wpierany

przez 7 lat od momentu publikacji, a następna

wersja pojawia się co około 3 lata. W kilkumie-

sięcznych odstępach czasu pojawiają się uak-

tualnione wydania, tzw. Update, będący odpo-

wiednikiem do Service Pack w produktach Mi-

crosoft czy Novell. Oprócz obrazów ISO ze

zaktualizowanymi wersjami pakietów,często-

także jest modernizowana funkcjonalność jądra

przez chociażby dodanie nowych sterowników,

a czasami także są podnoszone wersje pakietów

znajdujących się w dystrybucji.

Również przy wydaniu update’ów aktuali-

zowana jest lista kompatybilnego sprzętu, znaj-

dująca się pod adresem hardware.redhat.com.

Ustalony cykl wydawniczy pozwala na prze-

prowadzenie certyfi kacji zgodności zarówno ze

sprzętem, jak i z oprogramowaniem fi rm trze-

Rysunek 1.

Wybór typu wirtualizacji i architektury

systemu-ogścia w virt-manager

Rysunek 2.

Wybór grupy KVM w managerze oprogramowania pozwala łatwo zainstalować niezbędne ele-

menty do wirtualizacji KVM

32-36-redhat.indd 33

2010-02-26, 17:50:02

background image

34

kwiecień 2010

Rozwiązania

Red Hat i wirtualizacja

cich. Także w ramach wykupionej subskrypcji

mamy dostęp do pomocy technicznej oraz do

Red Hat Network. Pod kątem wirtualizacji inte-

resować będą nas produkty:

• Red Hat Enterprise Linux – do 2 fi zycz-

nych procesorów, maksymalnie 4 maszy-

ny wirtualne.

• Red Hat Enterprise Linux Advanced Plat-

form – nieograniczona ilość procesorów

w serwerze i maszyn wirtualnych.

• Red Hat Enterprise Virtualization – RHEV

Hypervisor ograniczony do 1 fi zycznego

procesora, brak maszyn wirtualnych. Za-

wiera RHEV Manager.

• Red Hat Enterprise Linux as a Virtual Gu-

est 4 Packs – „czteropak” kupowany na

każdy hypervisor osobno.W tym wariancie

każdy pojedynczy fi zyczny serwer nie mo-

że obsługiwać więcej niż cztery maszyny

wirtualne.

• Red Hat Enterprise Linux as aVirtual Gu-

est 100 Packs – paczka stu maszyn wirtu-

alnych z RHEL na każdy pojedynczy fi -

zyczny procesor na każdym fi zycznym

serwerze.

Produkty zawierające rozwiązania wirtualiza-

cyjne oparte o KVM są dostępne wyłącznie na

architekturę x86_64.

Instalacja hosta
i maszyn wirtualnych w RHEL

W RHEL 5.4 mamy dostępne dwa hyperviso-

ry: Xen oraz KVM, jednak w tym samym cza-

sie możemy używać tylko jednego. Należy pa-

miętać, że Xen wymaga osobnego jądra znajdu-

jącego się w pakiecie kernel-xen, a ten nie za-

wiera KVM. Z kolei KVM zawiera się w stan-

dardowych pakietach z jądrem kernel wyłącz-

nie na architekturę x86_64. Obecnie nie istnie-

je żadna aplikacja pozwalająca na uruchamianie

systemów–gości z Xen pod KVM i odwrotnie.

Red Hat ofi cjalnie zaleca instalację tylko jed-

nego hypervisora—tego, którego zamierzamy

używać do wirtualizacji.

Instalacja hosta z XEN

Jeśli mamy już zainstalowany system, to mu-

simy doinstalować obowiązkowe pakiety, któ-

re zmienią nasz systemw Domain-0 oraz bę-

dziemy potrzebować pakietów z narzędziami

zarządzającymi:

• kernel-xen

• xen

• virt-manager

• libvirt

• libvirt-python

• python-virtinst

Alternatywnie możemy zainstalować grupę pa-

kietów Virtualization. Po instalacji musimy zre-

startować system i wybrać w managerze łado-

wania jądro z obsługą Xen.

Instalacja hosta z KVM

Na zainstalowanym systemie włączamy obsłu-

gę KVM poprzez zainstalowanie obowiązko-

wych pakietów: zawierających moduły jądra

z funkcjonalnością hypervisora oraz z narzę-

dziami zarządzającymi:

• kvm

• virt-manager

• libvirt

• libvirt-python

• python-virtinst

Alternatywnie możemy zainstalować grupę pa-

kietów KVM. Ciągle pamiętajmy, że aby uży-

wać KVM, system RHEL 5.4 musi być na ar-

chitekturze x86_64 oraz musi być włączone

sprzętowe wsparcie wirtualizacji w procesorze.

Narzędzia zarządzające

W związku z tym, że w systemach Red Hat ma-

my dostępną bibliotekę libvirt, skorzystamy

z wysokopoziomowych narzędzi zarządzających

bazujących właśnie na niej. Są to trzy polecenia:

Rysunek 3.

virt-manager --- ogólny widok na zestaw maszyn wirtualnych oraz ich stan

Rysunek 4.

virt-manager --- maszyna wirtualna w RHEL 5.4

32-36-redhat.indd 34

2010-02-26, 17:50:10

background image

www.lpmagazine.org

• virt-manager

• virsh

• virt-install

• virt-manager

Jest to grafi czne narzędzie, od którego naj-

łatwiej jest zacząć zarządzanie wirtualizacją

w systemach RHEL bez względu na to, czy jest

to Xen, czy KVM. Przy jego pomocy możemy

instalować nowe maszyny wirtualne, urucha-

miać istniejące, przypisywać wirtualne zasoby,

zarządzać wirtualnymi sieciami oraz pulami pa-

mięci masowych.

Instalując nową maszynę wirtualną, defi -

niujemy: nazwę, typ wirtualizacji (w przypadku

KVM, tylko pełna wirtualizacja jest możliwa),

architekturę (i686 lub x86_64), źródło instalacji

(lokalne medium:CD-ROM lub obraz ISO, źró-

dło sieciowe:HTTP,FTP,NFS;PXE), a także typ

i wariant systemu operacyjnego.

Następnie wybieramy urządzenie bloko-

we dla wirtualnego systemu – wskazujemy al-

bo już istniejące urządzenie blokowe (partycja

lub wolumen logiczny), albo plik w systemie

plikowym.Warto pamiętać, że najwyższą wy-

dajność operacji I/O uzyskamy, jeśli wirtual-

nym dyskiem będzie urządzenie blokowe, ale

z drugiej strony, to większą elastyczność uzy-

skamy, zarządzając wirtualnymi dyskami, któ-

re są plikami.

Kolejnym etapem defi niowania maszyny

wirtualnej jest wybór sieci. Musimy określić,

czy chcemy korzystać z sieci wirtualnej, czy

bezpośrednio podłączyć maszynę do fi zyczne-

go segmentu LAN poprzez wcześniej utworzo-

ny bridge, którego elementem będzie fi zyczna

karta sieciowa. Tworzenie mostka odbywa się

poprzez wywołania polecenia brctl, a żeby na-

sza konfi guracja przeżyła restart, to należy od-

powiednio skonfi gurować skrypty startowe ini-

cjalizujące sieć.

Ostatnim elementem przy defi niowaniu za-

sobów jest przypisanie ilości pamięci operacyj-

nej oraz ilości wirtualnych procesorów. Zaleca

się, aby ilość wirtualnych procesorów w maszy-

nie wirtualnej była mniejsza lub równa ilości fi -

zycznych procesorów.

virt-install

To polecenie działa w trybie tekstowym i głów-

nie służy do tekstowych, nieinteraktywnych in-

stalacji wirtualnych systemów, np. przy użyciu

trybu kickstart virsh

Polecenie virsh działa w dwóch trybach: in-

teraktywnym (uruchamia własną powłokę) oraz

nieinteraktywnym. Przy jego pomocy możemy

zarządzać maszynami wirtualnymi m.in.: do-

dawać, usuwać, uruchamiać, restartować, wy-

łączać, hibernować czy migrować. Mamy tak-

że możliwość połączyć się przez wirtualną kon-

solę szeregową.

RHEV Manager

Jeśli kupiliśmy nowy produkt Red Hata— Red

Hat Enterprise Virtualization, to zarządzanie

wirtualizacją możemy dokonywać z centralne-

go punktu RHEV Manager. Zarządzanie odby-

wa się poprzez przeglądarkę WWW. Przy uży-

ciu RHEV faktycznie oddzielamy warstwę fi -

zyczną od wirtualnej, możemy łatwo i wygod-

Rysunek 5.

virt-manager --- instalacja gościa w RHEL 5.4 w trybie tekstowym

32-36-redhat.indd 35

2010-02-26, 17:50:17

background image

36

kwiecień 2010

Rozwiązania

Red Hat i wirtualizacja

nie administrować tysiącami hypervisorów czy

maszyn wirtualnych. Należy mieć na uwadze,

że jeśli decydujemy się na RHEV, to ręcznie nie

będziemy mogli zasobami zarządzać.

Migracja

Popularną cechą związaną z wirtualizacją jest

migracja. W RHEL z KVM możemy wykony-

wać migrację poprzez zamrożenie systemu–go-

ścia lub dokonać migracji bez przerywania jego

działania (tzw. Livemigration). Migracja pole-

ga na replikacji zawartości RAM maszyny wir-

tualnej pomiędzy hypervisorami. Domyślnie do

replikacji używa się transportu SSH, dlatego

musimy mieć możliwość zalogowania się przez

SSH na konto użytkownika root. Aby móc do-

konać migracji, maszyny wirtualne muszą mieć

swoje dyski zlokalizowane na współdzielonym

zasobie dyskowym (np. NFS, i SCSI). Proces

migracji możemy przeprowadzić narzędzia-

mi virsh czy virt-manager lub też z poziomu

RHEV Manager.

Środowisko wysokiej dostępności

Wysoką dostępność dla wirtualizacji Red Hata

możemy zapewnić na dwa sposoby: albo przy

wykorzystaniu Red Hat Cluster Suite, albo Red

Hat Enterprise Virtualization.

RHCS może zapewnić wysoką dostęp-

ność dla maszyn wirtualnych zarówno działają-

cych pod kontrolą hypervisora Xen, jak i KVM.

Oprogramowanie klastrowe samodzielnie wy-

krywa działający hypervisor, możemy wtedy

zdefi niować zasób klastra, który jest maszyną

wirtualną. Z kolei RHEV wymaga wyłącznie

KVM. We właściwościach maszyny wirtualnej

zaznaczamy, czy ma być zapewniona wysoka

dostępność dla danegosystemu. Jeśli odpowie-

my twierdząco, to w przypadku, gdy maszyna

wirtualna lub hypervisor zakończy pracę nie-

spodziewanie, maszyna wirtualna zostanie pod-

niesiona na innym hypervisorze.

Podsumowując, rozwiązania wirtualiza-

cyjne fi rmy Red Hat są wbudowane w system

operacyjny, więc możemy wirtualizować ser-

wery bez żadnych dodatkowych opłat. Szcze-

gólnie atrakcyjny jest wariant RHEL Advanced

Platform, gdzie po zainstalowaniu tego systemu

na fi zycznym serwerze, możemy używać nieli-

mitowanej ilości maszyn wirtualnych. Jednak-

że w przypadku wdrożeń na wielką skalę, warto

rozważyć zakupienie produktu RHEV, aby sko-

rzystać z mechanizmu centralnego zarządzania,

skalującego się do tysięcy serwerów fi zycznych

i maszyn wirtualnych.

Wykorzystanie możliwości wirtualizacji

w produktach fi rmy Red Hat wymaga znajomo-

ści pracy w systemach linuksowych. Aby unik-

nąć przykrych niespodzianek po wdrożeniu,

warto rozważyć przeszkolenie administrato-

rów na ofi cjalnych ścieżkach certyfi kacyjnych,

znajdujących się w ofercie szkoleniowej. Warto

wziąć udział w takich szkoleniach, nawet jeśli

jesteśmy już doświadczonymi administratorami

innych dystrybucji linuksowych, gdyż na takim

kursie dowiemy się, jak to się robi w Red Hacie,

nie tracąc czasu na błądzenie po systemie. Pod-

stawowym kursem poruszającym administrację

systemem oraz zagadnienia związanez możli-

wościami wirtualizacji jest kurs RH131 Red

Hat System Administration. Natomiast szko-

lenie dedykowane zaawansowanym zagadnie-

niom wirtualizacyjnym to RH318 Red Hat Vir-

tualization Administration.

Bohdan Sydor jest wykładowcą w Com-

pendium Centrum Edukacyjnym. Prowadzi

szkolenia z systemów open source, głównie

z oferty szkoleniowej fi rm Red Hat i Novell.

O autorze

Rysunek 7.

virt-manager --- instalacja gościa w RHEL 5.4 w trybie tekstowym

Rysunek 6.

virt-manager --- instalacja gościa w RHEL 5.4 w trybie tekstowym

32-36-redhat.indd 36

2010-02-26, 17:50:26


Wyszukiwarka

Podobne podstrony:

więcej podobnych podstron