M55626A - Advanced Administration and Automation with PowerShell

Duration

3 Day

Level

300 - Advanced

Vendor

Microsoft PowerShell

Legacy MOC Code

M10962C

Course
Overview

This is a three-day course that will teach students how to automate administrative tasks using Windows PowerShell. 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
Profile

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.
 
In addition, this course provides scripting guidance for developers who support development environments and deployment processes.
 

Course
Outline

Module 1: Creating advanced functions

This 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


Labs : 

  • 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


Module 2: Using Microsoft .NET Framework and REST API in Windows PowerShell

This 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


Labs: 

  • Using Microsoft .NET Framework in Windows PowerShell
  • Using REST API in Windows PowerShell


Module 3: Writing controller scripts

This 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

Labs: 

  • Writing controller scripts that display a user interface
  • Writing controller scripts that implement a text-based menu
  • Writing functions to be used in the controller script
  • Writing a controller script that produces HTML reports


Module 4: Handling script errors

This module explains how to perform basic error handling in scripts.

Lessons

  • Understanding error handling
  • Handling errors and timeouts in a script


Lab: Handling errors in a script

Module 5: Using XML, JSON, and custom-formatted data

This 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


Lab : Reading, manipulating, and writing XML-formatted data

Module 6: Enhancing server management with Desired State Configuration and Just Enough Administration

This module explains how to write Desired State Configuration (DSC) configuration files, deploy those files to servers, and monitor server’s 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


Labs: 

  • Creating and deploying a DSC configuration
  • Configuring and using JEA


Module 7: Analyzing and debugging scripts

This 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


Lab: Analyzing and debugging an existing script

Module 8: Understanding Windows PowerShell Workflow

This module explains the features of the Windows PowerShell Workflow technology.

Lessons

  • Understanding Windows PowerShell Workflow


Lab : Creating and running a Windows PowerShell Workflow