
How to do it...
Let's start by reviewing each component of VMM 2016 and understanding the role it plays:
- VMM console: This application connects to the VMM management server to allow you to manage VMM, to centrally view and manage physical and virtual resources (for example, hosts, VMs, services, the fabric, and library resources), and to carry out tasks on a daily basis, such as VM and services deployment, monitoring, and reporting.
By using the VMM console from your desktop, you will be able to manage your private cloud without needing to remotely connect it to the VMM management server.
- VMM management server: The management server is the core of VMM. It is the server on which the Virtual Machine Manager service runs to process commands and control communications with the VMM console, the database, the library server, and the hosts.
Think of VMM management server as the heart, which means that you need to design your computer resources accordingly to accommodate such an important service.

As is the best practice for medium and enterprise production environments, keep the VMM management server on a separate cluster from the production cluster, due to its crucial importance for your private cloud.
- Database: The database server runs SQL Server and contains all of the VMM data. It plays an important role when you have a clustered VMM deployment by keeping the shared data. The best practice is to also have the SQL database in a cluster or an availability group.
- VMM library: The VMM library servers are file shares, a catalog that stores resources, such as VM templates, virtual hard drive files, ISOs, scripts, and custom resources with a .cr extension, which will all be visible and indexed by VMM and then shared among application packages, tenants, and self-service users in private clouds.
The library has been enhanced to support services and the sharing of resources.
It is a store for drivers for Bare Metal deployments, SQL data-tier apps, (SQLDAC), and web deploy packages.
In a distributed environment, you can group equivalent sets of resources and make them available in different locations by using resource groups. You can also store a resource in a storage group that will allow you to reference that group in profiles and templates rather than in a specific virtual hard disk (VHD); this is especially important when you have multiple sites and VMM will automatically select the right resource from a single reference object. This essentially enables one template that can reference an object that can be obtained from multiple locations.
You can also have application profiles and SQL profiles (answer files for configuration of the application or SQL) to support the deployment of applications and databases to a VM after the base image is deployed. Application profiles can be web applications, SQL data-tier, or a general for deploying both application types and running any scripts.
- Self-service portal: The web-based self-service portal, was removed from SC 2012. In System Center 2012 SP1/R2, App Controller was being used as a replacement to the self-service portal, however, it was also finally removed in System Center 2016.
- VMM command shell: VMM is based on PowerShell. Everything you can do on GUI, you can do by using PowerShell. VMM PowerShell extensions make available the cmdlets that perform all of the functions in VMM 2016.