PowerShell 3.0 Advanced Administration Handbook comes with a set of real-world scenarios and detailed scripts that will help you get started with PowerShell and learn what PowerShell is, how to write the syntax and build your scripts, and how to use and integrate PowerShell with different technologies, products, and tools.
This handbook starts with the essential topics of PowerShell, and then introduces the new features in PowerShell 3.0. The book then goes through building PowerShell scripts, functions, and developing extensions such as snap-ins and modules, and continues with detailed examples showing the usage of PowerShell with different technologies and products to give you an idea of PowerShell usage in the real world.
What this book covers
Chapter 1, Getting Started with PowerShell, introduces us to PowerShell, which is built based on .NET and is an object-based shell and scripting language. This chapter shows us how we can make use of PowerShell’s integration with COM, WMI, and ADSI technologies alongside its tight integration with .NET. Indeed, PowerShell is the only technology that enables you to create and work with objects from these various technologies in one environment.
Chapter 2, Developing Snap-ins for PowerShell, explains the use of snap-ins that are compiled into assemblies, when released as a program for third-party users. In this chapter you will see how you can extend Windows PowerShell by writing your own snap-ins. These may contain cmdlets and providers too. The author can also encrypt based on .NET code obfuscation to protect their source code. Thus the authors of programs need not worry about their snap-ins decompiling the source code.
Chapter 3, Using PowerShell Remoting, shows us how PowerShell remoting enables management of computers from a remote location. Remoting is built based on Windows remote management (WinRM). WinRM is Microsoft’s implementation of the WS-Management protocol.
Chapter 4, Extending Windows PowerShell, introduces us to a very import feature in Windows PowerShell 3.0—modules. You can load most of the existing snap-ins as a module, which means you don’t need to have administrator privileges to load a new snap-in. You can simply place it in any folder, access it, and tell PowerShell where to find it.
Chapter 5, Managing Core Infrastructure with PowerShell, demonstrates how PowerShell can be used to replace the GUI to perform different administration tasks on Windows Server, especially the installation of the server core.
Chapter 6, Managing Active Directory with PowerShell, introduces us to the Active Directory module for Windows PowerShell, which consolidates a group of cmdlets. The Active Directory module for Windows PowerShell provides a centralized experience for administering your directory services. In this chapter you will look at the Active Directory-related cmdlets, the Active Directory server roles, and how you can manage the Active Directory using PowerShell.
Chapter 7, Managing the Server with PowerShell, explains how you can manage your server with great flexibility using PowerShell, which is built into Windows Server 2012. Many PowerShell cmdlets exist to let you perform several of the key administrative tasks you may need to do on a daily basis, including installing features for your Windows Server 2012, managing networking, managing Group Policy, managing IIS, managing DNS server, managing Hyper-V and AppLocker, and many others.
Chapter 8, Managing Unified Communication Environments with PowerShell, introduces us to Windows PowerShell modules for Microsoft Exchange Server, Lync Server, and Office 365, and explains how it can be utilized for a better and easier administration and management.
Chapter 9, Managing Collaboration and Data Platforms with PowerShell, provides recipes on how to deal with Microsoft SQL Server, Microsoft SharePoint Server, and SharePoint Online.
Chapter 10, Managing Microsoft Desktop Virtualization with PowerShell, provides guidance and scripts on how to build end-to-end Desktop Virtualization scenarios that are session- and virtual-machine-based, using Windows PowerShell.
Chapter 11, Managing Microsoft Cloud Platform with PowerShell, tackles the Microsoft cloud platform with Windows Azure and explains how to use Windows PowerShell to automate Windows and SQL Azure tasks. It also provides ways to overcome the technical limitations of using Windows Azure Management Portal.
Chapter 12, Integrating Windows PowerShell and System Center Orchestrator, describes how PowerShell can be used in the real world in combination with Microsoft System Center Orchestrator to build an IT Process Automation standard framework