BETA
Aby się zalogować, najpiew wybierz portal.
Aby się zarejestrować, najpiew wybierz portal.
Podaj słowa kluczowe
Słowa kluczowe muszą mieć co najmniej 3 sąsiadujące znaki alfanumeryczne
Pole zawiera niedozwolone znaki

Baza wiedzy











APP-V, czyli wirtualizacja aplikacji. Część 1. Budowa środowiska i jego konfiguracja

26-11-2009 15:00 | Kamil Skalski
W ostatnim czasie wirtualizacja staje się kluczowym i coraz bardziej popularnym rozwiązaniem. Występuje na różnych poziomach działania - od konsolidacji serwerów po wirtualizację prezentacji. Jednym z rodzajów wirtualizacji jest jej realizacja na poziomie aplikacji, czyli wirtualizacja aplikacji. Produkt firmy Microsoft realizujący to rozwiązanie nosi nazwę Microsoft Application Virtualization (wcześniej SoftGrid), popularnie - APP-V.

W ostatnim czasie wirtualizacja staje się kluczowym i coraz bardziej popularnym rozwiązaniem. Występuje na różnych poziomach działania - od konsolidacji serwerów po wirtualizację prezentacji. Jednym z rodzajów wirtualizacji jest jej realizacja na poziomie aplikacji, czyli wirtualizacja aplikacji. Produkt firmy Microsoft realizujący to rozwiązanie nosi nazwę Microsoft Application Virtualization (wcześniej SoftGrid), popularnie - APP-V.

Podobnie jak w przypadku MED-V (Microsoft Enterprise Desktop Virtualization), wirtualizacja aplikacji została dołączona do pakietu Microsoft Desktop Optimization Pack (MDOP) dostępnego dla firm posiadających umowy Software Assurance. W pakiecie znajdują się wszystkie komponenty oprócz aplikacji klienckiej APP-V dla serwerów terminalowych, która występuje jako niezależny instalator.

Idea działania środowiska wirtualnych aplikacji polega na tworzeniu paczek, zawierających dane, usługi, rejestry i biblioteki związane z aplikacją, przez monitorowanie instalacji za pomocą komponentu Sequencer. Tak przygotowane paczki dystrybuowane są za pośrednictwem Management Server lub Streaming Server do klientów typu desktop lub terminal Server.

Składniki Application Virtualization:

  • APP-V Sequencer - monitoruje instalacje i tworzy paczki z wirtualnymi aplikacjami.
  • APP-V Management Server - zarządza wirtualnymi paczkami, uprawnieniami, licencjami oraz protokołami dostarczania aplikacji klientom. Aplikacje dystrybuowane za jego pomocą muszą zostać przesłane w całości przed uruchomieniem.
  • APP-V Streaming Server -przesyła wirtualne paczki w częściach. Skraca się w ten sposób czas potrzebny do pierwszego uruchomienia aplikacji, która jest dzielona na mniejsze porcje danych wysyłane dopiero, gdy zażąda ich klient.
  • APP-V Desktop Client - środowisko klienckie wirtualizacji aplikacji, które pozwala na konfigurację połączeń z serwerami oraz uruchamianie wirtualnych aplikacji.
  • APP-V Client for Terminal Services - specjalna wersja klienta przeznaczona do serwerów usług terminalowych. Aktualne warunki licencjonowania wymagają posiadania licencji CAL dla usług terminalowych Windows Server, wcześniej była dostępna także specjalna wersja APP-V CAL for TS.

 

Rys. 1. Komponenty APP-V 4.5 zawarte w MDOP 2009.

Zestawienie wymogów

Komponenty Application Virtualization 4.5 mają stosunkowo małe wymagania sprzętowe i systemowe, dzięki czemu umożliwiają łatwą implementację rozwiązania wirtualizacji aplikacji w istniejących już środowiskach.

