Wirtualizacja desktopów to zagadnienie, które zyskuje coraz więcej zwolenników, staje się modnym i popularnym zjawiskiem wśród środowisk zarządzających infrastrukturą IT. Na ten krótki artykuł składają się moje własne przemyślenia i doświadczenia, które nabyłem podczas rozpoznania technologii i analizy opłacalności. Chciałbym pokazać wirtualizację desktopów pracowniczych „od kuchni”, w której nie zawsze jest bezpiecznie i nietrudno się poparzyć. Sądzę, że do tego, by bez błędów wdrażać wirtualizację stanowisk pracy należy mieć na uwadze infrastrukturę firmy, spokojne ekonomiczne podejście i szczegółowo sprecyzowane scenariusze zastosowań. Może się zdarzyć, że w pewnych warunkach, wdrożenie jest nieopłacalne, a mechanizmy, które już działają w organizacji są w stanie zapewnić zbliżoną funkcjonalność w zakresie dystrybucji oprogramowania, monitoringu i bezpieczeństwa stacji roboczych. Kalkulację finansową najlepiej przygotować wewnątrz firmy z uwzględnieniem narzędzi producentów, ale trzeba mieć na uwadze, że proponowane przez producentów narzędzia do kalkulacji opłacalności wirtualizacji najczęściej odnoszą się do rynku amerykańskiego, którego np. koszty pracy, sposoby zarządzania są znacząco różne od naszych krajowych. Przy analizie opłacalności musimy zadać sobie bardzo ważne pytanie, co chcemy osiągnąć wirtualizacją desktopów.

Argumentów przemawiających za wirtualizacją jest z pewnością wiele i znacząca większość z nich była już opisywana na tym blogu. Nie mam żadnych wątpliwości co do szans, jakie oferuje właściwa implementacja projektu. Dobrze realizowana wirtualizacja to stworzenie elastycznego i bezpiecznego stanowiska pracy z wysokim SLA.

Do głównych zalet wirtualizacji zaliczyć można uproszczenie sposobu tworzenia, udostępniania i zarządzania środowiskiem desktopów dla użytkowników, a także ułatwienie instalacji nowych aplikacji. Wirtualizacja to również ograniczenie liczby i czasu trwania potencjalnych awarii.

Co ponadto? Łatwiejsze zarządzanie obrazami systemów użytkowników i licencjami oraz spowolnienie cyklu wymiany komputerów na biurkach użytkowników ze względu na ograniczenie zapotrzebowania na moc obliczeniową, gdyż przetwarzanie odbywa się na serwerze. Dla użytkowników wirtualizacja to bezpieczny dostęp do swoich desktopów z dowolnego urządzenia i miejsca na świecie, a także, co nie mniej ważne, redukcja wymagań sprzętowych.

Ale czy na pewno, wirtualizacja to same zalety??? Oczywiście nie. Kluczowym argumentem na „nie” w stosunku do wirtualizacji mogą być prozaicznie koszty wdrożenia. Pisząc ten artykuł robię to ze standardowego komputera, czyli w naszym przypadku do wdrożenia nie doszło ponieważ cel, jaki mieliśmy osiągnąć nie jest wart wydatków, jakie organizacja musiałaby ponieść, aby ruszyć z projektem. W naszym konkretnym przypadku obecnie wdrożone rozwiązania umożliwiają zarządzanie desktopami i kontrolę stanu bezpieczeństwa, na takim poziomie, że niwelują dużą część zalet jakie przyniosłaby nam wirtualizacja.

Na co powinno się zwrócić uwagę?

Konstruowanie założeń pod wirtualne środowisko należy zacząć od zwrócenia uwagi na to czym już dysponujemy i jak możemy to wykorzystać, w jaki sposób skonstruowana jest organizacja, ilość biur/oddziałów, SLA które chcemy osiągnąć, możliwości sieci oraz kosztów zapewnienia wsparcia użytkowników. Ułatwia to zaplanowanie modyfikacji i uwzględnienie dodatkowych kosztów np. rozwiązań sieciowych, kosztów pozyskania/przeszkolenia pracowników, zarządzających infrastrukturą wirtualną oraz sprzętem komputerowym, który możemy dostosować lub wykorzystać. Będę o tym pisał później.

