Wirtualizacja Hyper-V: sposoby wykorzystania i najnowsze wyniki badań zespół PCSS/MIC: Jacek Kochan, Jerzy Mikołajczak, Marek Zawadzki 4. Konferencja MIC Nowoczesne technologie bliżej nas Poznań, 04.03.2010
2/26 Agenda Maksymalne upakowanie maszyn wirtualnych Zarządzanie środowiskiem wirtualnym Wydajność Hyper-V w hostingu www (IIS) Wydajność podsystemu dyskowego Hyper-V Bezpłatny dostęp do maszyn wirtualnych
3/26 CEL: uruchomienie maksymalnej liczby VPS-ów na potrzeby szkoleniowe (IIS7/.NET + Remote Desktop) PROBLEM: jednoczesne operacje na grupie maszyn wirtualnych Analiza obciążenia serwera fizycznego (2x Xeon quad-core, 16GB RAM, 2x1TB SATA / iscsi/ib): włączanie/wyłączanie systemów 10 włączonych serwerów (VPS) wyłączenie 10 serwerów (OS) włączenie 10 serwerów stabilizacja pracy
4/26 10 włączonych serwerów (VPS) wyłączenie 10 serwerów (OS) włączenie 10 serwerów stabilizacja pracy wyłączenie 10 serwerów (OS) włączenie 10 serwerów stabilizacja pracy
5/65 wyłączenie 10 serwerów (OS) WNIOSKI Uwaga na: szybki ON/OFF Windows Update(!)* * niektóre konfiguracje włączenie 10 serwerów stabilizacja pracy
6/26 350 Porównanie czasów operacji na VPS dla SATA i iscsi/ib t [sekundy] 300 250 200 150 100 50 SATA iscsi/ib? Czy wprowadzenie lepszego systemu dyskowego da współmierny wzrost wydajności? 0 OFF operacja ON InfiniBand SATA transfer [MB/s] 231.68-1003.52 100 1100 1000 900 800 700 600 500 400 300 200 100 0 transfer InfiniBand vs. SATA [MB/s] IPoIB WSD SDP SATA IPoIB WSD SDP SATA klient iscsi (np. serwer na potrzeby VPS-ów) 10 Gbit/s InfiniBand/iSCSI Sun X4540 (Windows Storage Server 2008)
1 serwer fizyczny (2x quadcore Opteron, 64 GB RAM, 48x 1 TB SATA (6 8-port controllers) 200 serwerów wirtualnych (300 MB RAM, uruchamiane po ~20 szt.) 7/26
8/26 Microsoft System Center Virtual Machine Manager (SCVMM): Funkcje wykorzystywane w MIC: obsługa dużej liczby identycznych serwerów wirtualnych deployment zarządzanie (włączanie, wyłączanie, zmiana przydziału zasobów) usystematyzowanie dodawania nowych zasobów sprzętowych PowerShell
Microsoft System Center Virtual Machine Manager: 9/26
Microsoft System Center Virtual Machine Manager: 10/26
Microsoft System Center Virtual Machine Manager: 11/26
Microsoft System Center Virtual Machine Manager: 12/26
Microsoft System Center Virtual Machine Manager: 13/26
14/26 Wydajność Hyper-V w hostingu www (IIS). Środowisko testowe: 2x Xeon 5500 quad-core + HT, 16GB RAM, SATA 0 6 VPS/serwer fizyczny static content (plik 100b) oraz aplikacja aspx
15/26 200000,00 180000,00 160 000,00 140000,00 120000,00 100000,00 80000,00 60000,00 40000,00 20000,00 0,00 transactions/s [static]
16/26 2 500,00 transactions/s [aspx] 2 000,00 1 500,00 1 000,00 500,00 0,00
17/26 Wydajność podsystemu dyskowego Hyper-V: Porównanie wydajności przy zastosowaniu różnych typów dostępu do dysku: physical IDE/ SCSI passthrough/fixed/dynamic Narzędzia testowe: Iometer (http://sourceforge.net/projects/iometer/) próbka danych: 50GB wielkość danych do testów IO: 4k, 2048k throughput = sekwencyjne IO uwaga na błędne wyniki z SQLIO
Wady/zalety poszczególnych rozwiązań dostępu do dysków w Hyper-V: rozwiązanie zalety wady wysoka wydajność urządzenie blokowe musi być na stałe przypisane najniższe zużycie cpu przy dostępie do VM passthrough do dysku brak wsparcia dla technologii VM snapshot i wspiera dyski o dużych rozmiarach Hyper-V VSS writer (backup) IDE SCSI VHD fixed VHD dynamic wysoka wydajność brak ryzyka związanego z wyczerpaniem się wolnego miejsca na dolnym podsystemie dyskowym łatwa przenaszalność dysk wirtualny zajmuje tylko tyle miejsca ile zawiera danych dodatkowa oszczędność miejsca dzięki niealokowaniu bloków zerowych szybki czas tworzenia dysku dobra prędkość odczytu łatwa przenaszalność możliwość bootowania systemu operacyjnego możliwość przypisania do 256 dysków do maszyny wirtualnej możliwość przyłączania dysków w trakcie pracy (hot-plug) konieczność określenia z góry rozmiaru dysku i zaalokowania przestrzeni tworzenie dużych dysków fixed jest czasochłonne najsłabsza wydajność (szczeg. zapis) max. rozmiar 2TB max. 4 dyski IDE na maszynę wirtualną brak możliwości bootowania systemu operacyjnego 18/26
Throughput (MB/s) Write (2048k) Write (4k) Read (2048k) Read (4k) scsi_passthrough 51,12 56,72 111,77 110,52 scsi_fixed 51,03 56,65 111,14 109,90 scsi_dynamic 21,33 33,66 78,79 110,41 ide_passthrough 51,19 56,18 111,72 110,73 ide_fixed 51,22 56,51 111,11 110,35 ide_dynamic 21,27 33,63 77,60 110,75 physical 51,66 56,41 104,65 104,43 19/26
Random IO/s Write (2048k) Write (4k) Read (2048k) Read (4k) scsi_passthrough 37 37 155 233 scsi_fixed 37 38 156 233 scsi_dynamic 35 37 155 168 ide_passthrough 37 37 155 233 ide_fixed 37 38 156 232 ide_dynamic 34 37 155 166 physical 35 36 155 231 20/26
Average Response Time Write (2048k) Write (4k) Read (2048k) Read (4k) scsi_passthrough 17 26 107 108 scsi_fixed 17 26 107 109 scsi_dynamic 24 26 107 114 ide_passthrough 17 26 107 109 ide_fixed 17 26 107 109 ide_dynamic 24 26 107 119 physical 17 26 111 115 21/26
22/26 Platforma Obsługi Nauki - PLATON U3 Usługi kampusowe: Aplikacje interaktywne, wsadowe oraz wirtualizacja na żądanie.
23/26 ZAŁOŻENIA platforma typu cloud dla środowiska akademickiego: udostępnienie środowisku naukowemu w Polsce rozproszonej geograficznie infrastruktury obliczeniowo-usługowej zlokalizowanej w 20 ośrodkach sieci PIONIER tj. zakup i instalacja 20 klastrów lokalnych w ośrodkach członków konsorcjum połączonych siecią PIONIER umożliwienie środowisku akademickiemu zdalnej pracy z aplikacjami interakcyjnymi w środowisku Microsoft Windows (np. Matlab, AutoCad, Corel) uruchamianie na żądanie maszyn wirtualnych (z systemem Windows lub Linux) stanowiących dedykowane środowisko pracy dla aplikacji użytkownika (np. programisty czy naukowca) możliwość zestawienia wirtualnego mini-klastra na potrzeby danego użytkownika (np. laboratorium dla grupy studentów lub naukowców korzystających z określonych aplikacji) zlecanie zadań wsadowych np. animacji scen, wizualizacji w środowisku Windows i Linux 23
24/24 Koncepcja naturalnej rezerwacji zasobów przez użytkownika (portal): użytkownik wybiera dogodny dla siebie okres wykorzystywania maszyn wirtualnych/aplikacji/itp. (poglądowy przykład interfejsu): Przykłady: chcę korzystać z aplikacji X przez miesiąc codziennie w godzinach 15:00-17:00 potrzebuję 10 maszyn wirtualnych na potrzeby laboratorium przez 6 miesięcy w każdy wtorek w godz. 8:00-9:30
aplikacje GUI akcelerowane PLATON U3: szkic architektury systemu węzły Windows z kartami graficznymi Xen, Torque węzły usługowe Hyper-V, aplikacje GUI, węzły Windows HPC Server węzły Linux standard RDS multi-boot, inicjalizacja systemów węzły Windows standard SSH RDS SQL warstwa zarządzania dynamiczną strukturą klastra serwer zarządzający serwer VPN serwer www Internet warstwa dostępowa klient Windows terminal GUI/CLI HPC portal 25/25
Dziękujemy za poświęcony czas. pytania: support-mic@man.poznan.pl