Top Developer Technologies Windows Server 2008 R2
Phil Pennington, Sr. Developer Evangelist, Microsoft Christian Saborio, Chief Software Architect, Scorpiotek Solutions
SESSION CODE: WSV329
Designed for PerformanceWindows Server 2008 R2
Got CPUs? Get R2…
Windows Organizes Many-Cores via GROUPNew with Windows 7 and R2
GROUPNUMA NODE
NUMA NODE
Socket Socket
Core Core
Core CoreLP LP
LP LP
NUMA = Non-Uniform Memory AccessLP = Logical Processor
Processor GroupsExample: 2 Groups, 4 Nodes, 8 Sockets, 32 Cores, 4 LPs/Core = 128 LPs
Group
NUMA NodeSocket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
Socket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
NUMA NodeSocket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
Socket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
Group
NUMA NodeSocket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
Socket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
NUMA NodeSocket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
Socket
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
CoreLP LP
LP LP
Many-Core Topology APIs - Discovery
Cooperative Scheduling
Cooperative “User-Mode” SchedulingDesigned for Performance
UMS Enables High-Performance Multi-Threaded AppsX64 C++ Concurrency Runtime Scheduler built on UMS
Core 2
Thread3
Non-running threads
Core 1
Thread4
Thread5
Thread1
Thread2
Thread6
Core 2Core 1
UserThread
2
KernelThread
2
UserThread
1
KernelThread
1
UserThread
3
KernelThread
3
UserThread
4
KernelThread
4
UserThread
5
KernelThread
5
UserThread
6
KernelThread
6
Thread Scheduling
Kernel
Application
Designed for Performance
DEMO
Designed for EfficiencyWindows Server 2008 R2
Server Footprint Reduction
W2K3 WS08 SP1 WS08 R20
50
100
150
200
250Idle Reference Set
Enterprise FullEnterprise Core
MB
Server Core Architecture
Server Core Server Roles and Optional Features
Server CoreSecurity, TCP/IP, File Systems, RPC,plus other Core Server Sub-Systems
DNS DHCP FileAD
ServerWith .NetFx, Shell,
Tools, etc.
TS ADFS WDS Etc…
Server, Server Roles (for example only)
ADLDS
MediaServer
IIS
Hyper-VPrint
ASP.NET PS.NET3/3.5
.NET2.0
WoW64 GUI, Shell, IE, Media, Mail, Etc.
Cert Server
Timer Coalescing
Staying idle requires minimizing timer interruptsBefore, periodic timers had independent cycles even when period was the sameNew timer APIs permit timer coalescing
Application or driver specifies tolerable delayTimer system shifts timer firing to align periods on natural frequency
Timer tick15.6 ms
Periodic Timer Events
Windows 7
Vista
“Trigger-Started” ServicesBefore, services typically started at system boot and ran until shutdownServices can now specify specific start and stop conditions (triggers):
Device class arrival and removalBthserv: start on bluetooth device class arrival
IP address arrival and removalLmhosts: start on first and stop on last IP address availability
Firewall port eventBrowser: open of NS and DGM ports
Domain join and unjoinW32Time: start on join, stop on un-join
Custom ETW eventAppid: start when SRP enabled
Triggers are stored in service registry keyUse “sc qtriggerinfo” to view service triggers
Designed for Efficiency
DEMO
Designed for ManagementWindows Server 2008 R2
Services
Windows Management Framework
Managed Components
UI Toolkits
Automation Environment
Management Protocols
Management UI
ServerManager
ISEConsole Custom
BITS Wsman WMI
PowerShell Engine
BITSRobust content distributionAsynchronous and scriptableOptimum network utilization
Wsman and WMIStandards basedRemotable and ubiquitousOS or bare hardware
Windows PowerShellIntuitive command shellPowerful scripting languageUniversal execution environment
Rich User InterfacesTask orientedUser customizable3rd party extensible
OS, Applications & Devices
Auto
mat
ion
Plat
form
Righ
t UX
Virtual AccountsWant better isolation than existing service accounts
Don’t want to manage passwordsVirtual accounts are like service accounts:
Process runs with virtual SID as principalCan ACL objects to that SID
System-managed passwordShow up as computer account when accessing network
Services can specify a virtual accountAccount name must be “NT SERVICE\<service>”
Service control manager verifies that service name matches account name Service control manager creates a user profile for the account
Also used by IIS app pool and SQL Server
Managed Service AccountsServices sometimes require network identity e.g. SQL, IISBefore, domain account was only option
Required administrator to manage password and Service Principal Names (SPN)Management could cause outage while clients updated to use new password
Windows Server 2008 R2 Active Directory introduces Managed Service Accounts (MSA)
New AD classPassword and SPN automatically managed by AD like computer accountsConfigured via PowerShell scriptsLimitation: can be assigned to one system only
Many-Core Topology APIs – Resource Localization
Designed for Management
DEMO
Designed for ExtensibilityWindows Server 2008 R2
Internet Information Services 7.0 Modular and Extensible Architecture
Server functionality is split into ~ 40 modules...
Modules extend server functionality through a public module API.
Send ResponseLog Compress
NTLM Basic
Determine Handler
CGI
Static File
ISAPI
Authentication
Anon
SendResponse
AuthenticationAuthorizationResolveCache
ExecuteHandler
UpdateCache
…
…
…
…
Internet Information ServicesIIS is built on an open and modular architecture
Can be extended and customized by free IIS Extensions
Powershell Snap-in Web Platform Installer
URL Rewrite Application WarmupModule
File Classification Infrastructure (FCI)New File Server Feature
Extensible properties, policies, tasks, and actions Built-in Solutions for File Classification Integration with SharePoint
Apply Policy based on classification
Discover DataExtract
classification properties
Classify Data Store classification properties
Get classification properties API for external applications
Set classification properties API for external applications
File Classification Extensibility points
Boot from VHDScenarios
Boot from another OS w/o having to repartitionNeed for less virtual scenariosSometimes, virtualization is not an optionReuse existing library of VHD
Boot from VHD – Where to Start?Where to start?
Re-use an existing VHD (Hyper-V, Virtual PC)Sysprep if coming from different hardware
Create a new VHD from Windows 7 / 2008 R2 SetupCreate VHD from setup, mount and install using diskpart
Convert physical disk to VHDDisk2vhd by Mark Russinovich and Bryce Cogswell
~35 GB Free
50 GB
Boot from VHD GotchasUSB Boot not supported Hybernate option not supportedSame rules regarding differencing Hyper-V VHDsDynamic VHDs will expand to their maximum size when booted from
25 GB
F:\
Native VHD SupportIntegrated Volume Status
C:\
VHD
Windows
Designed for Extensibility
DEMO
See R2 on MSDN
Channel9
http://Channel9.msdn.com/Learn/Courses
Track Resources
Microsoft.comhttp://www.microsoft.com/windowsserver2008/en/us/R2.aspx
MSDN Channel9http://channel9.msdn.com/tags/W2K8R2
MSDN Code Galleryhttp://code.msdn.microsoft.com/w2k8r2
MSDN Server Dev Centerhttp://msdn.microsoft.com/en-us/windowsserver
Related Content
WSV201, 10 Hot IT Admin TopicsWSV307, Windows Server 2008 R2 SP1WSV204, Using File Classification InfrastructureWSV06-INT, Lighting-up Nehalem EX with Windows Server 2008 R2WSV07-INT, New Remote Management Technologies in Windows Server 2008 R2WSV401, Advanced Automation Using Windows Powershell 2.0WSV317, Internet Information Services in the DataCenterWSV321, Managing Server Core without Breaking a SweatWSV327, The Road from Windows Server 2003 to Windows Server 2008 R2
Resources
www.microsoft.com/teched
Sessions On-Demand & Community Microsoft Certification & Training Resources
Resources for IT Professionals Resources for Developers
www.microsoft.com/learning
http://microsoft.com/technet http://microsoft.com/msdn
Learning
Complete an evaluation on CommNet and enter to win!
Sign up for Tech·Ed 2011 and save $500 starting June 8 – June 31st
http://northamerica.msteched.com/registration
You can also register at the
North America 2011 kiosk located at registrationJoin us in Atlanta next year
© 2010 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.
JUNE 7-10, 2010 | NEW ORLEANS, LA