Hyper-V mélylélektan Lepenye Tamás Rendszermérnök

Slides:



Advertisements
Hasonló előadás
Windows Virtualizáció
Advertisements

Richter Elek Technikai terméktámogatási felelős Microsoft Magyarország.
Virtualizációs technikák
A Windows Azure egy skálázható számításifelhő-platform, amelyet a Microsoft hosztol a világ több pontján lévő adatközpontjaiban. Az Azure egyszerű,
KEVESEBB FELÜGYELET ÚJ ÜZLETI MODELLEK NAGYOBB TERMELÉKENYSÉG.
64 bites architektúra, csapdák és átjárók Tóth Sándor Terméktámogatási tanácsadó.
... manapság BizSpark WebsiteSpark Empower for ISVs MAPS (Web Solutions Toolkit ) Microsoft Partner Network Regisztrált szintCertified és Gold Certified.
Somogyi Csaba IT üzemeltetési szakértő Microsoft Magyarország
Licencelés Kovács Nóra Ker-Soft Kft.
Windows Vista, 2007 Office Rendszer, Exchange Server 2007 termékbejelentés Vityi Péter Ügyvezető igazgató Microsoft Magyarország kft.
Szervervirtualizáció { a napi gyakorlatban }
{SAN} DEMO környezet bemutatása Adatelhelyezési módok DAS - Direct Attched Storage NAS – Network Attached Storage SAN – Storage Array Networking.
„AZ IT MAGÁN ÉS NYILVÁNOS ÉLETE” Avagy hogyan születik a BI iránt igény az IT üzemeltetésben Benkovics Viktor Vezető tanácsadó Microsoft Magyarország –
Windows Azure Infrastruktúra és platform a felhőben
Essential Business Server 2008 Szentgyörgyi Tibor NetAcademia oktatóközpont A nagytestvér.
IEEE1394, avagy közvetlen kapcsolat az agyba. Bemutatkozás Barta Csaba Deloitte Zrt. manager CHFI
Lehetőségek, felhasználható eszközök, eddigi tapasztalatok
Windows Server Hyper-V R2 SP1 újdongságok
ITIL-alapú eljárások, beágyazott tudás Modellek segítségével megragadható tudás WS- Management Többszintű virtualizáció: operációs rendszer, alkalmazás.
Kiszolgáló oldali virtualizáció
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Kiszolgáló oldali virtualizáció Tóth Dániel, Micskei Zoltán,
Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Kliens oldali virtualizáció Micskei Zoltán
Virtualizáció Korszerű Adatbázisok Ferenci László
A Windows 7 automatizált telepítése Windows AIK használatával
Egy ISA szerver naplója Sárosi György Terméktámogatási Tanácsadó Microsoft Magyarország.
Windows Server Virtualization
Platform A Vistából örökölt OS alap technológiák Windows Server Core Read-only Domain Controller Hozzáférés szabályzás, erőforrás elérés Network Access.
Storage Virtualization Presentation Virtualization Server Virtualization Desktop Virtualization Application Virtualization SYSTEM CENTER.
Virtualizáció és rendszerfelügyelet R2 módra
Virtualizáció Számítógép architektúrák I. Gyakorlat Radó János.
Virtualizáció Számítógép architektúrák I. Gyakorlat Radó János.
Module 1: A Microsoft Windows XP Professional telepítése
Hibrid felhő Privát-, publikus és hoster felhők összekapcsolása
Windows Server 2012 Kiadások, licencelés, lehetőségek
Demo/teszt környezetek Szerver konszolidáció Adatközpontok alapja.
A felhő az üzleti vezető, a fejlesztő és az üzemeltető szemével A vállalati számító- központ kiterjesztése a felhőbe Biztonság és üzemeltetés a felhőben.
Windows Server 2012 R2 Gál Tamás
Ittzés Zsigmond Budapest Airport IT Infrastruktúra manager
Microsoft CRM online Strén András
Taletovics Márk Microsoft Magyarország. Mi van a csomagban?
Somogyi Csaba üzemeltetési szakértő Microsoft Magyarország ARCHITECTArchitect AcademyFoundationsInsidersMCPtréningekvizsgákgyakorlatprojektek.
Rendelkezésre álló erőforrások pontos ismerete Kiosztott feladatok közel „valósidejű” követése Átláthatóság Tervezési folyamatok támogatása.
Budai Péter Szakmai és biztonsági vezető Microsoft Magyarország.
Magas rendelkezésre állású Hyper-V rendszer építése
Rugalmas, moduláris felépítés Rugalmas telepítés Jól tervezhető szerepkörök Folyamatos rendelkezésre állás Egyszerű felügyelet Elérés bárhonnan Postafiók.
A Microsoft Üzleti Intelligencia megoldása és platformja
Út a felhőbe - Azure IaaS Windows Server 2012 R2 konferencia
Virtualizáció, mint projekt Somogyi Csaba üzemeltetési szakértő Microsoft Magyarország.
Blog Fülöp Dávid MCT, MCPD Egy blog sémája Use Case-ek – Blog áttekintése – Egy blogpost megtekintése – Blogpost írása – Blogpost.
Egy év napórapercmásodperc %99,9%99,99%99,999% Megengedhető kiesés / év 3 nap 15 óra 36 perc8 óra 45 perc 36 mp.52 perc.
Egy évtized eredményei - avagy mit adhat nekünk egy új platform?
Christopher Chapman | MCT Content PM, Microsoft Learning, PDG Planning, Microsoft.
Az áttérés teljes művelete 4321 P2P migráció P2C migráció P2V migráció.
Ismerkedés az Active Directory-val
2. Operációs rendszerek.
Vállalati infrastruktúra, mely minden igényt kielégít Felhasználóbarát eszközök és élmények.
Desktop virtualizáció Microsoft VDI használatával Háló Gyula.
The information contained in this document represents the current view of Microsoft Corp on the issues discussed as of the date of publication. Because.
Kiss Tibor System Administrator (MCP) ISA Server 2006.
Farkas Bálint | Technical Evangelist | Microsoft.
AZURE RÉGIÓK Szoftver szolgáltatás SaaS Platform szolgáltatás PaaS Infrastruktúra szolgáltatás IaaS.
Farkas Bálint | Technical Evangelist | Microsoft
TechReady 22 6/25/2018 © 2015 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks.
WS16 TP4 újdonságok Gál Tamás Budapest Sysadmin Meetup
Microsoft Azure Marketplace & Microsoft Azure Certified program
A nagyváradi villamosok megbízhatósági modellezése
„Agilis-e vagy?” – egy váltókezelő naplója
HWSW Meetup – Felhő és ami mögötte van
Microsoft SQL licenselés a gyakorlatban
Build /24/2019 © 2015 Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION.
Előadás másolata:

