Paralelno sa serverskom virtuelizacijom veliki značaj u savremenim IT okruženjima zauzima i desktop virtuelizacija. Virtuelizacija desktop okruženja se sve više odomaćuje u većim kompanijama koje prepoznaju benefite i imaju mogućnosti da implementiraju i otprate potrebnu tehnologiju. Unapređenje produktivnosti putem dostupnosti radnog okruženja, kada i gde je to potrebno uz istovremeno centralizovanje resursa i podataka i njihovo izdvajanje od uređaja sa kojeg se vrši pristup, u skladu je i sa opštim trendom pomeranja ka cloud-u.

Korisnicima se može omogućiti da se kreću i pristupaju radnom okruženju sa bilo kog mesta, a radno okruženje se pri tome nalazi u bezbednim okvirima datacentra i lokalne mreže. Tehnologija omogućuje fleksibilnost, preko potrebnu u savremenim uslovima poslovanja, uz odgovarajući nivo sigurnosti okruženja.

Prema definiciji sa wikipedije, ovaj vid virtuelizacije, odnosi se na virtuelizaciju desktop okruženja korisnika, aplikacija i svih pripadajućih elemenata. Cilj je da se ostvari destop okruženje koje nije “zarobljeno” u uređaju sa kojeg mu pristupamo, već je u odnosu na njega nezavisno.

Da bi smo nastavili sa opisom odgovarajućih tehnologija i načina realizacije, neophodno je da usaglasimo sve terminološke razlike koje mogu da unesu (često i unose) zabunu kada je u pitanju termin – desktop virtuelizacija.

TERMINOLOGIJA

Termin „desktop virtuelizacija“ se često koristi da se označi pokretanje guest operativnog sistema u virtuelnoj mašini, pomoću namenskog softvera za tu svrhu, koji je instaliran na desktop (ili laptop) računaru.  Mnogi od nas preferiraju instalaciju VirtualBox, VMWare Player, Microsoft Virtual PC ili nekog drugog hypervisor softvera, nad konfigurisanjem multiboot okruženja – u ostalom prednosti pokretanja virteulne mašine i operativnog sistema u njoj su očigledne i nećemo ih elaborirati.

Desktop virtuelizacija u ovom značenju predstavlja najjednostavniji način da se na desktop računarima pokrene virtualizovani guest operativni sistem pomoću nekog od raspoloživih softverskih rešenja za tu namenu.
Ovakvo shvatanje desktop virtuelizacije razlikuje se od definicije koju smo predočili na početku, a koja se odnosi na virtuelizaciju desktop okruženja korisnika i njegovih pripadajućih elemenata na bilo koji raspoloživi način, posebno imajući na umu da za postizanje tog cilja, često nije potreban virtuelizovani operativni sistem. Ovde mislimo na rešenja kao što su Terminal server sesije, OS Streaming, Blade PC ili druga rešenja koja ne podrazumevaju hypervisor virtuelizacijju kako bi se korisniku obezbedilo virtuelno desktop okruženje (ili određeni njegov element – virtuelizacija aplikacija).

Dodaćemo i podatak da izraz Virtual desktop, (izvor Wikipedija) ima drugačije značenje u odnosu na Dekstop Virtuelizaciju. Pojam Virtual desktop predstavlja proširenje desktop okruženja korisnika (softverskim putem) izvan fizičkih ograničenja monitora koji ga prikazuje i to je tematika kojom se ovde nećemo baviti.

Zaključujemo ovaj segment o terminologiji i značenju rečenicom koja sublimira najbitnije: Destkop virtuelizacija ima šire značenje od  pokretanja virtuelne mašine i virtualizovanog guest operativnog sistema na desktop ili laptop računarima.

vrstevdi

REŠENJA

