220 likes | 373 Views
SVR13. Windows PowerShell: An Automation Toolbox for Building Solutions That Span Small Businesses, Enterprises and Cloud Services. Kenneth Hansen, Program Manager Narayanan Lakshmanan, Developer Microsoft Corporation. Different Admin Environments. ….com. Ops. Fabrikam Enterprises.
E N D
SVR13 Windows PowerShell: An Automation Toolbox for Building Solutions That Span Small Businesses, Enterprises and Cloud Services Kenneth Hansen, Program Manager Narayanan Lakshmanan, Developer Microsoft Corporation
Different Admin Environments ….com Ops Fabrikam Enterprises Contoso.com Datacenter X Finance HR Sales Purchase ACME.com Datacenter Y ….com NK App user Exchange Labs
Key Trends and Implied Needs IT Infrastructure trends with material implications for management Growing Complexity Admin Base not Keeping Pace Smaller Pool of Talent Source: IDC Server Virtualization Forecast 2005-2012 • Consolidation suppressing physical growth, but total OS instances (i.e., physical+virtual) still growing rapidly • Broadening of IT applications (e.g., collaboration, VOIP, mobile workforce, etc.)over time • Users consumer expectations are beginning to define expectations of corporate IT Need for management to scale – multi-instance, one-to-many, automation, service enablement, etc. Source: Higher Education Research Institute Survey, UCLA Source: US Government Bureau of Labor and Statistics • Less interest in pursuing Computer Science education • Smaller echo generation as baby boomers retire • Lower skill set and experience in incoming job candidates requires designing for a less skilled target Need to simplify/streamlinemanagement – making features more accessibleto targeted administrators • Overall demand for IT resources trending up, but not keeping up with rate of server growth • Difficulty finding, training and retaining qualified IT staff • Ongoing pressure on IT to suppress labor costs (i.e., do more with less) Need to drive greater IT efficiency – enable IT department to manage many more servers with fewer staff
Management Landscape Internal Customers External Customers “Click and Run” “Click once repeat often” Admins “Install and forget” Service Operations Service Partners Engineering Support Frequency of use Population size Key considerations: • Deterministic, fool proof • Repeatable • Scalable Key considerations: • Easy to use AND Flexible • Consistent and discoverable • Fast and responsive
"I'm Conflicted" • … I can’t do it all!! • Increased Complexity of Computing Environments • Simplified Administration Experience Tailored automation that crosses islands of technology Support GUI and Command Line
How do we resolve the conflict? • Right set of Commands • Cmdlets/Scripts to manage the individual entities • Automate using Commands and Tools • Reduces operational errors, costs and boredom! • Increases consistency, availability, agility, … • Abstractions can isolate complexity • Target the right actions to the right people in the right way • Delegation and focused functionality • UI and Command-line Using the Automation Platform and Tools
PowerShell Automation Platform Shells, ISEs, GUIs, Applications • Universal: • Production scripting • Wide range of skill sets (novice to system program) • Interactive or programmatic • Execution environments • Local or remote, single or multi-machine, AsJobs, OnEvents • Many authentication mechanisms • Direct data/code access: .NET, native code, COM, WMI, ADSI, XML, ADO, WebServices, WSMAN, etc Scripting Language Automation Platform (API) Type Adapters Type Normalizers In-Proc, Local, RemoteRuntime Engines Type Normalizers In-Proc, Local, RemoteRuntime Engines In-Proc, Local, RemoteRuntime Engines Events, Jobs, Transactions, WMI, WSMan Cmdlets/Scripts Namespaces Types/Format Events, Jobs, Transactions, WMI, WSMan Events, Jobs, Transactions, WMI, WSMan Powered by a strong community
Example problem… • Problem • Assure we have the right set of features on our machines • Right set of commands • WMI cmdlets (access to system information) • Server Manager (features installed) • Automate using Commands and Tools • [Inventory] Query each machine for system information and feature status • [Report] Notify admin of any areas of concern • [Job] Update/fix of non-compliant machines Using the Automation Platform and Tools
Automation in Action(Inventory, Reports and Jobs) demo Narayanan Lakshmanan Developer Windows Management
How do we resolve the conflict? • Right set of Commands • Cmdlets/Scripts to manage the individual entities • Automate using Commands and Tools • Reduces operational errors, costs and boredom! • Increases consistency, availability, agility, … • Abstractions can isolate complexity • Target the right actions to the right people in the right way • Delegation, focused functionality • UI and Command-line Using the Automation Platform and Tools
Right Actions, Right People, Right Way • Managing Services • Sorin: (Get + Stop/Start) • Siva: (Get Only) • Managing Employees • Mir: (Everything) • Erin: (Org specific)
Customized GUI and Commandline for each Role demo Narayanan Lakshmanan Developer Windows Management
Management Stack Internal Customers External customers Interactive Cmdline Interactive Cmdline Automated management Partner Applications Web Client Rich client Integrated management service WPF application PowerShell client runtime WinRM Client Authentication Windows Auth Impersonation PowerShell server runtime Custom Endpoint CSV files to define roles IIS Host Process WinRM Plugin Customized using scripts & ACLs Authorization Mailbox CSV files for UI control mapping Store AD Element Managed Elements
"I'm Resolved" • We can handle both… • Increased Complexity of Computing Environments • Simplified Administration Experience Targeted automation with the right User Experience
YOUR FEEDBACK IS IMPORTANT TO US! Please fill out session evaluation forms online at MicrosoftPDC.com
Learn More On Channel 9 • Expand your PDC experience through Channel 9 • Explore videos, hands-on labs, sample code and demos through the new Channel 9 training courses channel9.msdn.com/learn Built by Developers for Developers….