Wykorzystanie wirtualizacji w kluczowych scenariuszach data-center Jacek Kochan, Jerzy Mikołajczak, Sebastian Petruczynik, Marek Zawadzki Poznańskie Centrum Superkomputerowo Sieciowe Microsoft Technology Review Warszawa, 17.06.2009 1
Poznańskie Centrum Superkomputerowo-Sieciowe Operator Poznańskiej Sieci Miejskiej POZMAN Operator Polskiego Internetu Optycznego sieci PIONIER Centrum przetwarzania i przechowywania danych (HPC/HTC) oraz hosting zaawansowanych technologii Centrum Bezpieczeństwa Sieci i Systemów Centrum badawczo-rozwojowe (R&D R&D) dla sieci, portali i gridów nowej generacji Centrum Innowacji Microsoft
PIONIER NETWORK GÉANT 10+10 Gb/s
HIGH PERFORMANCE COMPUTING CENTER Data Center - (300+) m2
Klastry usługowe i obliczeniowe dla nauki i firm
MICROSOFT INNOVATION CENTER New Technologies Services and Outsourcing Research and Development Security Trainings
MICROSOFT INNOVATION CENTER Selected activities: Advanced hosting for MOSS-based portals Student and startup programs (free accounts, documentation and trainings) Nationwide Live@Edu and (NEW!) ExchangeLabs/Outlook Live deployment & support Telemedicine (Poznan University of Technology) Security audits and trainings
MICROSOFT INNOVATION CENTER MIC hosting cluster (OLD) Active Directory User accounts DNS MS Exchange 2007 E-mail Antispam Antivirus Outlook Web Access IIS 6.0 Virtual WWW servers HELM management panel FTP ASP.NET SQL Server 2005 User databases Storage FC/SCSI
MICROSOFT INNOVATION CENTER Security in MIC: Security of MS IIS 7.0 Web Server Confidence 2007, IT Underground 2007, SecureCON 2007 Public Key Infrastructure SECURE 2008 Security audits of IT infrastructures Audits for SMEs & public administration Startup-IT, IDC IT Security Roadshow 2008 Securing MIC hosting services and infrastructure
MICROSOFT INNOVATION CENTER MIC conferences and security trainings: 2 MIC conferences Modern technologies closer to us (2007, 2008) 200-300 participants + live webcasts hosting, security, multimedia, telemedicine Security trainings program (since 2007) 4 security trainings a year 20-40 participants + live webcasts IIS 7.0, secure coding, antispam solutions,...
Wirtualizacja 11
Agenda: 1. Wprowadzenie? Ile osób używa produkcyjnie: Tradycyjne i nowoczesne podejście do wykorzystywania serwerów w centrach przetwarzania danych Korzyści biznesowe płynące z wykorzystania wirtualizacji 2. Rozwiązania firmy Microsoft w dziedzinie wirtualizacji. 3. Konsolidacja, poprawa wykorzystania oraz redukcja fizycznych zasobów. 4. Zwiększania niezawodności wybranych usług. 5. Podnoszenie bezpieczeństwa systemów. 6. Ułatwienie w zarządzaniu zasobami. - wirtualizacji - Hyper-V - klastrów HA - SCVMM 12
Wprowadzenie Wykorzystanie serwerów w data-center: TRADYCYJNIE usługa = dedykowany serwer wykorzystanie danej usługi definiuje utylizację serwera wysoka niezawodność usług = redundancja dedykowanych zasobów fizycznych separacja usług zakup maszyn zarządzanie usługami = zarządzanie zasobami fizycznymi NOWOCZEŚNIE serwer fizyczny oznacza pulę zasobów (cpu, ram, hdd, sieć) do dowolnego rozdysponowania pomiędzy usługami 13
Wprowadzenie Korzyści biznesowe płynące z wykorzystania wirtualizacji: Lepsze wykorzystanie środków zainwestowanych w zakup serwerów. Oszczędności związane z zasilaniem (serwerów oraz klimatyzatorów) i miejscem w serwerowni. Ułatwione a więc tańsze zarządzanie Elastyczność wykorzystania posiadanych zasobów. Możliwość zwiększenia niezawodności usług. Możliwość wykorzystania wirtualizacji do zwiększenia bezpieczeństwa systemów 14
MS Rozwiązania firmy Microsoft w dziedzinie wirtualizacji: Virtual PC 2007 SP1 (desktop, emulacja sprzętu PC, freeware) Microsoft Virtual Server 2005 R2 (lepsze wsparcie dla systemów serwerowych) Microsoft Enterprise Desktop Virtualization (MED-V) (repozytorium maszyn wirtualnych i separacja aplikacji na desktopie) AppV Application Virtualization (framework do izolacji aplikacji przy użyciu centralnego serwera) Hyper-V (Windows Server 2008) sprzętowa wirtualizacja (wymaga Intel VT lub AMD-V, hypervisor) rola w Windows Server 2008 (możliwość dodania innych ról) Hyper-V Server (CLI+mmc, brak innych ról, freeware) Microsoft System Center Virtual Machine Manager 2008 (SCVMM) obsługa różnych platform (Hyper-V, Virtual Server, VMware ESX) wsparcie dla konsolidacji (+ Operations Manager: które maszyny są słabo obciążone) Intelligent Placement (rekomendacja serwera dla maszyny wirt. na podstawie wymagań) biblioteka zasobów (dyski, obrazy, konfiguracje, itd.) wsparcie do zarządzania usługą Failover Clustering konwersje P2V/V2V wsparcie dla PowerShell dla automatyzacji zadań integracja z AD 15
Wykorzystanie wirtualizacji/konsolidacja Konsolidacja, poprawa wykorzystania oraz redukcja fizycznych zasobów. założenia MIC dot. profilu wykorzystania serwera - niepełne obciążenie: Scenariusz 1 16
Wykorzystanie wirtualizacji/konsolidacja obsłużone żądania Scenariusz 1: konsolidacja nie w pełni obciążonych serwerów fizycznych (IIS) 350 300 311 328 250 200 150 100 82 82 82 82 164 164 245 246 1 serwer fizyczny/4cpu 1 serwer fizyczny/4cpu 1 serwer wirtualny/1cpu 1 serwer fizyczny/1cpu 2 serwery wirtualne/1 cpu każdy 2 serwery fizyczne/1 cpu każdy 3 serwery wirtualne/1 cpu każdy 3 serwery fizyczne/1 cpu każdy 4 serwery wirtualne/1cpu każdy 4 serwery fizyczne/1cpu każdy 50 0 serwer 17
Wykorzystanie wirtualizacji/konsolidacja obsłużone żądania Scenariusz 1: konsolidacja nie w pełni obciążonych serwerów fizycznych (SQL) 30000 1 serwer fizyczny/4cpu 1 serwer fizyczny/4cpu 27200 25000 1 serwer wirtualny/1cpu 20000 1 serwer fizyczny/1cpu 2 serwery wirtualne/1 cpu każdy 2 serwery fizyczne/1 cpu każdy 20400 15000 10000 5000 3 serwery wirtualne/1 cpu każdy 3 serwery fizyczne/1 cpu każdy 4 serwery wirtualne/1cpu każdy 4 serwery fizyczne/1cpu każdy 6800 6800 5520 6800 7214 13600 11955 14250 0 serwer 18
Wykorzystanie wirtualizacji/konsolidacja Analiza obciążenia serwera: 4x[VPS 1cpu] (SQL), load ~20%/VPS: wyłączenie 3 serwerów 19
Wykorzystanie wirtualizacji/konsolidacja Scenariusz 1: konsolidacja nie w pełni obciążonych serwerów fizycznych (SQL) obsłużone żądania n x 4cpu = możliwość wykorzystania max. procesorów przez każdy serwer wirtualny 14000 11540 12565 12000 1 serwer fizyczny/4cpu (load 20%) 10000 8120 1 serwer wirtualny/4cpu 8000 6000 5660 5000 2 serwery wirtualne/4 cpu każdy 3 serwery wirtualne/4 cpu każdy 4 serwery wirtualne/4 cpu każdy 4000 2000 0 20
Wykorzystanie wirtualizacji/(de)konsolidacja (de)konsolidacja, poprawa wykorzystania oraz redukcja fizycznych zasobów. założenia MIC dot. profilu wykorzystania serwera rozkładanie w pełni obciążonego serwera: po co? np. aby zyskać niezawodność lub udostępnić Adm. pytanie ile żądań mniej obsłużymy? Scenariusz 2 21
Wykorzystanie wirtualizacji/(de)konsolidacja Scenariusz 2: rozłożenie w pełni obciążonego serwera fizycznego na serwery wirtualne (IIS) obsłużone żądania 350 300 250 327 261 291 307 311 223 1 serwer fizyczny (4cpu) 1 serwer wirtualny (4cpu) 2 serwery wirtualne (2cpu każdy) 200 150 3 serwery wirtualne (1+1+2 cpu) 4 serwery wirtualne (1cpu każdy) 4 serwery wirtualne (4cpu każdy) 100 50 0 serwer 22
[NEW] Wykorzystanie wirtualizacji/(de)konsolidacja obsłużone żądania Scenariusz 2: rozłożenie w pełni obciążonego serwera fizycznego na serwery wirtualne (IIS) - WS2008 R2 Release Candidate 600 532 512 536 500 400 429 440 362 1 serwer fizyczny (4cpu) 1 serwer wirtualny (4cpu) 2 serwery wirtualne (2cpu każdy) 300 3 serwery wirtualne (1+1+2 cpu) 200 4 serwery wirtualne (1cpu każdy) 4 serwery wirtualne (4cpu każdy) 100 0 serwer 23
[NEW] Wykorzystanie wirtualizacji/(de)konsolidacja Scenariusz 2: rozłożenie w pełni obciążonego serwera fizycznego na serwery wirtualne (IIS) - porównanie WS2008 R2 Beta vs. Release Candidate żądania 600 58 66 % 500 400 300 200 100 0 1 serwer fizyczny (4cpu) 1 serwer wirtualny (4cpu) Windows Server 2008 R2 Beta (build 7000) Windows Server 2008 R2 Release Candidate (build 7100) 2 serwery wirtualne (2cpu każdy) 3 serwery wirtualne (1+1+2 cpu) 4 serwery wirtualne (1cpu każdy) 4 serwery wirtualne (4cpu każdy) 24
[NEW] Wykorzystanie wirtualizacji/(de)konsolidacja Wydajność IIS-a - różnice % pomiędzy wydajnością serwerów wirtualnych a serwerem fizycznym przypadek testowy - a b c d e WS2008 R2 Beta (build 7000) 100% 80% 89% 94% 95% 68% WS2008 R2 Release Candidate (build 7100) 100% 81% 83% 96% 101% 68% 120% - 6 6 % 100% 80% 60% 40% 20% 0% 1 serw er fizyczny (4cpu) Window s Server 2008 R2 Beta (build 7000) 1 serw er w irtualny (4cpu) Window s Server 2008 R2 Release Candidate (build 7100) 2 serw ery w irtualne (2cpu każdy) 3 serw ery w irtualne (1+1+2 cpu) 4 serw ery w irtualne (1cpu każdy) 4 serw ery w irtualne (4cpu każdy) 25
[NEW] Wykorzystanie wirtualizacji/(de)konsolidacja obsłużone żądania Scenariusz 2: rozłożenie w pełni obciążonego serwera fizycznego na serwery wirtualne (IIS) - static content, enabled compression 70000 60000 50000 40000 30000 64561 38939 50795 55817 63606 41333 1 serwer fizyczny (4cpu) 1 serwer wirtualny (4cpu) 2 serwery wirtualne (2cpu każdy) 3 serwery wirtualne (1+1+2 cpu) 20000 4 serwery wirtualne (1cpu każdy) 10000 4 serwery wirtualne (4cpu każdy) 0 serwer GEth niewysycony 26
Wykorzystanie wirtualizacji/(de)konsolidacja Scenariusz 2: rozłożenie w pełni obciążonego serwera fizycznego na serwery wirtualne (SQL) n x 4cpu = możliwość wykorzystania max. procesorów przez każdy serwer wirtualny obsłużone żądania 27870 1 serwer fizyczny (4cpu) 30000 25000 22450 21590 20760 19998 1 serwer wirtualny (4cpu) 2 serwery wirtualne (4cpu każdy) 20000 3 serwery wirtualne (4cpu każdy) 4 serwery wirtualne (4cpu każdy) 15000 10000 5000 0 serwer 27
Wykorzystanie wirtualizacji/konsolidacja Utylizacja procesora (IIS/ASP.NET MyWebPagesStarterKit CMS) w zależności od liczby procesorów przydzielonych dla serwera wirtualnego: 100,0% 90,0% 80,0% 70,0% 60,0% 50,0% 40,0% 30,0% 20,0% 10,0% 0,0% 1 2 3 4 # cpu/virtual server cpu load context sw./req requests/sec 28
Wykorzystanie wirtualizacji/konsolidacja Utylizacja procesora (IIS/static content) w zależności od zasobów przydzielonych dla serwera wirtualnego: 100,0% 90,0% 80,0% 70,0% 60,0% 50,0% 40,0% 30,0% 20,0% 10,0% 0,0% 1 2 3 4 # cpu/virtual server cpu load context sw./req requests/sec 29
Wykorzystanie wirtualizacji/konsolidacja Konsolidacja, poprawa wykorzystania oraz redukcja fizycznych zasobów: typowy błąd nadmierny optymizm przy konsolidacji: service 1 service 1 service 2 service 2 service 3 service 3 30
Wykorzystanie wirtualizacji/niezawodność Zwiększanie niezawodności wybranych usług: Klastrowanie maszyn wirtualnych (Windows Server 2008 Ent. / Failover Clustering). Likwidacja pojedynczego punktu awarii (węzeł, storage, urządzenia sieciowe) Wykorzystanie wirtualizacji do bezpiecznego przeprowadzania procedury uaktualniania/serwisowania systemów 31
Wykorzystanie wirtualizacji/bezpieczeństwo Wykorzystanie wirtualizacji do zwiększenia bezpieczeństwa systemów: Separacja usług (np. Exchange) Ważne należy zapewnić bezpieczeństwo dla systemów-hostów 32
Wykorzystanie wirtualizacji/ułatwione zarządzanie Wirtualizacja jako ułatwienie w zarządzaniu zasobami: Rozwiązuje typowe problemy organizacyjne w środowisku wielo-projektowym: konieczność dedykowania zasobów, w tym na okres tymczasowy konieczność instalacji różnych wersji oprogramowania na serwerze konieczność nadania praw administracyjnych konieczność zapewnienia ciągłości działania Wykorzystanie wirtualizacji podczas aktualizacji i napraw systemów Wirtualizacja jako narzędzie do szybkiego usuwania awarii 33
Wykorzystanie wirtualizacji/ułatwione zarządzanie 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 34
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: Przykładowe wdrożenie: CEL: uruchomienie maksymalnej liczby VPS-ów na potrzeby szkoleniowe 3 serwery fizyczne (2x Xeon quad-core, 16GB RAM, 2x1TB SATA) główne funkcje VPS: IIS7/.NET + Remote Desktop liczba VPS/per serwer: 15-35 35
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: 36
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: 37
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: 38
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: 39
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: 40
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: Analiza obciążenia jednego z serwerów fizycznych (2x Xeon quad-core, 16GB RAM, 2x1TB SATA): 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 41
Wykorzystanie wirtualizacji/ułatwione zarządzanie 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 42
Wykorzystanie wirtualizacji/ułatwione zarządzanie wyłączenie 10 serwerów (OS) WNIOSKI Uwaga na: szybki ON/OFF Windows Update(!) włączenie 10 serwerów stabilizacja pracy 43
Poznańskie Centrum Superkomputerowo-Sieciowe Poprawa wydajności poprzez zmiane storage-u - przykład
[NEW] Wykorzystanie wirtualizacji/maksymalne upakowanie serwerów wirtualnych lub storage Sun X4540 2x quad-core Opteron (Barcelona) 64 GB RAM 48x 1 TB SATA (6 8-port controllers) $ 21 995 USD list-price45
Poznańskie Centrum Superkomputerowo-Sieciowe Zwiększanie prędkości sieci - przykład
Założenia technologii Infiniband. Infiniband został zaprojektowany tak by mógł zastąpić niemal każdy standard I/O używany w centrach danych (w tym bardzo popularny Fibre Channel, Ethernet i PCI). Posiada duże wsparcie społeczności Open Source oraz komercyjne. Główne założenia; RAS (Reliability, Availability, and Serviceability): Szybkość - oferuje realne prędkości do 96 Gb/s przy opóźnieniach rzędu kilku mikrosekund. Wydajność (ok. 2% użycia procesora przy transferze 150 MB/s) Skalowalność. Energooszczędność (obecnie ok. 5W na port 20 Gb/s). Stabilność i bezawaryjność. Bezpieczeństwo danych (cyclic redundancy checks CRC).
Prędkość połączenia.
RDMA - Remote Direct Memory Access.
Urządzenia w sieci IB HCA. HCA Host Channel Adapter - Karta Infiniband DDR 4X PCI-E dual port..
Sprzęt w sieci IB - okablowanie. Kabel optyczny - Infiniband 4X.
Sprzęt w sieci IB przełączniki. Przełącznik Infiniband Mellanox Infiniscale MTPDK 08
[NEW] Wykorzystanie wirtualizacji/testy storage klient iscsi (np. serwer na potrzeby VPS-ów) Sun X4540 (Windows Storage Server 2008) klient CIFS 10 Gbit/s InfiniBand/iSCSI 3 2 1 fileserver 1 Gbit/s Ethernet 53
Wykorzystanie wirtualizacji/ułatwione zarządzanie Microsoft System Center Virtual Machine Manager: Analiza obciążenia jednego z serwerów fizycznych (2x Xeon quad-core, 16GB RAM, 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 54
30s vs. 60s 4m vs. 5m Wykorzystanie wirtualizacji/ułatwione zarządzanie wyłączenie 10 serwerów (OS) włączenie 10 serwerów stabilizacja pracy 55
350 Porównanie czasów operacji na VPS dla SATA i iscsi/ib t [sekundy] 300 250 200 150 100 50 SATA iscsi/ib 0 OFF operacja ON storage SATA iscsi/ib Windows iscsi/ib Linux przepustowość [MB/s] 100 337,5 437,5 Wydajność różnych typów storage w testach [MB/s] MB/s 500 450 400 350 300 250 200 150 100 50 0 SATA iscsi/ib Windows iscsi/ib Linux SATA iscsi/ib Windows iscsi/ib Linux 56
czas kopiowania plików [s] 800 700 600 500 400 300 200 100 0 Porównanie wydajności fileserwera (CIFS) dla różnych typów instalacji big file bunch of files serwer fizyczny Hyper-V Parent Hyper-V Child big file: 12.7GB bunch of files: 58.5k plikow/12.7gb (~katalog Windows x4) big file bunch of files big file bunch of files serwer fizyczny 112 681 serwer fizyczny 100% 100% Hyper-V Parent 122 693 Hyper-V Parent 92% 98% Hyper-V Child 128 731 Hyper-V Child 88% 93% 57
Dziękujemy za poświęcony czas. Pytania? support-mic@man.poznan.pl 58