1 / 26

Make your product manageable

SAC-644T. Make your product manageable. Jeffrey Snover Distinguished Engineer & Lead Architect, Windows Server Microsoft Corporation. Refaat Issa Senior Program Manager, Windows PowerShell Microsoft Corporation. Why Care?. “Because that’s where the money is.” Willie Sutton.

kristen
Download Presentation

Make your product manageable

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SAC-644T Make your product manageable Jeffrey Snover Distinguished Engineer & Lead Architect, Windows Server Microsoft Corporation Refaat Issa Senior Program Manager, Windows PowerShell Microsoft Corporation

  2. Why Care? “Because that’s where the money is.” Willie Sutton

  3. Why Manageability? • Manageability is increasingly the differentiator between product offerings • Low end needs consistency and simplicity • Virtualization drives scale • Operations demand agility, quality and repeatability

  4. New Windows 8 Manageability Opportunities • Write a WMI V2 provider • Write PowerShell Cmdlets • PS-WMI • PS-Workflow • Configure a REST API using PowerShell and OData

  5. Writing a WMI V2 Provider • Dramatically simplified provider model • Convert-Mof2Provider generates provider skeleton & early bound data structures from specification • Create buildable provider with default method bodies that return NOT_SUPPORTED   • PS-WMI - Guidelines and APIs • Enables PowerShell to convert provider into Cmdlets

  6. demo PS-WMI: Native Code Cmdlets via WMIV2 Jeffrey Snover Distinguished Engineer & Lead Architect, Windows Server Refaat Issa Senior Program Manager, Windows PowerShell

  7. Chicken and Egg Why vendors spend their development budgets building custom management tools • Manageable elements (ME) don’t deliver customer value, solutions do • Solutions don’t support MEs until there is market share • MEs don’t get market share until there are solutions • PowerShell fixes this: IT Pros script solutions

  8. Windows Management Framework (WMF) • Minimizes effort to make your product manageable • Maximizes the value of making your product manageable • Enables the removal of admin GUIs off Server through robust remote management

  9. The N x M Problem Solution Developer IT Pro IT Developer Disk Storage Exchange Devices YOUR ELEMENTS

  10. The Solution OR Maximizing the value of leveraging the Windows Management Framework Solution Developer IT Pro IT Developer WMF Disk Storage Exchange Devices YOUR ELEMENTS

  11. WMF Components Server Manager, PowerShell, ISE Admin GUIs and tools, IDEs …. Client Remote Tools WSMAN OData Clients and Servers Protocols & HTTP/HTTPS Engines WMI  PowerShell  Workflow SMI-S, COM, .NET, RPC, DCOM, HTTP … Access APIs & Storage, Exchange, SharePoint, Disk, Process … Managed Elements(Local/Remote)

  12. Writing a Workflow Cmdlet • Workflow designer tool • PowerShell • Use the keyword “workflow” in place of “function” • Parameters must be named not positional • Be aware of workflow semantics

  13. Why Workflow? • Tame the complexity of production management at scale • Long running activities across multiple machines • Task failures • Machine interrupts and reboots • Something has to handle the complexity, it shouldn’t be the user

  14. Workflow Sample: Install-ADReplicaServer Set up OS CN = A CN = B Patch CN = A Scheduled Task CN = B Install AD DS CN = A Run DCPromo CN = A Asynchronous Task Install DNS CN = A Replicate AD CN = A Scheduled Task CN = B

  15. PowerShell Enhanced Workflow

  16. Workflow Parameters PowerShell provides a Secure, multi-machine, Distributed workflow engine • AsJob • JobName • ForwardJobEvent • PSAllowRedirection • PSApplicationName • PSAuthentication • PSAuthenticationLevel • PSCertificateThumbprint • PSComputerName • PSConfigurationName • PSConnectionRetryCount • PSConnectionRetryInterval • PSConnectionURI • PSCredential • PSElapsedTimeoutSec • PSParameterCollection • PSPersist • PSPersistInterval • PSPort • PSPrivateMetadata • PSRunningTimeoutSec • PSSessionOption • PSUseSSL

  17. demo PS-Workflow: Cmdlets via Workflows Jeffrey Snover Distinguished Engineer & Lead Architect, Windows Server Refaat Issa Senior Program Manager, Windows PowerShell

  18. Why Implement Cmdlets? • IT Pro experience • Rich interactive experience: CLI, Show-Command and POWA • Simple => Sophisticated multi-machine scripting and workflow • Developer experience • .NET APIs for local/remote/multi-machine management • Hostable in IIS for cloud-service management • REST and WSMAN access from non-Windows management tools • Tool experience • Large and rapidly growing list of tool support • ISE…, PoshBoard …, PowerBoots…, PowerGUI …, System Center…

  19. Representational State Transfer (REST) • WEB API of choice • Base URI • http://example.com/resources/ • CRUD operations over HTTP • POST, GET, PUT and DELETE • Data encoding • JSON or XML • “Program with your browser” model

  20. Open Data Protocol (OData) • http://www.odata.org/ • Set of conventions for implementing REST • $Metadata • URI conventions for filtering and addressing • Enables rich tools • Excel 2010, SSIS, etc • Rich client side libraries • JavaScript, PHP, Java, Objective-C, Ruby, Perl, Durpal, Joomla, etc

  21. PowerShell Web API • REST (ODATA) API to sets of PowerShell cmdlets • Implemented by configuring the mapping: • PowerShell => CIM data model => REST via IIS • SDK samples & tools: • http://archive.msdn.microsoft.com/mgmtODataWebServ • http://code.msdn.microsoft.com/windowsdesktop/PswsRoleBasedPlugins-1c7a7ef1 • http://code.msdn.microsoft.com/windowsdesktop/PswsRoleBasedPlugins-9c79b75a

  22. demo REST API (OData) via PowerShell Jeffrey Snover Distinguished Engineer & Lead Architect, Windows Server Refaat Issa Senior Program Manager, Windows PowerShell

  23. Manageability Call to Action • Native code: implement CIM standard schema • Use simplified WMI V2 provider model and tools • Use guidelines & library to get Cmdlets for free [PS-WMI] • Managed code: implement PowerShell Cmdlets • Easiest to produce and widest implementation choices: .NET, PowerShell, Windows Workflow

  24. Manageability Call to Action: Non-Windows Devices • Support CIM and WSMAN standards in your devices • Implement our CIM/WSMAN extensions • Implement SMI-S for storage • Windows Storage Management API and PowerShell Cmdlets

  25. © 2011 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.

More Related