Scenariusze.

Wirtualizację stanowisk można rozwiązać na kilka sposobów: z jednej strony możemy stworzyć wirtualne maszyny, których pulpity będą widzieli użytkownicy, z drugiej – możemy przygotować środowisko umożliwiające dostęp tylko do wybranych aplikacji. Scenariusze, które brałem pod uwagę to:

  • wirtualne aplikacje (stream, hostowanie aplikacji),
  • wirtualne desktopy (VM),
  • mix obu rozwiązań.

Podczas całego procesu przygotowania wyceny i rozpoznania koncepcja zmieniała się kilkukrotnie, dzięki czemu udało się uzyskać kilka ciekawych obserwacji i poszerzyć „wirtualne” horyzonty.

W sytuacji, w jakiej interesowałem się wdrożeniem wirtualizacji przyjęliśmy, że połowa pracowników będzie posiadała w pełni zwirtualizowane pulpity, pozostałym dostarczymy zdalne aplikacje. Dzięki skalowalności rozwiązań komercyjnych dało się zaobserwować jak, wraz ze wzrostem liczby użytkowników, spadają koszty przygotowania infrastruktury w przeliczeniu na użytkownika. Zajmując się wyceną powinno się uwzględnić wydatki związane z:

  • dodatkowymi licencjami MS potrzebnych do wirtualizacji (m.in. VDA, RDS CAL),
  • licencjami hipervisora,
  • serwerami i licencjami serwerowych,
  • zapewnieniem środowiska high availability,
  • dobraniem macierzy z uwzględnieniem dużej liczby operacji I/O (średnio 17-20 na maszynę),
  • konfiguracją i ew. zmianami w sieci LAN.

W zależności od wybranego scenariusza, zmianie ulegało zapotrzebowanie na licencje, na zasoby serwerowe oraz storage, co miało duży wpływ na koszty całego projektu.

Poza licencjami hipervisora należy dokupić licencje Microsoft, bez których komercyjne rozwiązania (Citrix i Vmware ), z punktu widzenia prawa są nielegalne. Spowodowane jest to tym, że serwery zarządzające są przewidziane tylko do instalacji na serwerach Windows. Dla wszystkich rozwiązań należy dokupić licencję RDS CAL (jeśli nie posiadamy), a w przypadku wirtualnych desktopów również subskrybowaną 3-letnią licencję Virtual Desktop Access VDA. Wszystkie te CAL-e są dostępne bez dodatkowych opłat w przypadku podpisania umowy Microsoft Enterprise Agreement.

My podczas tworzenia wyceny nie mieliśmy podpisanej takiej umowy, przez co koszt samego rozwiązania poszybował do góry i był przysłowiowym gwoździem do trumny dla tego pomysłu.

Ilość potrzebnych serwerów i dodatkowych rozwiązań sieciowych zależy od sposobu i typu wybranej przez nas wirtualizacji. Dzięki tabelom skalowalności możemy znaleźć optymalne (najczęściej niedowartościowane) rozwiązania.

Sprzęt

Założyłem, że na użytkownika będzie przypadało średnio15-20 GB przestrzeni dyskowej. Nie jest to bardzo dużo, ale do normalnej pracy zupełnie wystarczy. Problemy przy wyborze macierzy, na jakie natrafiłem, to nie liczba posiadanego miejsca na dyskach macierzy, ale duża liczba operacji I/O. Duża liczba operacji I/O wymusiła wybór stosunkowo drogich macierzy.

Co z siecią?! Jeśli mamy dużo wirtualnych użytkowników, to trzeba 1 Gb LAN potraktować, jako konieczność i w przypadku braku przepustowości modernizować do tego poziomu.

Z wyborem „pełnej” wirtualizacji stanowiska wiąże się również to, w jakim stopniu będą obciążone procesory serwerów, a ile pracy zostanie przekazane na końcówki klientów. To w dalszym analizach może wskazać sposób wykorzystania komputerów, które już posiadamy lub rodzaj/typ terminali. W przypadku wykorzystania sprzętu, który obecnie posiadamy, moc procesorów zaspokoi zapotrzebowanie maszyn wirtualnych na długi czas. Co za tym idzie komputery te będą mogły wziąć sporą część operacji na siebie.