Hyper-V mélylélektan Lepenye Tamás Rendszermérnök Microsoft Magyarország

Napirend Bevezetés Architektúra Teljesítmény-mérés Biztonság

A Windows Server 2008 R2 architektúrája Szerver szerepkörök (néhány példa) RD ADFS WDS Etc… Server Core szerepkörök és opcionális funkciók Szerver .NetFx, Shell, Eszközök, etc. .NET 2.0 .NET 3/3.5 Power-shell Fail-over cluster ASP.NET Cert Server DNS DHCP AD File Print Media srv. IIS Hyper-v RD Virtualization Server Core Biztonság (IPSec, Bitlocker, GPO, tűzfal) TCP/IP, NTFS, WMI, Win-RM, RPC stb WoW64 GUI, Shell, IE, Media, Mail, Etc.

A Windows Server 2008 R2 Server core architektúrája Szerver szerepkörök (néhány példa) RD ADFS WDS Etc… Server Core szerepkörök és opcionális funkciók Szerver .NetFx, Shell, Eszközök, etc. .NET 2.0 .NET 3/3.5 Power-shell Fail-over cluster ASP.NET Cert Server DNS DHCP AD File Print Media srv. IIS Hyper-v RD Virtualization Server Core Biztonság (IPSec, Bitlocker, GPO, tűzfal) TCP/IP, NTFS, WMI, Win-RM, RPC stb WoW64 GUI, Shell, IE, Media, Mail, Etc.

A Hyper-V Server architektúrája Server Core szerepkörök és opcionális funkciók .NET 2.0 .NET 3/3.5 Power-shell Fail-over cluster ASP.NET Cert Server DNS DHCP AD File Print Media srv. IIS Hyper-v RD Virtualization Server Core Biztonság (IPSec, Bitlocker, GPO) TCP/IP, NTFS, WMI, Win-RM, RPC stb WoW64 GUI, Shell, IE, Media, Mail, Etc.

Indítás USB eszközről (UFD) 4/7/2017 2:34 PM Indítás USB eszközről (UFD) OEM támogatású Microsoft Hyper-V Server 2008 R2 esetén UFD (min 8 GB, ajánlott: 16 GB) NTFS fájlrendszer Nativ VHD Boot-ra épül VHD és Microsoft Hyper-V Server 2008 R2 NTFS-en A lapozás kikapcsolva USB meghajtók betöltődnek UFD-nek „beépített” –nek kell magát mutatnia BCD bejegyzések az induláshoz Rendszerpartíció Elsődleges partíció Bootmgr C:\Windows BCD UFD VHD és Hyper-V Server 2008 R2 © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Követelmények és feltételezések 4/7/2017 2:34 PM Követelmények és feltételezések Hardver követelmények x64 processzor architektúra Itanium változat nincs Hardveres virtualizáció támogatás AMD AMD-V vagy Intel VT Hardveres Data Execution Prevention (DEP) AMD (NX no execute bit) Intel (XD execute disable) Ezeket a BIOS-ban lehet beállítani. A beállítás után ki kell kapcsolni a gépet (nem elég újraindítani!) MSI (Message Signaled Interrupts) Általában minden alaplap, amely a fentieket támogatja, az MSI kompatibilis, de vannak kivételek. Pl.: VIA P4M900; VIA K8M800 chipsetes DESKTOP alaplapok Feltételezések A hardver megfelelő – nincs „pre-flight check” Vállalati felhasználás Tartománytagság (nem kötelező, de jó, ha van) Ezek nem követelmények, csak az ettől eltérő helyzetek kezelése nehézkesebb MICROSOFT CONFIDENTIAL © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Napirend Bevezetés Architektúra Teljesítmény-mérés Biztonság

