Automating Administration with Windows PowerShell - M10961-IT Course Outline

(5 Days)

Overview

Course Description

Learn how with Windows PowerShell 3.0, you can remotely manage single or multiple Windows-based servers and automate day-to-day management and administration tasks.

This five day course provides students with the fundamental knowledge and skills to use Windows PowerShell 3.0 for administering and automating administration of Windows based servers. It focuses on primary Windows PowerShell command-line features and techniques, and will provide prerequisite skills supporting many different Microsoft products. This includes Windows Server, Windows Client, Exchange Server, SharePoint Server, SQL Server, System Center, and more. In keeping with that goal, this course will not focus on any one of those products, although Windows Server (which is the common platform for all of those) will serve as the example for the techniques being taught.

In this five day course you will learn to execute and monitor scripts more efficiently through more robust session connectivity, workflow capabilities, improved job scheduling, and Windows PowerShell Web Access. Learn Windows PowerShell with greater ease through improved cmdlet discovery and simplified, consistent syntax across all cmdlets. Write Windows PowerShell scripts quicker and more intuitively through the new Integrated Scripting Environment (ISE) that enables script sharing, which connects IT pros to a larger Windows PowerShell user community. Learn all this and more in this five-day Microsoft Official Course in Windows PowerShell v3.0

Audience Profile

Target Audience

This course is intended for IT Professionals already experienced in general Windows Server and Windows Client administration or already experienced in administering and supporting Application servers and services including Exchange, SharePoint, SQL etc It is broadly intended for students who want to use Windows PowerShell to automate administrative tasks from the command line, using any Microsoft or independent software vendor (ISV) product that supports Windows PowerShell manageability.

This course is not intended to be a scripting or programming course, and includes only basic coverage of scripting and programming topics. Students are not expected to have prior scripting or programming experience, and are not expected to have prior Windows PowerShell experience

Prerequisites

Prerequisites

  • Experience with Windows networking technologies and implementation.
  • Experience with Windows Server administration, maintenance, and troubleshooting.
  • Experience with Windows Client administration, maintenance, and troubleshooting
  • Students who attend this training can meet the prerequisites by obtaining equivalent knowledge and skills through practical experience as a Windows system administrator. No prerequisite courses are required.

At Course Completion

At Course Completion

After completing this course, students will be able to:

  • Describe the functionality of Windows PowerShell and use it to run and find basic commands.
  • Identify and run cmdlets for server administration.
  • Work with Windows PowerShell pipeline.
  • Describe the techniques Windows PowerShell pipeline uses.
  • Use PSProviders and PSDrives to work with other forms of storage.
  • Query system information by using WMI and CIM.
  • Work with variables, arrays, and hash tables.
  • Write basic scripts in Windows PowerShell.
  • Write advanced scripts in Windows PowerShell.
  • Administer remote computers.
  • Use background jobs and scheduled jobs.
  • Use advanced Windows PowerShell techniques.

Course Outline

Course Content

Module 1: Getting Started with Windows PowerShell

In this module students will learn a bit about PowerShell’s purpose and history, and will learn the basics of using the shell, including the help system, command syntax, command discovery and more.

  • Overview and Background
  • Finding and Running Commands

Module 2: Working with the Pipeline

In this module students will learn to use PowerShell’s pipeline, along with a number of new commands, to start retrieving, manipulating, and displaying data. An emphasis is placed on proper syntax and form.

  • Working with the Pipeline
  • Exporting, Importing and Converting Data
  • Filtering Objects Out of the Pipeline
  • Enumerating Objects in the Pipeline

Module 3: Understanding How the Pipeline Works

In this module students will learn the underlying details of how commands are passed from one command to another in the pipeline. Having seen it in action, they’ll now get to see some of the theory under the hood. The emphasis will be in the ByValue and ByPropertyName techniques, with demonstrations that illustrate effective uses of each. Students will also learn techniques that can be used in lieu of pipeline binding, for when such binding is unavailable or ineffective.

  • Passing Data in the Pipeline ByValue
  • Passing Data in the Pipeline ByPropertyName

Module 4: Using PSProviders and PSDrives

In this module students will learn about PSProviders and PSDrives, and learn to use –Item commands to manipulate items within a PSDrive.

  • Understanding PSProviders and PSDrives
  • Using PSDrives

Module 5: Formatting Output

In this module students will learn to manipulate command output to create customized on-screen, text file, and hardcopy results.

  • Using Basic Formatting
  • Using Advanced Formatting
  • Redirecting Formatted Output

Module 6: Using WMI and CIM

In this module students will learn to use Windows Management Instrumentation / Common Information Model (WMI/CIM) to retrieve, and in some cases, modify management information about local and remote computers.

  • Understanding WMI/CIM
  • Querying Data with WMI/CIM
  • Making Changes with WMI/CIM

Module 7: Prepare for Scripting

In this module students will learn about pre-requisite features to writing PowerShell scripts, including variables and PowerShell’s scripting security features.

  • Using Variables
  • Scripting Security
  • Working with Alternate Credentials

Module 8: Moving From a Command to a Script to a Module

In this module students will learn to take a command that runs well in the console, and turn it into a reusable script. A number of important concepts, such as error handling, will be introduced – but not explored in extreme depth. Students will be taught enough to be “immediately effective” with these concepts, but not given an exhaustive education. The point is to get them started in an effective fashion using best practices, and to give them a basis for further independent exploration.

  • Moving From Command to Script
  • Moving From Script to Function to Module
  • Implementing Basic Error Handling
  • Using Basic Scripting Constructs
  • Further Exploration in Scripting

Module 9: Administering Remote Computers

In this module students will learn how to configure and use PowerShell Remoting.

  • Using Basic Remoting
  • Using Remote Sessions
  • Using Remoting for Delegated Administration

Module 10: Putting it All Together

In this module students will utilize much of what they’ve learned to this point in a practical, from-scratch-exercise to configure a newly-installed Server Core computer.

  • Planning the Script

Module 11: Using Background Jobs and Scheduled Job

In this module students will learn to create and manage background jobs and scheduled jobs.

  • Using Background Jobs
  • Using Scheduled Jobs

Module 12: Using Advanced PowerShell Techniques and Profiles

In this module students will learn several additional techniques and feature of Windows PowerShell.

  • Using Advanced PowerShell Techniques