Management Server oraz Streaming Server:

  • system operacyjny: Windows Server 2003 lub nowszy (edycje Standard lub wyższe)
  • sprzęt: Intel Pentium III, 1 GHz, 512 MB RAM, 200 MB HDD
  • uwagi: Windows Server 2008 R2 obsługiwany jest od APPV 4.5 SP1

Składnica danych:

  • system operacyjny: Windows Server 2003 lub nowszy (edycje Standard lub wyższe)
  • sprzęt: Intel Pentium III, 850 MHz, 512 MB RAM, 200 MB HDD
  • inne: SQL Server 2000 SP3a lub nowszy, MDAC 2.7 lub nowszy
  • uwagi: Windows Server 2008 R2 obsługiwany jest od APPV 4.5 SP1

APP-V Web Management

  • system operacyjny: Windows Server 2003 lub nowszy (edycje Standard lub wyższe)
  • sprzęt: Intel Pentium III, 800 MHz, 256 MB RAM, 50 MB HDD
  • inne: IIS6.0 lub nowszy, ASP .NET, .NET Framework 2.0 lub nowszy
  • uwagi: Windows Server 2008 R2 obsługiwany jest od APPV 4.5 SP1

Konsola zarządzająca

  • system operacyjny: Windows Server 2003 lub nowszy (edycje Standard lub wyższe), Windows XP lub nowszy (edycje Professional/Business lub wyższe)
  • sprzęt: Intel Pentium III, 450 MHz, 256 MB RAM, 200 MB HDD
  • inne: MMC 3.0, .NET Framework 2.0 lub nowszy
  • uwagi: Windows Server 2008 R2 obsługiwany jest od APPV 4.5 SP1

Sequencer

  • system operacyjny: Windows Server 2003 lub nowszy (edycje Standard lub wyższe), Windows XP lub nowszy (edycje Professional/Business lub wyższe)
  • sprzęt: Intel Pentium III, 850 MHz, 256 MB RAM

Komponenty klienckie

  • system operacyjny: Windows Server 2003 Terminal Services lub nowszy (edycje Standard lub wyższe), Windows XP lub nowszy (edycje Professional/Business lub wyższe)
  • sprzęt: zgodnie z wymogami systemu operacyjnego i aplikacji, HDD 30 MB dla instalacji oraz 6 GB w zależności od wielkości cache, architektura x86

Koncepcja działania

Największymi atutami rozwiązania wirtualnych aplikacji są: możliwość zwiększenia elastyczności środowiska, łatwiejsze zarządzanie licencjami i udostępnianie aplikacji użytkownikom oraz kompatybilność między aplikacjami działającymi w ramach danego systemu operacyjnego. Koncepcja działania wirtualnych aplikacji zakłada, że w paczce oprócz danych związanych z aplikacją znajdą się usługi i komponenty systemowe wymagane przez aplikacje, by każda z nich posiadała wszystkie niezbędne do działania elementy. Wirtualna aplikacja pracująca w systemie operacyjnym będzie się odwoływać do właściwych komponentów systemu, tak jak normalna aplikacja. Różnica występuje dopiero w aspekcie odwołań do konfiguracji. W przypadku rejestru, plików i bibliotek konfiguracyjnych wirtualne aplikacje zapisują zmiany wewnątrz paczki, a do systemu odwołują się jedynie w trybie tylko do odczytu. Ponieważ konfiguracje nie zostaną zmodyfikowane, w systemie nie nastąpi ich nadpisanie i nie pojawi się konflikt. Dzięki temu możliwe jest równoległe uruchomienie kilku aplikacji, które normalnie nie mogłyby pracować jednocześnie w systemie, np. różnych wersji językowych tej samej aplikacji.

 

Rys. 2. Środowisko pracy aplikacji wirtualnych.

Serwer zarządzający (APP-V Management Server)

Serwer zarządzający rozwiązaniem APP-V jest komponentem koniecznym do pracy z wirtualnymi aplikacjami. W systemie przygotowanym zgodnie z wymogami należy umieścić komponenty Application Virtualization Management Server 4.5. Podczas instalacji można wybrać składniki, które zostaną zainstalowane, w prostej implementacji - wszystkie na tej samej maszynie.

 