Kao i druge tehnologije, desktop virtuelizacija predstavlja sredstvo za postizanje određenog cilja, pa je pri izboru konkretnog rešenja, bilo da je u pitanju izbor tipa – vrste virtuelizacije ili platforme za implementaciju, potrebno što jasnije definisati zahteve koje je rešenje treba da ispuni.  Neophodno je sagledati brojne faktore, kao što je tip radnih zadataka korisnika, resursi kojima pristupaju, sadržaj njihovog desktop okruženja i bezbednosne aspekte, način i lokacije sa kojih je potrebno pristupati, i druge faktore, kako bi se pravilno odabrala odgovarajuća tehnologija i rešenje.

U nastavku teksta pokušaćemo da nabrojimo i kratko pojasnimo osnovna rešenja i načine na koje se može izvršiti virtuelizacija desktop okruženja.

U prethodnom delu koji se bavi terminologijom, opisali  smo jednu vrstu implementacije desktop virtuelizacije – pokretanje virtualizovanog guest OS-a na desktop/laptop računarima  uz pomoć namenski instaliranog softvera i virtuelnih mašina. Osnovna podela rešenja za desktop virtuelizaciju bila bi prema lokaciji rešenja za virtuelizaciju, pri čemu razlikujemo dva osnovna tipa:

  • Desktop Virtuelizacija na strani klijenta (gore navedeni primer) – pri čemu se softver za virtuelizaciju nalazi se na strani klijentskog računara. Imamo klijentski desktop ili laptop koji hostuje virtuelnu mašinu/mašine. Ovaj tip se deli na: bare-metal rešenja (softver za virtuelizaciju instaliran direktno na hardveru) i softverska rešenja koja se instaliraju preko popstojećeg operativnog sistema.
  • Desktop Virtuelizacija na serverima – ovaj tip je mnogo zanimljiviji i u nastavku ćemo se baviti pretežno njime. Resursi virtuelizovanog desktop okruženja (nisu obavezno virtuelne mašine) nalaze se na serverima datacentra, a klijenti im pristupaju sa udaljenih lokacija pomoću namenskih uređaja i protokola. Ovakva organizacija obično podrazumeva i postojanje dodatne infrastrukture koja je namenjene upravljanju, omogućavanju visoke raspoloživosti, kontroli sesija, balansu opterećenja, aspektima bezbednosti i dr.

Kada je Desktop Virtuelizacija na serverima u pitanju, postoji paleta različitih tehnoloških rešenja. Setup ovih rešenja obuhvata serversku stranu koja obezbeđuje (kreira) virtuelno desktop okruženje i klijentsku stranu koja korisniku obezbeđuje sredstva za pristup. Sa strane klijenta koji pristupa virtuelizovanom dekstop-u, takođe postoji nekoliko varijacija rešenja za pristupanje/konektovanje.

Rešenja na strani korisnika uključuju udaljenu konekciju sa standardnog desktop/laptop računara ili zero, odnosno, thin klijente. To su specijalizovani, hardverski “olakšani” uređaji optimizovani samo za remote pristup udaljenom desktopu. Prvo ćemo se pozabaviti rešenjima na serverskoj strani, a u drugom delu teksta biće više informacija o uređajima i protokolima za remote pristup.

VDI (VIRTUELNA DESKTOP INFRASTRUKTURA)

Virtual Desktop Infrastructure (VDI) je tip virtuelizacije desktop okruženja kojeg ne možemo a da ne pomenemo na samom početku, iz razloga popularnosti ove forme organizacije resursa. Pojam Virtuelna Desktop Infrastruktura se ponekad izjednačuje sa desktop virtuelizacijom, što nije odgovarajuće jer desktop virtuelizacija podrazumeva više različitih tehnologija i rešenja, od kojih je VDI (samo) daleko najpopularnije.

vdiobrazacVDI u tipičnoj formi podrazumeva klaster hypervisor servera na kojima su hostovane virtuelne mašine. Korisnici virtuelnim mašinama pristupaju putem remote konekcije i na taj način sa različitih uređaja mogu da koriste svoje desktop okruženje.

