Book Image

Windows Server 2019 Automation with PowerShell Cookbook - Third Edition

By : Thomas Lee
Book Image

Windows Server 2019 Automation with PowerShell Cookbook - Third Edition

By: Thomas Lee

Overview of this book

Windows Server 2019 is the latest version of Microsoft’s flagship server operating system. It also comes with PowerShell Version 5.1 and offers a number of additional features that IT professionals will find useful. This book is designed to help you learn how to use PowerShell and manage the core roles, features, and services of Windows Server 2019. You will begin by creating a PowerShell Administrative Environment that features updated versions of PowerShell, the Windows Management Framework, .NET Framework, and third-party modules. Next, you will learn to use PowerShell to set up and configure Windows Server 2019 networking and understand how to manage objects in the Active Directory (AD) environment. The book will also guide you in setting up a host to utilize containers and deploying containers. Further along, you will be able to implement different mechanisms to achieve Desired State Configuration. The book will then get you up to speed with Azure infrastructure, in addition to helping you get to grips with setting up virtual machines (VMs), websites, and file share on Azure. In the concluding chapters, you will be able to deploy some powerful tools to diagnose and resolve issues with Windows Server 2019. By the end of this book, you will be equipped with a number of useful tips and tricks to automate your Windows environment with PowerShell.
Table of Contents (19 chapters)
Windows Server 2019 Automation with PowerShell Cookbook Third Edition
Foreword
Contributors
Preface
Index

Managing VM state


Managing the VM state involves stopping and starting, or pausing and resuming, a VM. You can also save and restore, as shown in this recipe.

Getting ready

This recipe uses the PSDirect VM created in the Creating a virtual machine recipe. This recipe assumes the PSDirect VM is stopped when you start this recipe. If this VM is running, then first stop it using the Stop-VM cmdlet.

How to do it...

  1. Get the VM's state to check if whether is off:

    Stop-VM -Name PSDirect -WarningAction SilentlyContinue
    Get-VM -Name PSDirect
  2. Start the VM, get its status, then wait until the VM has an IP address assigned and the networking stack is working, then examine the VM's state:

    Start-VM -VMName PSDirect
    Wait-VM  -VMName PSDirect -For IPAddress
    Get-VM   -VMName PSDirect
  3. Suspend and view the PSDirect VM:

    Suspend-VM -VMName PSDirect
    Get-VM -VMName PSDirect
  4. Resume the VM:

    Resume-VM -VMName PSDirect
    Get-VM -VMName PSDirect
  5. Save the VM and check its status:

    Save-VM -VMName PSDirect
    Get-VM -VMName PSDirect
  6. Resume...