Rys. 3. Wybór składników instalacji Management Server.

Przed kolejnym etapem (o ile procedura nie została wykonana wcześniej) konieczna jest konfiguracja serwera SQL Server (na przykładzie wersji 2005) w celu zezwolenia na połączenia za pośrednictwem TCP/IP. Należy w konsoli SQL Server Configuration Manager przejść do sekcji SQL Server 2005 Network Configuration/Protocols for <nazwa instancji> i we właściwościach protokołu TCP/IP ustawić Enabled na wartość True.

 

Rys. 4. Konfiguracja połączeń TCP/IP dla SQL Server.

W kolejnym etapie sięgniemy do składnicy informacji, czyli serwera bazodanowego. W przykładzie została wykorzystana lokalna instancja SQL Server 2005 Express Edition.

 

Rys. 5. Definiowanie połączenia z serwerem SQL.

W następnym kroku określimy parametry bazy danych, w której przechowywane będą informacje APP-V. Można użyć istniejącej bazy lub stworzyć nową, o domyślnej nazwie APPVIRT.

 

Rys. 6. Konfiguracja bazy danych.

Dla zwiększenia bezpieczeństwa połączeń klient <-> serwer należy zastosować bezpieczne protokoły. Wymaga to wdrożenia struktury PKI i wydania certyfikatu serwerowi zarządzającemu. W przypadku prostych implementacji lub środowisk laboratoryjnych konfiguracja ta nie jest wymagana.

 

Rys. 7. Wybór modelu bezpieczeństwa.

W zależności od wybranego modelu połączeń kolejny krok pozwala wskazać port domyślny dla danego protokołu lub określić własny, na którym nawiązywane będą połączenia:

RTSP - Real Time Streaming Protocol, domyślnie port TCP 544 (nawiązywanie połączeń rtsp://%SFT_SOFTGRIDSERVER:554/...)

RTSPS (RTSP over TLS) domyślnie port TCP 322 (nawiązywanie połączeń rtsps://%SFT_SOFTGRIDSERVER:322/...)

 

Rys. 8. Wybór portu, na jakim nasłuchiwać będzie serwer.

W kolejnym etapie konfiguracji określamy grupę pełniącą rolę administratorów rozwiązania Application Virtualization (powinna zostać wcześniej utworzona w Active Directory). Członkowie wskazanej tutaj grupy będą uzyskiwać dostęp do konfiguracji APP-V za pośrednictwem Management Console (konsoli zarządzania).

 

Rys. 9. Wybór grupy administratorów APP-V.

Konieczne jest wskazanie nie tylko grupy administratorów, ale też użytkowników wirtualnych aplikacji. Szczegółowego wskazania grup uprawnionych do korzystania z poszczególnych aplikacji dokonuje się w konsoli zarządzania.

 

Rys. 10. Wybór grupy użytkowników APP-V.

Kluczowym elementem konfiguracji jest określenie miejsca, w którym przechowywane będą pliki wirtualnych aplikacji. Domyślnie jest to folder kontent w ścieżce instalacyjnej APP-V Management Server.

 

Rys. 11. Konfiguracja miejsca przechowywania danych wirtualnych aplikacji.

Po zakończeniu instalacji serwera zarządzającego należy dodatkowo udostępnić folder content, pozwalając użytkownikom rozwiązania application virtualization na odczyt danych. Administratorzy powinni otrzymać szersze uprawnienia, co umożliwi im publikację aplikacji utworzonych za pomocą APP-V Sequencer.

 

Rys. 12. Udostępnianie folderu przechowującego dane wirtualnych aplikacji.

Konfiguracja Management Server

W celu przystąpienia do konfiguracji serwera APP-V należy uruchomić konsolę zarządzania. Połączenie odbywa się za pośrednictwem protokołów HTTP lub HTTPS, użytkownik nawiązujący je musi być członkiem grupy administratorów wskazanej podczas instalacji.

 

Rys. 13. Definiowanie połączenia z serwerem zarządzania.

Gdy weryfikacja danych użytkownika przebiegnie pomyślnie, pojawi się konsola zarządzania serwerem APP-V. Za jej pomocą skonfigurujemy wszystkie opcje dostarczania wirtualnych aplikacji do użytkownika końcowego.

Konsola zarządzania

  1. Applications - wykaz paczek z wirtualnymi aplikacjami oraz możliwość ich konfiguracji.
  2. File Type Associations - powiązania rozszerzeń plików z wirtualnymi aplikacjami.
  3. Packages - informacje i konfiguracja wirtualnych paczek.
  4. Applications Licenses - konfiguracja licencji związanych z wirtualnymi aplikacjami w celu umożliwienia ich kontroli.
  5. Server Groups - zarządzanie grupami serwerów APP-V i wybór sposobu komunikacji z klientami.
  6. Provider Polices - konfiguracja polis związanych z użyciem przez klientów wirtualnych aplikacji.
  7. Administrators - zarządzanie grupami posiadającymi prawa administracyjne dla APP-V.
  8. Reports - tworzenie i obsługa raportów wydajnościowych, audytowych oraz zdarzeń w środowisku APP-V.

 

Rys. 14. Konsola zarządzania APP-V.

Aplikacje, dla których nie zdefiniowano odrębnych ścieżek dostępu, odwołują się do domyślnej konfiguracji serwera zarządzającego. Po instalacji konieczne jest wskazanie udostępnionego udziału (folderu, w którym przechowywane są wirtualne aplikacje) w konfiguracji serwera management, by zapobiegać problemom z połączeniami.

 

Rys. 15. Konfiguracja domyślnej ścieżki do zasobu z wirtualnymi aplikacjami.

Podczas instalacji APP-V Management Server dostarczana jest także domyślna aplikacja (Default Application), która może zostać użyta do testów poprawnej konfiguracji komponentów klienckich rozwiązania wirtualnych aplikacji. Konieczne jest wcześniejsze określenie właściwości tej aplikacji, by były one zgodne z konfiguracją serwera. W celu zmiany ustawień należy w konsoli zarządzania przejść do <nazwa serwera>\Applications\Default Application, a następnie - do właściwości.

Ogólna konfiguracja domyślnej aplikacji

Version - oznaczenie kolejnych modyfikacji aplikacji, w tym przypadku zazwyczaj 1.0.

Enabled - aplikacja zostanie udostępniona użytkownikom.

Description - opis wirtualnej aplikacji.

OSD Path - ścieżka do pliku konfiguracyjnego aplikacji, np. \\<nazwa udziału>\<nazwa pliku .osd>

Icon Path - ścieżka do pliku ikon wirtualnej aplikacji, np. \\<nazwa udziału>\<nazwa pliku .ico>

Application License Group - wskazanie licencji (wymaga wcześniejszej konfiguracji) obowiązującej daną aplikację.

Server Group - wybór grupy serwerów, które będą dystrybuować wirtualną aplikację.

Możliwe jest określenie miejsc, w których zostaną utworzone skróty w systemie użytkownika odwołujące się do wirtualnej aplikacji (zakładka Shortcuts), powiązanie rozszerzeń plików (zakładka File Associations) oraz wskazanie użytkowników uprawnionych do korzystania z aplikacji (Access Permissions).

 

Rys. 16. Konfiguracja domyślnej aplikacji.

W przypadku użycia innego protokołu niż RTSPS konieczna jest, oprócz konfiguracji wykonanych we właściwościach aplikacji, dodatkowa ręczna edycja pliku DefaultApp.osd. W sekcji <implementation> należy zmodyfikować atrybut odwołania „HREF", który domyślnie przybiera formę RTSPS://<nazwa serwera>:322/<nazwa aplikacji>. W przypadku konfiguracji przedstawionej w niniejszym artykule poprawnym wpisem będzie: RTSP://< FQDN serwera>:554/<nazwa aplikacji> (RTSP://mgmt.skalski.info:554/DefaulApp.osd).

 

Rys. 17. Przykładowa domyślna konfiguracja Default Application.

APP-V Desktop Client

Użytkownicy końcowi wirtualnych aplikacji muszą zainstalować Microsoft Application Virtualization Desktop Client, dzięki któremu mogą uruchamiać aplikacje dla nich przeznaczone i zarządzać nimi. Podczas instalacji należy określić miejsce, w jakim ma zostać zainstalowana aplikacja kliencka, oraz wskazać literę dysku, pod jaką przypisany zostanie cache klienta APP-V. Gdy na jednym komputerze pracuje więcej niż jeden użytkownik, każdy powinien mieć osobne miejsce przechowywania danych związanych z działaniem klienta wirtualnych aplikacji.

 

Rys. 18. Instalacja komponentu klienckiego.

Wspomniany wcześniej cache, domyślnie występuje jako dysk Q:, ma za zadanie przechowywać pobrane dane (wirtualne aplikacje) z serwera, by po kolejnym uruchomieniu aplikacji nie trzeba było jej przesyłać. Dane będą w cache do czasu nadpisania przez nowsze, gdy zabraknie już wolnego miejsca lub gdy użytkownik ręcznie usunie wirtualną aplikację. Podczas instalacji można określić, ile miejsca przeznacza się na cache - nadając mu stały rozmiar lub zależny od wolnego miejsca na dysku.

 

Rys. 19. Ustawienia cache aplikacji APP-V.

Kolejny etap konfiguracji obejmuje polisy związane ze środowiskiem pracy klienta. Możliwe jest wtedy określenie źródła, z którego mają być pobierane aplikacje, wymuszenie autoryzacji użytkownika dla aplikacji już pobranych (znajdujących się w cache) i wskazanie zasady automatycznego wczytywania aplikacji (auto load).

 

Rys. 20. Konfiguracja lokalnych ustawień klienta.

Do poprawnego działania komponentu klienckiego APP-V konieczne jest zdefiniowanie połączenia z serwerem publikacji, z którego ma otrzymać aplikacje. Podczas instalacji można wskazać tylko jeden serwer, kolejne - dodać później z poziomu konsoli użytkownika. Należy wskazać nazwę hosta oraz portu, który posłuży do komunikacji, np. 554 dla protokołu RTSP.

 

Rys. 21. Definiowanie połączenia z serwerem zarządzającym.

Po zakończeniu instalacji komponentu klienckiego możliwa jest dalsza konfiguracja, np. dodanie kolejnych serwerów publikacji, lub zarządzanie aplikacjami udostępnionymi przez serwer publikacji. W sekcji applications znajdować się będzie testowa aplikacja APP-V "DefaultApp MFC Application 1.0.0.1" oraz inne, jeśli zostały udostępnione klientowi i jeśli wykonano pierwsze połączenie z serwerem w celu aktualizacji konfiguracji.

 

Rys. 22. Konsola klienta APP-V.

Test poprawnej instalacji polega na pobraniu i uruchomieniu domyślnej aplikacji. Jeśli ten proces przebiegł poprawnie, wyświetlone zostanie okno widoczne na rysunku 22.

 

Rys. 23. Domyślna aplikacja.

Podsumowanie

W niniejszym artykule przedstawiono proces instalacji i konfiguracji najważniejszych komponentów Microsoft Application Virtualization. W kolejnych częściach omówione zostaną procedury związane z przygotowanie aplikacji do pracy w wirtualnym środowisku oraz metody strumieniowego przesyłu aplikacji. Wirtualizacja aplikacji przynosi wiele korzyści przedsiębiorstwom, zwiększając ich elastyczność, pozwalając lepiej wykorzystać i kontrolować posiadane licencje na oprogramowanie.

Autor:


Kamil Skalski

Kamil Skalski
(MCT, MCITP, MCTS, MCSE+S, MCSA+S, MCP)

Pracuje jako trener i konsultant, należy do grupy pasjonatów Windows Server 2008, wirtualizacji i bezpieczeństwa IT, w wolnym czasie prowadzi blog o tej tematyce oraz dzieli się swoją wiedzą wśród społeczności IT pisząc artykuły oraz występując jako ekspert w ramach Microsoft Technology Summit.

Komentarze 7

Kamil Skalski Ekspert WSS
Kamil Skalski
MVP
27-11-2009
oceń pozytywnie 0
Serdecznie zachęcam do testowania tego rozwiązania, w kolejnej części będzie można przeczytać o tworzenie wirtualnych aplikacji :)

Pozdrawiam,

Kamil

Blog - Komentarze o Windows Server 2008 i Bezpieczeństwie IT
chilika
chilika
3 pkt.
Nowicjusz
27-11-2009
oceń pozytywnie 0
Dzięki za artykuł. Mam pytanie odnośnie licencjonowania i ceny tego rozwiązania? Ile kosztuje APP-V?
Dzięki za pomoc, gosia
Kamil Skalski Ekspert WSS
Kamil Skalski
MVP
27-11-2009
oceń pozytywnie 0
Pozwól, że zacytuje:
"Dodatek Microsoft Desktop Optimization Pack (MDOP) to dodatkowa subskrypcja dostępna dla klientów z aktywnym pakietem Software Assurance (SA). Obejmuje on komputery z zainstalowanym systemem Windows."

Koszt tego rozwiązania to umowa SA - tutaj musisz zwrócić się do sprzedawców o wyliczenie dla konkretnych wymogów i środowiska.

Aplikacje licenjonowane są według normalnych zasad.

Pozdrawiam,

Kamil

Blog - Komentarze o Windows Server 2008 i Bezpieczeństwie IT
aLech
aLech
91 pkt.
Poczatkujacy
27-11-2009
oceń pozytywnie 0
Kiedy można spodziewać się kolejnych części?
Kamil Skalski Ekspert WSS
Kamil Skalski
MVP
28-11-2009
oceń pozytywnie 0
W przyszłym tygodniu będę mieć gotową drugą część - w zależności od czasu potrzebnego na korekty stylistyczne i publikację mam nadzieję, że za ok 2 tygodnie pojawi się na portalu. Kolejna, mam nadzieję że przed świętami. Oczywiście zapraszam do kontaktowania się ze mną - chętnie odpowiem także na pytania nie związane z tą częścią artykułu :)

