VMM 2008 Architecture and Port Usage
Whilst an understanding of the architecture of VMM 2008 is not essential in order to be able to use this technology, having basic understanding of how the system works can be useful, especially when attempting to diagnose problems. Of particular significance, especially in distributed configurations, are the different transport ports used by the different VMM components in order to communicate both with each other and with host systems.
This chapter of VMM 2008 Essentials aims to provide a high level overview of the architecture of VMM 2008, together with a summary of the different ports used by VMM 2008 to communicate. The latter information will be of considerable use when configuring firewalls to allow remote administration of virtual machines using VMM 2008.
VMM 2008 Architecture Diagram
VMM 2008 consists of a number of different components either installed on the same local sever, or distributed over multiple servers. The components communicate through the core VMM Server component using a variety of different communications protocols. In addition to the inter-component communication, the VMM Server also communicates with the servers which host the virtual machines. The following diagram provides a high level overview of the VMM 2008 architecture and communications protocols.
The VMM 2008 Client Layer
The VMM Administrator Console, VMM Self-Service portal, Systems Center OpsMgr and Windows PowerShell cmdlets all reside in the Client Layer of the VMM 2008 architecture. These components are built on top of Windows PowerShell. As such, any tasks performed within these interfaces are translated to PowerShell command scripts and executed. The common theme amongst these components is that they all provide user interfaces for the management and monitoring of virtual machine hosts, virtual machines and the overall virtualization infrastructure.
The components on the VMM 2008 Client Layer communicate with the VMM Server located in the Engine Layer using the Windows Communication Foundation (WCF) messaging platform.
The VMM 2008 Engine Layer
The VMM 2008 Engine Layer contains both the Virtual Machine Manager Server (VMM Server) component and the SQL Server database. As previously described in the chapter entitled VMM 2008 Components, the VMM Server is the central component of the VMM architecture. All the other VMM components communicate with each other through the VMM Server. In addition, the VMM Server acts as the default VMM Library Server and provides an interface to the SQL Server database where configuration information about the virtualization infrastructure is stored.
A variety of protocols are used by VMM Server to communicate with the various other components in the architecture. As previously covered, WCF is used to communicate with the components on the client layer.
The VMM 2008 Managed Layer
The VMM 2008 Managed Layer contains the servers which host the virtual machines, the P2V source servers and the VMM Server Library. Communication with managed Microsoft Virtual Server and Hyper-V hosts and the VMM Library Server is performed using WinRM. Transport between the VMM Server and P2V Source hosts is performed using the Distributed Component Object Model (DCOM). When communicating with SQL Server, ADO.NET is used. Finally, when managing VMware ESX Server based hosts, HTTPS is used.
VMM 2008 Port Usage
As outlined in the VMM 2008 Components chapter of this book, VMM 2008 consists of a number of different components which all communicate, both with each other and with virtualization hosts. This communication takes place using standard network transport ports. Because the VMM components may be distributed over a multiple systems, it is helpful to have an understanding of which ports are used, especially in terms of firewall configuration. An overview of these ports is provided in the following table:
</tr>
Comminication Description |
Port |
---|---|
VMM Administrator Console to VMM Server (WCF) | 8100 |
VMM Administrator Console to VMM Self-Service Portal (WCF) | 80 |
VMM Server to VMM Agent - Control (WinRM)) | 80 |
VMM Server to VMM Agent - Data (BITS) | 443 |
VMM Server to SQL Database (HTTP) | 1433 |
VMM Server to source of P2V image (WinRM) | 135 |
VMM Library to hosts (BITS) | 80 |
VM Host to VM Host (BITS) | 80 |
Browser to Microsoft Virtual Server hosts via Self-Service Portal (VMRC) | 5900 |
Browser to Microsoft Hyper-V hosts via Self-Service Portal (RDP) | 3389 |
VMM Administrator Console to System Center OpsMgr (HTTP) | 80 |
Virtual Machine Connection Tool | 2719 |
VMM to VMware ESX VI Web Services API (HTTPS) | 80 |