System Center 2016 VMM has six components. It is important to understand the role of each component in order to have a better design and implementation.
Understanding each component for a real-world implementation
Getting ready
For small deployments, test environments, or a proof of concept, you can install all of the components in one server, but as is best practice in production environments, you should consider separating the components.
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.
How it works...
As you may have noticed, although VMM management is the core, each component is required in order to provide a better VMM experience. In addition to this, for a real-world deployment, you also need to consider implementing other System Center family components to complement your design. Every System Center component is designed to provide part of the private cloud solution. The Microsoft private cloud solution includes the implementation of VMM 2016 plus the following utilities:
- System Center 2016 Configuration Manager: This provides comprehensive configuration management for the Microsoft platform that can help users with the devices and applications they need to be productive while maintaining corporate compliance and control
- System Center 2016 Data Protection Manager: This provides unified data protection for the Windows and also VMware environment, delivering backup and restore scenarios from disk, tape, off-premise, and from the cloud
- System Center 2016 Endpoint Protection: This is built on the System Center Configuration Manager and provides threat detection of malware and exploits as part of a unified infrastructure for managing client security and compliance to simplify and improve endpoint protection
- System Center 2016 Operations Manager: This provides deep application diagnostics and infrastructure monitoring to ensure the predictable performance and availability of vital applications, and offers a comprehensive view of the datacenter, private cloud, and public clouds
- System Center 2016 Orchestrator: This provides the orchestration, integration, and automation of IT processes through the creation of runbooks to define and standardize best practices and improve operational efficiency
- System Center 2016 Service Manager: This provides flexible self-service experiences and standardized datacenter processes to integrate people, workflows, and knowledge across enterprise infrastructure and applications
There's more...
When deploying System Center, there are some other systems and configurations you
need to consider. There are some old components that have also been described here in order to help you to understand your current infrastructure before, for instance, migration to the new VMM from older versions.
Windows Azure Pack
WAP is a free solution to manage resources that integrates with System Center and Windows Server to provide a customizable self-service portal for managing services such as websites, Virtual Machines, SQL or MySQL servers, and Service Bus; it also includes capabilities for automating and integrating additional custom services. For more info see http://www.microsoft.com/en-us/server-cloud/products/windows-azure-pack/.
Service Provider Foundation
Service Provider Foundation (SPF) is provided with System Center Orchestrator, a component of System Center since 2012 SP1. Service Provider Foundation exposes an extensible OData web service that interacts with Virtual Machine Manager (VMM). It's main interface for communication between WAP, SCOM, and VMM.
Service Reporting
Service Reporting, an optional component of System Center 2012 R2, enables IT (particularly hosting providers) to create detailed views, for each customer (tenant), of the virtual machine's consumption of the resources (CPU, memory, storage, and networking). For more info see http://technet.microsoft.com/en-us/library/dn251058.aspx.
Domain controllers
Although the domain controller is not part of the System Center family and it is not a VMM component, it plays an important role in the deployment of a private cloud as VMM requires it to be installed on a domain environment.
Windows Server Update Service – WSUS
WSUS plays an important role with reference to the private cloud as it is used to update the Hyper-V hosts, library servers, or any other role for compliance and remediation.
System Center App Controller
The App Controller provides a self-service experience through a web portal that can help you easily configure, deploy, and manage VMs and services across private, third-party hosters (that support Microsoft Hyper-V) and public clouds (Azure). For example, moving a VM from a private cloud to Azure, creating checkpoints, granting access, scaling out deployed services, and so on.
The App Controller has been used as a replacement of the VMM self-service portal since SC 2012 SP1. It was deprecated in the SC 2012 R2 time and finally removed in SC 2016. As noted above, you should plan Azure Pack deployment instead of current App Controller instance.
Microsoft Azure Stack
Azure Stack is a hybrid-cloud platform, bringing core public Azure services to your datacenter. These services are mostly dedicated to Azure PaaS and IaaS and help you out with building unified ecosystems between private and public clouds. Azure Stack is delivered as an integrated system, with software installed on the hardware built by partners like HPE and Cisco. Azure's familiar pay-as-you-go model is mainly being used in Azure Stack and you can stretch the same subscriptions out for both Azure and Azure Stack clouds. If you have unstable or restricted connection to Azure, you may choose to use Azure Stack in disconnected mode with a capacity model pricing package - a fixed fee annual subscription based on the number of physical cores. It's important to note that you can manage WAP VMs from Azure Stack using a special connector, though it's under review and not recommended for production use: https://aka.ms/wapconnectorazurestackdlc.
System Center components scenarios
The following table will guide you through choosing which System Center component is necessary as per your deployment:
You should also check Service Management Automation, which will enable Orchestrated offline VM Patching. For more info see http://blogs.technet.com/b/privatecloud/archive/2013/12/07/orchestrated-vm-patching.aspx.