Dakle, okruženje je u potpunosti hostovano na serverima, u okviru data centra i odvojeno od fizičkog uređaja sa kojeg mu se pristupa, a ono što je kod VDI rešenja bitno jeste da su u pitanju virtuelne mašine, namenski određene za ovu svrhu.

Benefiti ovakve organizacije radnog okruženja su brojni i dobro poznati i pokušaćemo da izbegnemo detaljno elaboriranje.  Kratko rečeno, benefiti se ogledaju u sledećem:

  • ušteda resursa, (bilo da su u pitanju hardveski resursi i enegrija ili uštede u ljudskom angažovanju koje se ostvaruju kroz lakše upravljanje, jednostavniju podršku i sasvim drugačije i efikasnije procedure oporavka),
  • unapređenja u organizaciji resursa (centralno upravljanje, update sistema, automatizovana instalacija…)
  • unapređenja bezbednosti

Gledano kroz prizmu unapređenja mehanizama oporavka koje omogućuje virtuelizacija (mogućnosti za brz oporavak sistema, kao što je snapshot virtuelne mašine, clastering i dr.), može se reći da Virtuelna Desktop Infrastruktura doprinosi bezbednosti okruženja. Pored navedenog, uklanjanje podataka, aplikacija i/ili kompletnog desktop okruženja sa klijentskog uređaja kojem korisnici direktno pristupaju ima velikog značaja po sigurnost podataka.

Sa druge strane, gledano iz perspektive bezbednosti podataka i sigurnosti okruženja u odnosu na spoljnje faktore situacija je komplikovanija i administratori se ne mogu osloniti samo na mehanizme koje obezbeđuje virtuelizacija.  Samo po sebi, virtuelizovano desktop okruženje je podložno negativnim sigurnosnim uticajima na isti način kao i okruženje na fizičkoj mašini i svi standardni elementi zaštite (antivirus, firewall software i dr.) potrebni su i u jednom i u drugom slučaju.

BLADE PC

bldpcprikazBlade PC je specifično, jedan-na-jedan rešenje za virtuelizaciju desktop okruženja i prvo od nekoliko rešenja koja ne podrazumeva hypervisor virtuelizaciju.

Veći broj PC računara u formi blade modula (ploča sa osnovnim elementima kao što su procesor, memorija i hard drajv), smešteni su u odgovarajuće rack kućište na centralnoj lokaciji, odvojeno od klijenata, odnosno pristupnih uređaja.

Kod ovakvog rešenja klijenti zadržavaju svoje fizičke PC uređaje, ali su ovi uređaji izmešteni sa lokacije korisnika na centralno mesto. Izmeštanjem i grupisanjem blade uređaja u zajedničko rack kućište, postiže se jednostavnije upravljanje i administracija, kao i poboljšanja u sferi sigurnosti, pri čemu cena ovakvog sistema za organizacije/firme koje ga nabavljaju, obično nije ključni faktor.

Najpoznatiji proizvođač Blade PC Sistema (zajedno sa Zero–client pristupnim uređajima) je američka firma ClearCube, čiji su proizvodi tradicionalno namenjeni državnim, medicinskim ili finansijskim institucijama i sličnim okruženjima kojima cena ovakvih rešenja ne predstavlja prepreku. Virtuelizacija se kod ovog rešenja svodi na izmeštanje fizičkog desktop okruženja na drugu lokaciju, pri čemu, kao što smo pomenuli, ovde nema hypervisor virtuelizacije.

OS STREAMING

streaming-operativnogsistemaStreaming operativnog sistema (OS provisioning) je još jedno rešenje koje ne podrazumeva hypervisor virtuelizaciju. Koncept se zasniva na pokretanju (boot) operativnog sistema sa udaljene lokacije.