Innym rozwiązaniem jest zakup terminali. Do wyboru mamy modele ze słabymi procesorami i darmowym oprogramowaniem, jak również wydajne maszyny z Windows. W tym przypadku większa część operacji powinna być realizowana przez serwery, przez to liczba serwerów powinna być większa.

Energia

Przy okazji można pokusić się o sprawdzenie jakie oszczędności na energii elektrycznej zapewnią nam oba rozwiązania.

W przypadku pozostania przy standardowych PC-tach nie wnosimy żadnej oszczędności energii, a wręcz je podnosimy przez dodatkowe serwery. Zużycie biurowego PC-ta z monitorem LCD to średnio 80-90W. Jeżeli wybór padnie na terminale, to zapotrzebowanie stanowiska z monitorem LCD na energię waha się pomiędzy 30 W a 50 W. W jednym i drugim przypadku należy doliczyć dodatkowe zapotrzebowanie generowane przez infrastrukturę sieciowo-serwerową związaną z wirtualizacją.

No więc jak jest z tą oszczędnością?! To zależy od liczby użytkowników i wybranego rozwiązania z stanowiskami pracowników. Przeliczając zapotrzebowanie per osoba wraz z terminalem da się zaobserwować, że w przypadku małej liczby użytkowników (mniejszej niż 500) oszczędności w stosunku do standardowej infrastruktury PC, nie ma lub są niewielkie. Wraz ze wzrostem liczby użytkowników, dzięki skokowej skalowalności korporacyjnych rozwiązań, zapotrzebowanie na energię elektryczną maleje poprzez mniejszą liczbę wymaganych urządzeń serwerowych i sieciowych.

Podsumowanie

Czy wirtualizacja daje oszczędności? Zapewne w pewnych sytuacjach możemy stworzyć środowisko, które przyniesie oszczędności. Będzie się tak działo np. w przypadku w którym firma ma wiele oddziałów i zależy jej na bardzo wysokim SLA (np.: filie banków). W związku z tym, że czym więcej pracowników, tym koszty przygotowania infrastruktury w przeliczeniu na użytkownika spadają. Zatem wirtualizacja może okazać się tańsza dla dużych korporacji z dużą liczbą pracowników. Doskonałym tego przykładem zastosowania jest wdrożony niedawno przez Avon, cloudowy CRM dla 100000 konsultantek rozsianych po całym świecie, w tym dla 3 tysięcy konsultantek w Polsce. W tym szczególnym przypadku struktury organizacji (niezwykle rozproszona sieć pracowników) takie rozwiązanie sprawdza się doskonale.

Ale… są pewne konkretne sytuacje (w tym nasza), w których stworzenie nowego stanowiska pracy opartego o wirtualizację i terminal było niemal dwukrotnie droższe, niż stworzenie stanowiska standardowego, opartego na PC-tach . Wiąże się to m.in. z zakupem drogich licencji MS, hipervisorów. W przypadku, który rozpatrywałem dostosowanie obecnej infrastruktury pod wirtualizację było równe kosztowo z wymianą wszystkich komputerów pracowników na nowe!

Kalkulacje mogą wyglądać inaczej, jeśli posiadamy nowoczesną infrastrukturę sieciową i/lub posiadamy Microsoft Enterprise Agreement.

Jakie wnioski?

W naszym przypadku koszty zaważyły o pozostaniu przy standardowym środowisku. Na pewno będziemy z uwagą przyglądali się wirtualizacji desktopów, która ma oczywiste zalety, ale na ten moment koszty tego rozwiązania są dla nas zbyt wysokie.

Wirtualizacja wnosi dużo dobrego, niestety bardzo wysokim kosztem. Może się okazać, że korzystając z pewnych tańszych lub darmowych rozwiązań możemy również uzyskać wysokie SLA. Przy wirtualizacji należy określić realne potrzeby organizacji i pracowników, i w zależności od tego przygotować konkretne rozwiązanie lub całkowicie zrezygnować z wirtualizacji.


Michał Pluta
Starszy Specjalista Internal Support