Pozdrawiam,

Kamil

Blog - Komentarze o Windows Server 2008 i Bezpieczeństwie IT
wiluszt
wiluszt
0 pkt.
Nowicjusz
13-04-2012
oceń pozytywnie 0
Bardzo wartościowe opracowanie, ale z kłopotami z polskojęzyczną terminologią. Najistotniejsze zastrzeżenia dotyczą beztroskiego traktowania terminów "wirtualizacja" oraz "komponent" .Termin "Application Virtualization " wyraźnie oznacza proces "wirtualizacji aplikacji", którego efekt końcowy trudno jest nazywać "wirtualną aplikacją" bo przymiotnik "wirtualny" odnosi się do "innej realizacji" funkcji pewnej fizycznej realności ( najczęściej hardawer'u), a nie oprogramowania ( software). Edytowano 1 raz. Ostatnio 2012-04-13 12:11:52 przez wiluszt.
dominlodz
dominlodz
0 pkt.
Nowicjusz
01-11-2012
oceń pozytywnie 0
Witam, Po instalacji appv mgmt server, nadszedł czas żeby zainstalować sobie klienta, no i otrzymuję błąd 25001 który mówi, że "remote desktop services" nie zainstalowany, jednak mam zainstalowany serwis i wszystko działa poprawnie, miał ktoś może podobny problem ?
pkt.

Zaloguj się lub Zarejestruj się aby wykonać tę czynność.