Operativni sistem, odnosno njegov image fajl, nalazi se na udaljenom mrežnom resursu, a ne na lokalnom disku, pa klijentski računar u ovakvom setup-u ne mora da poseduje hard disk.

Više klijentskih uređaja može da koristi isti image operativnog sistema, a na jednom klijentskom uređaju može biti omogućeno korišćenje, tj. biranje vise različitih image fajlova, odnosno operativnih sistema. Prednosti su u jednostavnom, centralnom upravljanju – jedan image se podešava i kastomizuje za veći broj korisnika, kao i u mogućnosti da se korisnicima obezbedi uvek isto okruženje – sistem se vraća na početno, inicijalno stanje pri svakoj novoj sesiji i promene na kraju sesije neće biti zapamćene. Mogućnost za podešavanja koja bi bila zapamćena kod ovakvih (stateless) desktop okruženja pruža se kroz upravljanje individualnim profilima korisnika, pri čemu core image operativnog sistema i dalje ostaje netaknut.

VIRTUAL DESKTOP PUTEM TERMINAL SESIJE

Terminal servisi omogućuju udaljeno logovanje većeg broja korisnika na Terminal Server. Korisnici pomoću Remote Desktop sesije pristupaju udaljenom serveru, aplikacijama i resursima koji se na serveru nalaze. Ovaj način virtuelizacije desktop-a takođe ne mora da podrazumeva korišćenje hypervisor-a, tj. ‘’pravu” virtuelizaciju – nema virtuelnih mašina kojima korisnici pristupaju, umesto toga, svako dobija svoju “porciju” resursa na serveru putem remote sesije.

Sa druge strane, sam Terminal Server može biti hostovan u okviru virtuelne mašine i nekog rešenja za hypervisor virtuelizaciju. Iskorišćenje resursa je mnogo bolje sa Terminal Servisima nego kada je Virtual Desktop Infrastruktura u pitanju, pa broj istovremenih korisnika može biti znatno veći za iste hardverske resurse. Terminal Services tehnologija je zrela, stabilna i potvrđena u praksi.

Pored odličnog iskorišćenja resursa, sigurnost i mogućnosti upravljanja sistemom su odlične, a osnovna mana je single point of failure, odnosno činjenica da se veliki broj korisnika istovremeno loguje na isti server i koristi njegove resurse pa će u slučaju problema ili otkaza biti kompromitovan rad svih korisnika.

VIRTUELIZACIJA APLIKACIJA

virtualizacija-aplikacija-281x300Aplikacije kao deo korisničkog desktop okruženja, takođe mogu biti virtuelizovane. Pri virtuelizaciji aplkacija, one nisu instalirane na regularan način, već se pokreću odvojeno od operativnog sistema.

Aplikacije se na ovaj način mogu pokretati u okviru virtuelizacionog sloja na samom klijentskom računaru – izolovano od ostatka sistema (tzv. sandbox) ili se može vršiti njihova distribucija preko mreže. U drugom slučaju, pri distribuciji preko mreže, sama aplikacija nalazi se na nekom mrežnom resursu, a na strani klijenta je potreban agent koji ovu distribuciju omogućuje. U oba slučaja, karakteristično je da su aplikacije izolovane od ostatka sistema i nema interakcije sa standardnim okruženjem koje operativni sistem obezbeđuje aplikacijama koje su regularno instalirane.

Još jedan bitan pojam vezan za virtuelizaciju aplikacija je streaming. Pun naziv ove vrste virtuelizacije je Aplication Streaming. Pojam označava pokretanje aplikacije sa mrežnog resursa na takav način da se ona izvršava na klijentskom sistemu, a agent preko mreže, na lokalni drajv povlači (kopira) samo one delove koji su neophodni za izvršavanje. Kada su potrebne dodatne funkcionalnosti aplikacije, agent će u lokalni keš sa mreže povući dodatne izvršne blokove.

PRISTUPNI UREĐAJI

