Wirtualizacja. Przegla d wybranych technik. Magda Michalska Krzysztof Kulewski Andrzej Pacuk. Systemy operacyjne 2006

Wielkość: px
Rozpocząć pokaz od strony:

Download "Wirtualizacja. Przegla d wybranych technik. Magda Michalska Krzysztof Kulewski Andrzej Pacuk. Systemy operacyjne 2006"

Transkrypt

1 Przegla d wybranych technik Magda Michalska Krzysztof Kulewski Andrzej Pacuk Systemy operacyjne 2006

2 Plan 1 Czym jest wirtualizacja? Zastosowanie 2 na poziomie systemu operacyjnego 3 Przegla d oprogramowania 4

3 Plan Czym jest wirtualizacja? Zastosowanie 1 Czym jest wirtualizacja? Zastosowanie 2 na poziomie systemu operacyjnego 3 Przegla d oprogramowania 4

4 Czym jest wirtualizacja? Czym jest wirtualizacja? Zastosowanie to bogaty zestaw metod umożliwiaja cych podział zasobów komputera miedzy wiele środowisk. przed po

5 Czym jest wirtualizacja? Zastosowanie Stosowane techniki partycjonowanie hardwarowe partycjonowanie softwarowe podział czasu maszyny wirtualne

6 Czym jest wirtualizacja? Zastosowanie Stosowane techniki partycjonowanie hardwarowe partycjonowanie softwarowe podział czasu maszyny wirtualne

7 Czym jest wirtualizacja? Zastosowanie Stosowane techniki partycjonowanie hardwarowe partycjonowanie softwarowe podział czasu maszyny wirtualne

8 Czym jest wirtualizacja? Zastosowanie Stosowane techniki partycjonowanie hardwarowe partycjonowanie softwarowe podział czasu maszyny wirtualne

9 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

10 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

11 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

12 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

13 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

14 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

15 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

16 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

17 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

18 Przyczyny i zalety Czym jest wirtualizacja? Zastosowanie server consolidation (średnie wykorzystanie zasobów nieskonsolidowanego serwera to 5-10%) emulacja innych, czȩsto niedostȩpnych architektur lub systemów operacyjnych używanie kilku systemów operacyjnych jednocześnie testy i eksperymenty bez ryzyka szybkie wykonywanie i odtwarzanie kopii zapasowych symulacja dużych środowisk bezpieczne środowisko do uruchamiania podejrzanych aplikacji tworzenie nowych systemów operacyjnych wieksza przenonośność oprogramowania

19 Czym jest wirtualizacja? Zastosowanie Wady prȩkość działania (moga wystapić duże narzuty czasowe) trudność w implementacji architektur, które nie wspieraja wirtualizacji brak idealnego rozwia zania

20 Czym jest wirtualizacja? Zastosowanie Wady prȩkość działania (moga wystapić duże narzuty czasowe) trudność w implementacji architektur, które nie wspieraja wirtualizacji brak idealnego rozwia zania

21 Czym jest wirtualizacja? Zastosowanie Wady prȩkość działania (moga wystapić duże narzuty czasowe) trudność w implementacji architektur, które nie wspieraja wirtualizacji brak idealnego rozwia zania

22 Plan na poziomie systemu operacyjnego 1 Czym jest wirtualizacja? Zastosowanie 2 na poziomie systemu operacyjnego 3 Przegla d oprogramowania 4

23 Charakterystyka na poziomie systemu operacyjnego Wirtualna maszyna symuluje kompletna architekturȩ (czȩsto zupłenie inna od macierzystej) Wszystkie urza dzenia we/wy, dyski musza być współdzielone z systemem gospodarza Instrukcje systemu gościa sa tłumaczone czȩsto na wiele instrukcji gospodarza (wiaże siȩ to z dużym narzutem czasowym)

24 Charakterystyka na poziomie systemu operacyjnego Wirtualna maszyna symuluje kompletna architekturȩ (czȩsto zupłenie inna od macierzystej) Wszystkie urza dzenia we/wy, dyski musza być współdzielone z systemem gospodarza Instrukcje systemu gościa sa tłumaczone czȩsto na wiele instrukcji gospodarza (wiaże siȩ to z dużym narzutem czasowym)

25 Charakterystyka na poziomie systemu operacyjnego Wirtualna maszyna symuluje kompletna architekturȩ (czȩsto zupłenie inna od macierzystej) Wszystkie urza dzenia we/wy, dyski musza być współdzielone z systemem gospodarza Instrukcje systemu gościa sa tłumaczone czȩsto na wiele instrukcji gospodarza (wiaże siȩ to z dużym narzutem czasowym)

