Manage Virtual Machines and Containers
This section covers how to work with virtual machines (VMs) and containers in a Windows Server hybrid environment. Virtual machines emulate complete computers with their own operating systems, while containers package applications with their dependencies to run consistently across different environments. Both are essential for modern IT infrastructure, and Azure provides tools to manage them whether they run on-premises or in the cloud.
Manage Hyper-V and Guest Virtual Machines
Hyper-V is Microsoft's virtualization platform that lets a single physical server run multiple virtual machines. Each virtual machine acts like a separate computer with its own processor, memory, and disk space, but they all share the physical hardware of the host server. Administrators create VMs through Hyper-V Manager or PowerShell commands, and they can adjust resources like RAM and CPU cores while the VM is running or when it is stopped.
Guest virtual machines running inside Hyper-V need the same care as physical servers: they need operating system updates, security patches, and backup strategies. Hyper-V provides tools like checkpoints (formerly called snapshots) that capture the VM's state at a point in time, which helps with testing changes or recovering from problems. Administrators should understand the difference between production checkpoints, which save the VM in a consistent state, and standard checkpoints, which are faster but may not capture all data in memory.
When managing multiple VMs, administrators use Hyper-V Replica to copy VMs to another server for disaster recovery, and they configure virtual switches so VMs can communicate with each other and the network. Hyper-V also integrates with Azure through Azure Site Recovery, which extends replication to Azure for long-term disaster recovery in the cloud.
Create and Manage Containers
Containers are different from virtual machines because they share the host operating system's kernel, making them lighter and faster to start. Docker is the most common container platform, and Windows Server can run both Windows containers and Linux containers. Windows containers work best for .NET applications and other Windows-based workloads, while Linux containers handle cross-platform applications.
To create a container, you first build a container image that includes your application code and its dependencies. You then run the image as a container instance. Images are stored in registries like Docker Hub or Azure Container Registry, and you can version them using tags. Administrators use commands like docker build, docker run, and docker ps to work with containers through the command line.
Container orchestration becomes important when running many containers across multiple servers. Kubernetes is the leading orchestration platform, and Azure Kubernetes Service (AKS) provides a managed Kubernetes service in Azure. For simpler workloads, Windows Server includes Docker Swarm mode for basic orchestration. Managing containers involves monitoring their health, logging their output, and handling updates by pulling new images and recreating containers.
Manage Windows Server Virtual Machines on Azure
Azure provides virtual machines through Azure Virtual Machines, and these VMs run in Microsoft's data centers rather than on-premises. Administrators can create Windows Server VMs through the Azure portal, Azure CLI, or PowerShell, and they choose VM sizes based on the compute, memory, and storage needs of their workloads. Azure manages the physical hardware, power, and networking infrastructure, while administrators manage the operating system inside the VM.
Azure VMs integrate with Azure services for backup, disaster recovery, and monitoring. Azure Backup protects VM data by taking regular snapshots and storing them in Azure Recovery Services vaults. Azure Site Recovery can orchestrate failover of on-premises VMs to Azure or between Azure regions. Azure Monitor collects logs and metrics from VMs to help administrators spot problems before they affect users.
Managing hybrid VMs means connecting on-premises Hyper-V VMs to Azure for management and protection. Azure Arc extends Azure management capabilities to servers running outside Azure, so administrators can apply Azure policies and updates to on-premises Windows Server VMs from a single console. This hybrid approach lets organizations keep sensitive workloads on-premises while using Azure for backup, disaster recovery, and scaling.