Sredstvo za pristup virtuelizovanom desktop okruženju je bitna tačka u kojoj se mogu ostvariti uštede. Budući da se procesuiranje koje troši hardveske resurse kod dekstop virtuelizacije odvija na serverskoj strani, kada je hardver na klijentskoj strani u pitanju (uređaj putem kojeg se ostvaruje remote pristup), dovoljna je i vrlo slaba PC konfiguracija, laptop,  tablet ili čak smartphone. Kada je u pitanju lokacija unutar poslovnog okruženja, idealno rešenje je  specijalizovani, svedeni hardver koji je u stanju da podrži prezentovanje grafičkog interfejsa i povezivanje neophodnih perifernih uređaja

zeroklijent-arhitektura-300x127Postoje dve osnovne vrste ovakvih uređaja, hardverski i softverski “očišćenih” od svih suvišnih elemenata i svedenih na komponente koje su dovoljne za izvršenje osnovne funkcije – kreiranje remote sesije ka back-end serverima.

Generalno, ovakvi uređaji mogu da poseduju samo USB portove za konekciju periferija (tastatura, miš, eventualno printer, skener), VGA ili DVI izlaz za monitor i LAN Ethernet ili WiFi konekciju ka serveru, alternativno manju količinu RAM memorije i skladištnog  prostora, zavisno od vrste uređaja i softvera koji se na njemu pokreće (ili ne pokreće).

“Thin client” je end-point uređaj namenjen za kreiranje remote sesija i pristup VDI desktop okruženju. S obzirom na funkciju kojoj su namenjeni “Thin” klijenti poseduju specijalizovani maksimalno svedeni operativni sistem (koji zahteva određene storage resurse) čija je uloga isključivo da podrži priključene periferije i neke od VDI konekcionih protokola (RDP, Remote FX, ICA, EOP,  PCoIP, web klijent…)  ”Zero client” uređaji ne poseduju operativni sistem pa samim time ne zahtevaju posebno konfigurisanje,  zasnovani su na ARM procesorskoj arhitekturi  i manje su fleksibilni, budući da je firmware specijalizovan za određeni protokol ili nekoliko njih.

Na strani ”Zero” klijenta su jednostavnost upravljanja samim klijentom (jer nema konfigurisanja), bolje performanse i manja potrošnja energije, kao i praktično apsolutna otpornost na viruse (nema operativnog sistema).

Prednosti “Thin” klijenata su u  fleksibilnosti, podršci za veći broj protokola i vise tipova serverskih sesija ka različitim VDI “provajderima” (serverska rešenja za virtuelizaciju desktop okruženja), kao i većem spektru aplikacija koje mogu da podrže,  odnosno mogućnosti za administratore da podešavaju bazično okruženje prema potrebama specifičnog korisnika.

ZAKLJUČAK

Postoji veliki broj različitih implementacija virtuelizacije desktop okruženja i još veći broj tehnologija koje ih omogućuju. U ovom tekstu, pomenuli smo i kratko opisali osnovne vidove i neke od tehnologija koje su primenjive u svrhu virtuelizacije desktop-a. Obilje resursa za dublje izučavanje ove tematike je raspoloživo na internetu.

Za početak, najbitnije je dobro evaluirati radne zadatke i okruženje korisnika, kao i njihove potrebe, kako bi se pristupilo projektovanju odgovarajućeg rešenja. Ovakav projekat, u zavisnosti od veličine okruženja i kompleksnosti rešenja, često može da prevaziđe kapacitete lokalnog IT tima, pa je potrebno implementaciju poveriti firmi sa iskustvom u ovoj oblasti.

itmogul-logoTekst je preuzet sa ugašenog bloga IT modul i originalni autor ovog teksta je Branko Petrović. Kompjuteraš IT blog će objavljivati tekstove sa tog bloga kako riznica znanja sa te lokacije ne bi otišla u zaborav.