26 Przykłady na poziomie systemu operacyjnego Bochs, PearPC, Virtual PC wersja na PPC, Qemu, emulatory ATARI, Amiga itp.

27 Przykłady na poziomie systemu operacyjnego Bochs, PearPC, Virtual PC wersja na PPC, Qemu, emulatory ATARI, Amiga itp.

28 Przykłady na poziomie systemu operacyjnego Bochs, PearPC, Virtual PC wersja na PPC, Qemu, emulatory ATARI, Amiga itp.

29 Przykłady na poziomie systemu operacyjnego Bochs, PearPC, Virtual PC wersja na PPC, Qemu, emulatory ATARI, Amiga itp.

30 Przykłady na poziomie systemu operacyjnego Bochs, PearPC, Virtual PC wersja na PPC, Qemu, emulatory ATARI, Amiga itp.

31 Charakterystyka na poziomie systemu operacyjnego Do odpalenia programu nie trzeba symulowac calego OS, wystarczy emulacja środowiska wykonawczego aplikacji. Nie instalujemy OS, wiȩc nie musimy kupować licencji! Rozwia zanie szybsze od czystej emulacji

32 Charakterystyka na poziomie systemu operacyjnego Do odpalenia programu nie trzeba symulowac calego OS, wystarczy emulacja środowiska wykonawczego aplikacji. Nie instalujemy OS, wiȩc nie musimy kupować licencji! Rozwia zanie szybsze od czystej emulacji

33 Charakterystyka na poziomie systemu operacyjnego Do odpalenia programu nie trzeba symulowac calego OS, wystarczy emulacja środowiska wykonawczego aplikacji. Nie instalujemy OS, wiȩc nie musimy kupować licencji! Rozwia zanie szybsze od czystej emulacji

34 Przykłady na poziomie systemu operacyjnego DOSEMU, Wine,

35 Przykłady na poziomie systemu operacyjnego DOSEMU, Wine,

36 Charakterystyka na poziomie systemu operacyjnego System guesta musi obsługiwać ta sama architekture co host. (ale ograniczenie do x86 nie jest aż tak bolesne!) prawdziwego (VMware) lub wirtualnego (VPC) sprzȩtu. Gość nie musi wiedzieć, że jest uruchamiany na nierzeczywistym systemie (ale czasem to pomaga -> VMware Tools) Bezpośrednio guest nie ma dostȩpu do żadnych zasobów sprzȩtowych Rozwia zanie najprostsze w obsłudze przez użytkownika

37 Charakterystyka na poziomie systemu operacyjnego System guesta musi obsługiwać ta sama architekture co host. (ale ograniczenie do x86 nie jest aż tak bolesne!) prawdziwego (VMware) lub wirtualnego (VPC) sprzȩtu. Gość nie musi wiedzieć, że jest uruchamiany na nierzeczywistym systemie (ale czasem to pomaga -> VMware Tools) Bezpośrednio guest nie ma dostȩpu do żadnych zasobów sprzȩtowych Rozwia zanie najprostsze w obsłudze przez użytkownika

38 Charakterystyka na poziomie systemu operacyjnego System guesta musi obsługiwać ta sama architekture co host. (ale ograniczenie do x86 nie jest aż tak bolesne!) prawdziwego (VMware) lub wirtualnego (VPC) sprzȩtu. Gość nie musi wiedzieć, że jest uruchamiany na nierzeczywistym systemie (ale czasem to pomaga -> VMware Tools) Bezpośrednio guest nie ma dostȩpu do żadnych zasobów sprzȩtowych Rozwia zanie najprostsze w obsłudze przez użytkownika

39 Charakterystyka na poziomie systemu operacyjnego System guesta musi obsługiwać ta sama architekture co host. (ale ograniczenie do x86 nie jest aż tak bolesne!) prawdziwego (VMware) lub wirtualnego (VPC) sprzȩtu. Gość nie musi wiedzieć, że jest uruchamiany na nierzeczywistym systemie (ale czasem to pomaga -> VMware Tools) Bezpośrednio guest nie ma dostȩpu do żadnych zasobów sprzȩtowych Rozwia zanie najprostsze w obsłudze przez użytkownika

