M10962C: Advanced Automated Administration With Windows PowerShell

3 day live online course = $1620 USD

Overview

This is a three-day course that will teach students how to automate administrative tasks using Windows PowerShell 5.1. Students will learn core scripting skills such as creating advanced functions, writing controller scripts, and handling script errors. Students will learn how to works with Windows PowerShell Workflow, the REST API and XML and JSON formatted data files, Students will also learn how to use new administration tools such Desired State Configuration (DSC) and Just Enough Administration (JEA) to configure and secure servers. 

Audience

This course is intended for IT professionals who are experienced in general Windows Server and Windows Client administration. Students should have a foundational knowledge of Windows PowerShell, which they can obtain by taking course 10961C: Automating Administration with Windows PowerShell. 

In addition, this course provides scripting guidance for developers who support development environments and deployment processes.

Objectives

After completing this course, students will be able to:

  •  Create advanced functions.
  • Use Microsoft .NET Framework and REST API in Windows PowerShell.
  • Write controller scripts.
  • Handle script errors.
  • Use XML, JSON, and custom formatted data.
  • Enhance server management with Desired State Configuration and Just Enough Administration.
  • Analyze and debug scripts
  • Understand Windows PowerShell workflow.

Course Outline

There are eight modules (chapters with lessons and lab exercises) in this course.

Module 1Creating advanced functions
ObjectivesThis module explains how to parameterize a command into an advanced function.
Lessons• Converting a command into an advanced function
• Creating a script module
• Defining parameter attributes and input validation
• Writing functions that accept pipeline input
• Producing complex pipeline output
• Documenting functions by using comment-based help
• Supporting –WhatIf and -Confirm
LabsLab : Converting a command into an advanced function
• Converting a command into an advanced function
Lab : Creating a script module
• Creating a script module
Lab : Defining parameter attributes and input validation
• Defining parameter attributes and input validation
Lab : Writing functions that accept pipeline input
• Writing functions that accept pipeline input
Lab : Producing complex pipeline output
• Producing complex pipeline output
Lab : Documenting functions by using comment-based help
• Documenting functions by using comment-based help
Lab : Supporting –WhatIf and -Confirm
• Supporting –WhatIf and -Confirm
CompletionAfter completing this module, students will be able to:
• Convert a command into an advanced function.
• Create a script module.
• Define parameter attributes and input validation.
• Write functions that accept pipeline input.
• Produce complex pipeline output.
• Document functions by using comment-based help.
• Support -WhatIf and -Confirm.
Module 2Using Microsoft .NET Framework and REST API in Windows PowerShell
ObjectivesThis module explains how to use Microsoft .NET Framework and REST API to supplement functionality that Windows PowerShell commands provide.
Lessons• Using Microsoft .NET Framework in Windows PowerShell
• Using REST API in Windows PowerShell
LabsLab : Using Microsoft .NET Framework in Windows PowerShell
• Using Microsoft .NET Framework in Windows PowerShell
Lab : Using REST API in Windows PowerShell
• Using REST API in Windows PowerShell
CompletionAfter completing this module, students will be able to:
• Use Microsoft .NET Framework in Windows PowerShell.
• Use REST API in Windows PowerShell.
Module 3Writing controller scripts
ObjectivesThis module explains how to combine advanced functions that perform a specific task and a controller script that provides a user interface or automates a business process.
Lessons• Introducing controller scripts
• Writing controller scripts that display a user interface
• Writing controller scripts that produce reports
LabsLab : Writing controller scripts
• Writing controller scripts that display a user interface
• Writing controller scripts that implement a text-based menu
Lab : Writing controller scripts that produce HTML reports
• Writing functions to be used in the controller script
• Writing a controller script that produces HTML reports
CompletionAfter completing this module, students will be able to: 
• Describe controller scripts.
• Write controller scripts that display a user interface.
• Write controller scripts that produce reports.
Module 4Handling script errors
ObjectivesThis module explains how to perform basic error handling in scripts.
Lessons• Understanding error handling
• Handling errors and timeouts in a script
LabsLab : Handling errors in a script
• Handling errors in a script
CompletionAfter completing this module, students will be able to:
• Describe error handling.
• Handle errors and timeouts in a script.
Module 5Using XML, JSON, and custom-formatted data
ObjectivesThis module explains how to read, manipulate, and write data in XML and JSON format.
Lessons• Reading, manipulating, and writing XML-formatted data
• Reading, manipulating, and writing JSON-formatted data
• Reading and manipulating custom-formatted data
LabsLab : Reading, manipulating, and writing XML-formatted data
• Testing the provided tools
• Updating an XML inventory document
CompletionAfter completing this module, students will be able to:
• Read, manipulate, and write XML-formatted data.
• Read, manipulate, and write JSON-formatted data.
• Read and manipulate custom-formatted data.
Module 6Enhancing server management with Desired State Configuration and Just Enough Administration
ObjectivesThis module explains how to write Desired State Configuration (DSC) configuration files, deploy those files to servers, and monitor servers’ configurations. This module also explains how to restrict administrative access with Just Enough Administration (JEA).
Lessons• Understanding Desired State Configuration
• Creating and deploying a DSC configuration
• Implementing Just Enough Administration
LabsLab : Creating and deploying a DSC configuration
• Creating and deploying a DSC configuration
Lab : Configuring and using JEA
• Configuring and using JEA
CompletionAfter completing this module, students will be able to:
• Understand DSC.
• Create and deploy a DSC configuration.
• Implement JEA.
Module 7Analyzing and debugging scripts
ObjectivesThis module explains how to use native Windows PowerShell features to analyze and debug existing scripts.
Lessons• Debugging in Windows PowerShell
• Analyzing and debugging an existing script
LabsLab : Analyzing and debugging an existing script
• Analyzing and debugging an existing script
CompletionAfter completing this module, students will be able to:
• Debug in Windows PowerShell.
• Analyze and debug an existing script.
Module 8Understanding Windows PowerShell Workflow
ObjectivesThis module explains the features of the Windows PowerShell Workflow technology.
Lessons• Understanding Windows PowerShell Workflow
LabsLab : Creating and running a Windows PowerShell Workflow
• Creating and running a Windows PowerShell Workflow
CompletionAfter completing this module, students will be able to describe and implement the Workflow feature of Windows PowerShell.

Reference: Advanced Automated Administration With Windows PowerShell