A Hyper-V felépítése Microsoft hypervisor Szülő partíció Gyermek partíció Gyermek partíció Gyermek partíció 2008 R2 A hypervisort érzékelő Windows OS A hypervisort érzékelő Nem Windows OS Ring3 A hypervisort nem érzékelő OS Vmm service WMI provider VM worker processes Virtual Infrastrucure Driver Integrált szolgáltatások Ring0 Virtualization Service Provider (VSP) Virtualization Service Consumer (VSC) GPL licenc alapú VSC Eszközkezelők Emulált eszk. Emulált eszk. VMBus VMBus VMBus Hypercall interface Hypercall interface Hypercall interface Emulált eszközök Hypercalls Hypercalls Hypercalls Hypercalls Ring -1 Microsoft hypervisor „Designed for Windows” hardver

A hypervisor Type1 (bare metal) hypervisor Mikrokernel architektúra Hvax64.exe – 636 KB – AMD rendszereken Hvix64.exe – 690 KB – Intel rendszereken Mikrokernel architektúra Processzor-idő allokáció Memória allokáció Skálázhatóság 64 logikai processzor (Hyperthreading-gel 128 végrehajtási szál) 512 virtuális processzor - 1 TB memóra

Demo SecurAble A hypervisor valóban felügyeli a teljes rendszert – még a szülőpartíció számára sem teljesen hozzáférhető minden.

Monolitikus hypervisor A hardver eszközmeghajtók a hypervisor részét képezik Az eszközkezelők listáját csak a gyártó bővítheti Naprakész kompatibilitási lista Minden eszköz közvetlen kapcsolatban áll a hardverrel a hypervisoron keresztül (Értsd: a konzol OS kihagyásával) VM 1 (Konzol OS) VM 3 Hypervisor VM 2 Hardver Drivers Eszközk. April 7, 2017

Mikrokernel hypervisor Operációs rendszert igényel a fizikai hardver kezeléséhez. A vendég operációs rendszereknek nincs közvetlen hozzáférése a fizikai hardverhez Nem igényel hypervisor-hoz igazított eszközkezelő meghajtókat. A hypervisor nem tartalmaz harmadik gyártótól származó kódot. VM 2 (“Gyermek”) VM 3 (“Gyermek”) Üzemeltetési következmények: - A Hypervisor indulása - Eszközkezelők helye - Biztonság VM 1 (“Szülő”) Virtualizáció felügyelet Drivers Eszközk. Drivers Szint. Eszk. Drivers Szint eszk. Hypervisor Hardver April 7, 2017

A hypervisor indulása A HVBoot .sys indítja A hypervisor betöltésének ellenőrzése Platform detektálás és ellenőrzés A platform specifikus hypervisor betöltése A hypervisor indítási kódjának betöltése az összes processzoron Platformfüggő, per processzor struktúrák és egyéb hypervisor alrendszerek inicializálása a processzor virtualizációs kiterjesztése segítségével. Virtuális processzorok létrehozása minden fizikai processzorhoz, a szülő partíció izolálása A kontrol visszaadása a szülő partíciónak és a betöltési folyamat folytatása BCD Setting Valid values Default value Description Hypervisorlaunchtype AUTO, OFF AUTO Added to BCD store when Hyper-V role is installed. AUTO: launch hypervisor during boot OFF or not present: disable hypervisor Hypervisorpath Valid local path None Path to a private hypervisor, such as a checked build or a custom hypervisor, relative to %systemroot%\system32. Hypervisordebug ON, OFF Enable/disable hypervisor debug mode. ON: debugging enabled OFF or not present: debugging disabled

Eszközkezelők A virtualizációs kiszolgálók éppúgy kiegészíthetők eszközkezelőkkel, mint a nem virtualizációs rendszerek x64 – csak aláírt driverek A hypervisor nem igényel speciális, hypervisorra fejlesztett drivert A Hyper-V szerver virtualizáció! Kiszolgálókon (főleg) kiszolgálók A driver fejlesztők motiváltak a javításban ...Egy kis kitérő

DQR – Az meg mi? Értékelési módszertan Rangsorolja az eszközkezelő meghajtókat egymáshoz viszonyítva egy eszköz-kategóriában Felfedezhetők a javításra szoruló eszközkezelő-meghajtók Az „Online Crash Analysis” adatokon alapul Jelenleg csak a kernel módú meghajtókhoz