40 Charakterystyka na poziomie systemu operacyjnego System guesta musi obsługiwać ta sama architekture co host. (ale ograniczenie do x86 nie jest aż tak bolesne!) prawdziwego (VMware) lub wirtualnego (VPC) sprzȩtu. Gość nie musi wiedzieć, że jest uruchamiany na nierzeczywistym systemie (ale czasem to pomaga -> VMware Tools) Bezpośrednio guest nie ma dostȩpu do żadnych zasobów sprzȩtowych Rozwia zanie najprostsze w obsłudze przez użytkownika

41 Przykłady na poziomie systemu operacyjnego VMWare Workstation, Virtual PC, CoLinux, Parallels Desktop,

42 Przykłady na poziomie systemu operacyjnego VMWare Workstation, Virtual PC, CoLinux, Parallels Desktop,

43 Przykłady na poziomie systemu operacyjnego VMWare Workstation, Virtual PC, CoLinux, Parallels Desktop,

44 Przykłady na poziomie systemu operacyjnego VMWare Workstation, Virtual PC, CoLinux, Parallels Desktop,

45 Charakterystyka na poziomie systemu operacyjnego Gość musi wiedzieć, że nie jest uruchamiany na systemie rzeczywistym, jego kod musi być przeportowany. Dziȩki bibliotekom API maszyna wirtualna może korzystać z zasobów rzeczywistych. Konieczność modyfikacji ja dra systemu ogranicza zbiór guestów do systemów Open Source

46 Charakterystyka na poziomie systemu operacyjnego Gość musi wiedzieć, że nie jest uruchamiany na systemie rzeczywistym, jego kod musi być przeportowany. Dziȩki bibliotekom API maszyna wirtualna może korzystać z zasobów rzeczywistych. Konieczność modyfikacji ja dra systemu ogranicza zbiór guestów do systemów Open Source

47 Charakterystyka na poziomie systemu operacyjnego Gość musi wiedzieć, że nie jest uruchamiany na systemie rzeczywistym, jego kod musi być przeportowany. Dziȩki bibliotekom API maszyna wirtualna może korzystać z zasobów rzeczywistych. Konieczność modyfikacji ja dra systemu ogranicza zbiór guestów do systemów Open Source

48 Przykłady na poziomie systemu operacyjnego XEN,

49 Charakterystyka na poziomie systemu operacyjnego Umożliwia uruchamianie kilku kopii systemu identycznego (ten sam kernel) jak host, ale moga to byc np. różne dystrybucje z tym samym kernelem. Uzyskuje siȩ przez podział zasobów hosta na osobne partycje, dziȩki czemu dostajemy izolacjȩ maszyn wirtualnych. Najszybsze, zaledwie 1-3% (w przypadku OpenVZ) wolniejsze niż natywny system hosta

50 Charakterystyka na poziomie systemu operacyjnego Umożliwia uruchamianie kilku kopii systemu identycznego (ten sam kernel) jak host, ale moga to byc np. różne dystrybucje z tym samym kernelem. Uzyskuje siȩ przez podział zasobów hosta na osobne partycje, dziȩki czemu dostajemy izolacjȩ maszyn wirtualnych. Najszybsze, zaledwie 1-3% (w przypadku OpenVZ) wolniejsze niż natywny system hosta

51 Charakterystyka na poziomie systemu operacyjnego Umożliwia uruchamianie kilku kopii systemu identycznego (ten sam kernel) jak host, ale moga to byc np. różne dystrybucje z tym samym kernelem. Uzyskuje siȩ przez podział zasobów hosta na osobne partycje, dziȩki czemu dostajemy izolacjȩ maszyn wirtualnych. Najszybsze, zaledwie 1-3% (w przypadku OpenVZ) wolniejsze niż natywny system hosta

52 Przykłady na poziomie systemu operacyjnego UML, OpenVZ, Linux-VServer, VMware ESX,

53 Przykłady na poziomie systemu operacyjnego UML, OpenVZ, Linux-VServer, VMware ESX,

54 Przykłady na poziomie systemu operacyjnego UML, OpenVZ, Linux-VServer, VMware ESX,

55 Przykłady na poziomie systemu operacyjnego UML, OpenVZ, Linux-VServer, VMware ESX,

56 Plan 1 Czym jest wirtualizacja? Zastosowanie 2 na poziomie systemu operacyjnego 3 Przegla d oprogramowania 4

57 Polecamy VMware Server Qemu UML

58 Plan 1 Czym jest wirtualizacja? Zastosowanie 2 na poziomie systemu operacyjnego 3 Przegla d oprogramowania 4

59 strona Wikipedii strona VMware strona Qemu strona UML strona z duża ilościa teorii