WER OCA folyamat Összeomlás történik a kliensen A WER összegyűjti az összeomlás adatait A Microsoft megosztja az adatokat a szoftverfejlesztőkkel Szoftver hibajavítás Az új eszközkezelő verziót megkapja a Microsoft és az ügyfél Részvétel arány: Windows XP ~20% Részvételi arány:Windows Vista ~80% Összeomlás 5 1 Új eszköz-kezelő Adat-gyűjtés 4 2 Mention the Opt in rates are estimates based on large amounts of data. That the OCA crash is collected after reboot occurs Hibakeresés Megosztás 3

Átlagos összeomlás arány OCA Összeomlás ráták Az összeomlás ráta méri a telepített bázison történt eszközösszeomlást az átlagos összeomláshoz képest egy adott kategórián belül Azon eszközök figyelése, amelyek 100+ összeomlást okoznak naponta a Windows rendszeren OCA Elemzés Azon eszközönél, ahol az összeomlás aránya több mint kétszerese az átlagnak, a probléma „magas” prioritást kap Össze-omlás arány elemzés Azok az meghajtók, amelyek nagy piaci részesedéssel bírnak a prioritás a „legmagasabb” Piaci részarány elemzés Kategória Átlagos összeomlás arány Audio 0.003 Bluetooth Input 0.005 Networking 0.028 Storage 0.004 Streaming Media 0.030 Érték Leírás 5 (legjobb) <= .25x átlag 4 <= .75x átlag 3 <= 2x átlag 2 <= 9x átlag 1 (legrosszabb) >9x átlag A WinQual portálon megtalálhatók az OCA adatok A frissített meghajtók a Windows Update-re kerülnek * Átlagos összeomlás ráta = (# ahányszor okozta) / (# ahányszor látszott) minden eszközhöz egy adott kategóriában

DQR 2.0 algoritmus – eszközkezelők Minden eszközkezelő egy adott kategóriában egy adott időszakra vonatkozó értékelődik. Az értékelés alapja az összeomlás arány A minimum példányszám 10. A nagyon kis mintavételű számoknál az eszközkezelő 3-as kiinduló értéket kap 90th Percentile - Top 10% drivers per stack ranking Very low Crash / Instance Ratio DQR = 5 80th Percentile - Top 81- 90% per stack ranking Moderate Crash / Instance Ratio DQR = 4 20th – 70th Percentile - Middle 60% per stack ranking Medium Crash / Instance Ratio DQR = 3 10th Percentile - Bottom 11-20% per stack ranking High Crash / Instance Ratio DQR = 2 0 Percentile - Bottom 10% per stack Ranking Very High Crash / Instance Ratio DQR = 1 It has long been said that one of Microsoft's greatest challenges has been to support the wild and unpredictable PC hardware market, stemming from the fact that unlike Apple, Microsoft has little control over the hardware that its OS comes to reside upon. True or not, one thing is certain: a bad driver can turn an otherwise stable system into a nightmare. To help put an end to this, Microsoft is turning to a Driver Quality Rating (DQR) system that it hopes will motivate both OEMs and device manufacturers to increase their commitments to driver quality. The DQR system relies on scores to indicate a driver's quality level, and it derives those scores from user-submitted crash reports. Microsoft's Online Crash Analysis Team will analyze crash reports to determine the ratio of crashing systems to non-crashing systems. Drivers that rarely cause crashes will be rated "Green," while moderately problematic drivers will be rated "Yellow." The horrid stuff gets a big, fat "Red" rating. (Microsoft has not revealed the exact methodology for determining these scores, only that "Green" maps to 7-9 points, "Yellow" 4-6, and "Red" 1-3.) Furthermore, to achieve a "Green" status, a driver must have been released and in use for at least 120 days (starting on June 1, 2007), and must maintain its stability throughout time. Driver manufacturers (or OEMs) must rectify any problem that causes a driver's rating to fall to "Yellow" or "Red" within 90 days, or suffer the consequences. For drivers of this sort, updates must be made available through Windows Update, as well. The consequences of failure, while not dire, are considerable. Only drivers with a "Green" status can be used in computers that are Windows-logo certified, meaning that OEMs will have to be careful in choosing which hardware to include in their offerings. Furthermore, because "Green" hardware can be re-rated as "Yellow" or "Red" in the event that problems arise, OEMs and device manufacturers will need to look after systems even after they have shipped. For most OEMs, design specification changes are costly. If a problem with a device driver appears down the road, Dell will have two options: remove the hardware and have another entire configuration tested by Microsoft's Windows Hardware Quality Labs (WHQL) for logo certification, or address the driver's problems. This puts Dell in the position of needing to make the best choices at the design stages, and needing the best relationships with the manufacturers they chose to work with. Perhaps best for end users, crash reports from real-world use will be counted in assessing a driver's quality, making the stability of a system after it leaves the OEMs shipping facility arguably more important than how the box runs while the lab techs are staring at it. This unfortunately won't mean the death of bargain-basement PCs equipped with questionable hardware. OEMs can choose not to have their hardware certified, of course, but it is also important to note that DRQ ratings are only required for computers certified for the "Premium" Vista experience. That is, Vista Home Basic is not subject to these requirements (the only version of Vista not covered by the Premium requirement). While we feel this is regrettable, it does seem to fall in line with Microsoft's intentions to position Home Basic as a no-frills OS.

Demo Eszközkezelő telepítése

Virtual Machine Management Service (VMMS) WMI Provider Virtual Machine manager Worker process manager Snapshot manager Single port listener for RDP (TCP 2179) Active Directory Service Marker VSS writer Cluster Resource Control VMMS State Management The Virtual Machine Management service (VMMS) is responsible for managing the state of all virtual machines in child partitions. It performs management tasks for stopped, or offline, virtual machines, such as snapshotting or device addition/removal. When a virtual machine is started, the Virtual Machine Management Service spawns a new Virtual Machine Worker Process for each of the started virtual machines. The worker process for each online virtual machine then performs the management tasks for the associated virtual machine. The VMMS also exposes a set of WMI-based APIs for managing and controlling virtual machines. The Virtual Machine Management service is implemented as a system service in VMMS.exe, and is dependent upon the Remote Procedure Call and Windows Management Instrumentation services. The VMMS service configuration is defined in the following registry key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vmms April 7, 2017

Demo A WMI Interface helyi használata: Powershell Library

Virtual Machine Worker Process A VM munkafolyamatok részei: Virtual Hardware State Machine Timers Repositories Virtual Motherboard (VMB) Virtual Machine Worker Process Virtual hardver State Machine Active Powering up Saving Powering Down Timers Current time Create time Configuation Guest Memory Attributes IRQ Generation Save Memory and port Mapped IO Repositories Core Only Virtual Motherboard Saját fiókokkal futnak (service SID) Következmények Egységes VM „hardver” Emuláció a szülő partícióban VM újrainduláskor mindig van időszinkronizálás (Vendég operációs rendszertől függetlenül) Egyetlen gép „kilőhető” The Virtual Machine Worker Process, vmwp.exe, is a user mode component of the virtualization stack. The worker process provides virtual machine management services from the Windows Server 2008 instance in the parent partition to the guest operating systems in the child partitions. The Virtual Machine Management Service spawns a separate worker process for each running virtual machine. This creates isolation for each virtual machine such that, if a component of a single worker process crashes, it only affects the virtual machine that corresponds to the failing worker process. For security purposes, the worker process runs under the Network Service account to minimize its access to the Windows Server 2008 instance in the parent partition. Core Vdevs Emulated Devices & Hybrid Devices Plug-in VDevs Plug-in VDevs VSP April 7, 2017

Demo Service SID Beragadt gép

Virtuális eszközök Core VDevs Plug-in Vdevs Virtuális eszközök, amelyek meglévő hardver eszközöket modelleznek A legtöbb Core VDevs emulált eszköz BIOS, DMA, APIC, ISA Bus, PCI Bus, PIC Device, PIT Device, Power Mgmt device, RTC device, Serial Controller, Speaker device, 8042 PS/2 keyboard/mouse controller, Emulated Ethernet, Floppy controller, IDE Controller, VGA/VESA video. Két szintetikus core VDevs: video és mouse Plug-in Vdevs Szoftver modulok, amelyek nem meglévő hardvert modelleznek Bővíthető szerkezet, további eszközök születhetnek a jövőben A Virtualization Service Providerek (VSP) példányosítása konfigurálása és kezelése a feladatuk Két szintetikus plug-in Vdev eszköz létezik: network és storage Az integrált szolgáltatások „plug-in Vdevs”-ek April 7, 2017

Demo Core VDevs

VID Virtualization Infrastructure Driver 4/7/2017 2:34 PM Partíció felügyelet Gyermek partíció létrehozása és törlése Futó VM-ek mentett állapotba helyezése és felélesztése CPU erőforrás allokáció módosítása a gyermek partícióban Kommunikáció a hypervisorral a Synthetic Interrupt Controller (SynIC)-en keresztül Processzor felügyelet Memória felügyelet (Virtual Memory Stack Manager) © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

VID Virtual Stack Memory Manager (VSMM) This figure shows three child partitions, each having its own GPA space. Pages in each GPA space point to SPA pages. For example, when Partition A executes an instruction that accesses memory in GPA page number 105, the underlying page that will be accessed is SPA page number 307. The hypervisor uses and keeps track of the GPA-to-SPA mappings, but it is the Virtualization Stack (the VSMM in particular) that sets these mappings. Note that almost all guest instructions do not directly reference GPA addresses. Instead, they reference Guest Virtual Addresses (GVA). Guest Virtual Addresses are the virtual address space that the child partition operating systems and applications “see” and refer to. For example, the GVA space on a 32-bit child partition is 4GB. For operating systems running on physical hardware (i.e. not virtualized), virtual to physical address translation is done by the processor using page tables provided by the operating system. The hypervisor needs to make sure that GVA to SPA translation is performed (rather than GVA to GPA), so that an actual SPA page is referenced. The algorithm used by the hypervisor for performing these translations is known as ATC (Address Translation Control). The hypervisor maintains a shadow page table (i.e. a page table that does not point to physical pages) for each partition to translate Guest Virtual Addresses to System Physical Addresses. The only responsibility of the VSMM in this process, however, is to provide the hypervisor with the GPA-to-SPA mappings for a child partition as shown in this figure. April 7, 2017

Virtualization Service Provider (VSP)-k Ez a komponens osztja meg a fizikai eszközöket. Négy VSP van jelenleg a Hyper-V-ben. Ezek: Network – VMSwitch.sys - NDIS intermediate MUX driver Storage – SRB Server; Parser (vhdparser.sys; isoparser.sys; passthruparser.sys) Control Interface (Input/Output controls IOCTLS) Video – 2D graphics output Human Interface Device (HID) VSP April 7, 2017

Virtualization BUS (VMBUS) 4/7/2017 2:34 PM Virtualization BUS (VMBUS) Funkciók Nagysebességű pont-pont kapcsolat (csatorna) a szülő partíció és a gyermek partíció között. Az egyik végpont a VSP, a másik végpont a VSC Adatokat és parancsokat továbbít A VMBus... Nem általános célú busz Nem végez emulációt Nem interfész a hypervisor felé Nem lehetséges gyermek-gyermek kommunikáció Nem fér hozzá a fizikai eszközökhöz © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Lemezelérés emulált eszközökkel 4/7/2017 2:34 PM Lemezelérés emulált eszközökkel Szülő partíció Gyermek partíció Szállító: VM Worker Process Applications Windows User Mode Hyper-V Windows Fájlrendszer ISV Kötet Storage VSP Partíció Lemez Lemez StorPort StorPort Miniport Kernel Mode Windows hypervisor Hardver © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Szintetikus lemezelérés 4/7/2017 2:34 PM Szülő partíció Gyermek partíció Szállító: VM Worker Process Alkalmazások Windows User Mode Hyper-V Windows Fájlrendszer ISV Kötet OEM Partíció Virtual Storage Provider (VSP) Lemez Lemez Fast Path Filter (VSC) IDE/SCSI StorPort StorPort Virtual Storage Miniport (VSC) StorPort Miniport iSCSI VMBus Kernel Mode Windows hypervisor Hardver © 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

DEMO Integrált eszközök

Gyermek partíciók (Virtuális gép) Komponensek Emulált eszközök Virtualization Service Clients (VSC) VMBus Vendég OS Integrált szolgáltatások „Enlightenments” April 7, 2017

Gyermek partíciók ”Enlightenments” Kernel szintű optimalizáció – az operációs rendszer észleli, hogy hypervisor felett fut Teljesítmény optimalizáció Címtér váltás hypercall segítségével TLB flushing CPUID processzor utasítások helyett MOV utasítások APIC register hozzáférés Funkcionális javítások Processzor használat és üresjárat észlelés Event tracing for Windows (ETW) Kernel és Hypervisor események korellálása Machine check handling Interrupt usage agreements The inclusion of virtual environment optimizations into an operating system is referred to as enlightenment. Enlightenments are implemented by modifying the operating system code so that it is aware of the hypervisor and can change its operation to be more efficient in the presence of a hypervisor. An operating system instance may be unenlightened, partially enlightened, or fully enlightened. Fully enlightened operating systems do not need hardware emulation for virtual devices. Windows Vista SP1 and Windows Server 2008 include enlightenments and are able to detect the presence of a hypervisor at run time. These changes are built into the Kernel and the HAL components for both performance optimization and functional enhancements. XEN is also including these enlightenments into the Linux Kernel for Microsoft. Performance Optimization Enhancements Address space switching through hypercalls. The guest operating system can call the hypervisor to switch between virtual address spaces without performing a costly flush of the transaction lookaside buffer (TLB). TLB flushing. The Windows kernel uses hypercalls to flush groups of TLB entries from both local and remote tagged TLBs. CPUID removal in certain paths. In certain critical paths, the use of the CPUID processor instruction is eliminated and replaced with an execution-serializing MOV instruction, to avoid the mandatory intercept associated with execution of CPUID. APIC register accesses. A number of frequently-accessed memory-mapped APIC registers are accessible by using lower-overhead synthetic memory service routines (MSRs). Functional Enhancements  Processor utilization and idle determination. When a hypervisor is present, the operating system calls the hypervisor to determine the actual utilization of the logical processors. This information is used by the power manager to determine the idle state of individual processors or processor groups. Event Tracing for Windows (ETW). Windows Virtualization uses ETW to record diagnostic information in order to allow customers to correlate kernel events with hypervisor events. ETW has added infrastructure support for high-performance recording and event correlation. Machine-check handling. The hypervisor relies on the operating system in the root partition to process hardware machine checks and take the appropriate action. The kernel’s machine check processing recognizes when a machine check has occurred when another guest or the hypervisor is running, and records the appropriate information. Interrupt usage agreements. Interrupt vector 0xFF is available solely for the hypervisor, and vectors 0xF0 – 0xFF are always edge-triggered April 7, 2017

Gyermek partíciók Virtualization Service Clients A VMBuson keresztül adatokat és utasításokat küldenek, illetve adatokat fogadnak a szülőparíció megfelelő VSP-jétől. Szintetikus eszközök: IDE csatolók SCSI csatoló Network adapter Video Human Interface Device

Gyermek partíciók Integrált szolgáltatások Heartbeat Key/Value Pair Exchange Time Synchronization Shutdown Volume Shadow Copy Service (VSS) These components are installed as services in the Guest operating system. On an operating system in a child partition with the Integration Services installed, the following services are installed and started: Hyper-V Heartbeat Service Hyper-V Data Exchange Service Hyper-V Time Synchronization Service Hyper-V Guest Shutdown Service Hyper-V Volume Shadow Copy Requestor The configuration for these services are contained in the following registry keys: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services… Vmicheartbeat Vmickvpexchange Vmictimesync Vmicshutdown Vmicvss April 7, 2017

Demo Integrált szolgáltatások Key/Value Pair Exchange

Linux támogatás Mit jelent az hogy „támogatott”? A hibabejelentéstől a hibák teljes elhárításáig, beleértve akár a forráskód modosítást is. Támogatott Linux rendszerek (ma): SUSE Linux 10, 11, Redhat 5.2, 5.3, 5.4 Háttérszerződésekkel biztosítva Kompatibilitás 2.6.19 kernel verzió előtt 2.6.20-31 között 2.6.32 után

A Microsoft és a Linux kernel fejlesztés

Microsoft - Linux kernelfejlesztés Szintetikus eszközkezelők, jelenleg FastBooot / SCSI / Network Majdnem egyéves előkészület KB. 20 000 sornyi kód GPLv2 alá helyezése A kernelfejlesztésbe való bekapcsolódás lehetővé teszi, hogy bármely disztribúciónak része lehessen a kód Debian, CentOS, Ubuntu stb. Elkötelezettség a továbbfejlesztésre Cél: a Windows-nak nyújtott szolgáltatások biztosítása Linuxon

Operációs rendszer támogatás (ma)

Napirend Bevezetés Architektúra Teljesítmény-mérés Biztonság

Teljesítmény-mérési problémák Több fogyasztója van közös erőforrásoknak (processzor, I/O) – a teljesítmény figyelése fontosabb Magasabb az erőforrásaink átlagos kihasználtsága – a szűk keresztmetszetek előbb előkerülnek A virtuális gépekben a teljesítmény paraméterek közül nem mindegyik használható Pl.: % processor time A szülő partíció virtualizált Két kérdésre keressük a választ Mit mérjünk? Hogyan mérjük?

Demo Teljesítmény mérési probléma

Mit mérjünk? Memory: Overall health: Processor: Networking: Storage: Hyper-V Virtual Machine Health Summary Hyper-V Hypervisor Processor: Processor Hyper-V Hypervisor Logical Processor Hyper-V Hypervisor Root Virtual Processor Hyper-V Hypervisor Virtual Processor Memory: Memory Hyper-V Hypervisor Partition Hyper-V Root Partition Hyper-V VM Vid Partition Networking: Network Interface Hyper-V Virtual Switch Hyper-V Legacy Network Adapter Hyper-V Virtual Network Adapter Storage: Physical Disk Hyper-V Virtual Storage Device Hyper-V Virtual IDE Controller

4/7/2017 Hogyan mérjünk? A Pass-through lemezeket a gyermek partíció felől kell monitorozni Telepítsük az integrált komponenseket Az Integrált komponenssel nem rendelkező virtuális gépeket lehetőség szerint csoportosítsuk külön gazdagépre Zárjuk be a felesleges VMConnect kapcsolatokat Fontoljuk meg, szükséges-e Antivírus szoftver Zárjuk ki a VMSWP.EXE, VMWP.EXE és VMMS.EXE állományokat Zárjuk ki a Hyper-V konfigurációs állományait és a VHD-ket. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Napirend Bevezetés Architektúra Teljesítmény-mérés Biztonság

Támadás virtuális környezetben Szülő partíció Gyermek partíció Szállító: Egyéb Windows ISV Hyper-V Virtualizáció Stack VM Worker Processes VM szolgáltatás WMI Provider Vendéggép alkalmazások Ring 3: User mód Támadó Virtualization Service Clients (VSCs) Virtualization Service Clients (VSCs) OS Kernel Virtualization Service Providers (VSPs) Server Core Windows Kernel Eszköz- kezelő VMBus Enlightenments Enlightenments VMBus Ring 0: Kernel mód Windows hypervisor Szerver hardver

Biztonsági feltételezések A vendéggépek nem megbízhatóak Bizalmi kapcsolatok A hypervisornak meg kell bíznia a szülő partícióban A gyermekpartícióknak meg kell bíznia a szülő partícióban A szülő-partícióban futó kód minden processzormódban, védelmi szinten, szegmensben futhat A Hypercall interface jól dokumentáltan a támadók rendelkezésére áll Minden hiperhívás (hypercalls) meghívható a gyermekpartícióból Megállapítható, hogy a gép virtuális környezetben fut Verziószámot is visszaad a hypervisor A Hypervisor belső szerkezete jól ismert

Biztonsági célok Erős izoláció a partíciók között A vendéggép bizalmasságának és integritásának védelme Teljes szeparáció Szülő - gyermek Egyedi hypervisor erőforrás sor (resource pool) vendéggépenként Külön worker processes vendéggépenként Egyedi csatornák a vendég-szülő kommunikációhoz (nincs közös adatbusz) Gyermek - gyermek A gyermekpartíció nem módosíthat más gyermekpartíciót, szülőpartíciót vagy hyerpvisor-t A vendég-vendég kommunikáció nem engedélyezett VM csatolófelületeken (Csak Pl. TCP-n)

Biztonság - izoláció megosztása nem lehetséges Külön VMBus gépenként a szülőhöz Nincs memória-megosztás A vendéggépek nem végezhetnek DMA támadást, mert sohasem kapcsolódnak a fizikai eszközhöz A vendéggépek nem írhatnak a hypervisor-ba A szülőpartíció nem írhat a hypervisor-ba

Hyper-V és SDL A Hypervisor készítése során alkalmazott biztonsági technológiák Stack guard cookies (/GS) Address Space Layout Randomization (ASLR) Hardver Data Execution Prevention No Execute (NX) AMD Execute Disable (XD) Intel Code pages marked read only Memory guard pages A Hypervisor bináris kód digitálisan aláírt A Hypervisor és a szülőpartíció egyaránt átesett az SDL cikluson Kockázat modellezés (Threat modeling) Static Analysis Fuzz testing & Penetration testing

Demo Nem exportált gép importálása

Frissítések Hyper-V Server 2008 R2-re

Frissítések Hyper-V Server 2008 R2-re Leírás Érték Az összes frissítés száma 9 db Biztonsági frissítések száma 5 db Sérülékenységek száma 10 db Hyper-V kódot érintő biztonsági frissítések/sérülékenységek száma 1 db Kritikus biztonsági frissítések száma Fontos biztonsági frissítések száma 4 db Újraindítástt igénylő frissítések 8 db Karbantartást igénylő hónapok száma 3 db A biztonsági frissítések aránya az összes frissítéshez képest 55% A kritkus biztonsági frissítések aránya az összes biztonsági frissítéshez képest 20% A Secure Development Lifecycle folyamat bevezetése előtt keletkezett sérülékenységek aránya az összes sérülékenységhez képest 90% Újraindítások száma azonnali telepítést feltételezve (az egy napon megjelent frissítéseket egy lépésben telepítve) Újraindítások száma, havi karbantartási ciklust feltételezve

Biztonság - javaslatok Dedikált kiszolgáló – Hyper-V Server 2008 R2 Server Core – Hyper-V Server 2008 R2 Dedikált szülőpartíció hálózat Elválaszott szülő partíció hálózat (Ipsec, VLAN) Antivírus szoftverre nincs szükség Tartománytagság (GPO, SCVMM, DCM) AzMan vagy SCVMM használata Bitlocker, ha a host fizikai környezete nem biztonságos

4/7/2017 2:34 PM © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Olvasnivaló Windows Server 2008 Security Compliance Management Toolkit Windows Server 2008 Hyper-V overview white paper Windows Server 2008 Virtualization with Hyper-V: FAQ Microsoft Hyper-V Server 2008 FAQ Hyper-V Planning and Deployment Guide Performance and Capacity Requirements for Hyper-V Performance Tuning Guidelines for Windows Server 2008 R2 Hyper-V Attack Surface Reference Workbook Virtualization with Hyper-V: Supported Guest Operating Systems Virtualization WMI Provider Infrastructure Planning and Design

Olvasnivaló – teljesítmény-mérés http://blogs.msdn.com/tvoellm/archive/2008/03/20/hyper-v- clocks-lie.aspx http://blogs.technet.com/clint_huffman/archive/2009/05/11/d o-not-use-task-manager-in-hyper-v-for-processor- measurements.aspx http://blogs.msdn.com/tvoellm/archive/2008/05/04/hyper-v- performance-counters-part-one-of-many.aspx http://blogs.msdn.com/tvoellm/archive/2008/05/09/hyper-v- performance-counters-part-two-of-many-hyper-v- hypervisor-counter-set.aspx http://blogs.msdn.com/tvoellm/archive/2008/05/09/hyper-v- performance-counters-part-three-of-many-hyper-v-logical- processors-counter-set.aspx