For the overall introduction to Horizon Cloud, see Introduction to Horizon Cloud and Cloud-Connected Pods. For the suggested workflow of activities for a pod in Microsoft Azure, see Suggested Workflow for When Your Very First Cloud-Connected Pod is from Deploying into Microsoft Azure.
Horizon Cloud Pod Deployed in Microsoft Azure
You connect your Microsoft Azure subscription to Horizon Cloud to manage and deliver VDI desktops and RDSH-served desktops and applications. Setting up the environment involves deploying the pod into your Microsoft Azure capacity.
To do multi-tenancy, you would set up multiple Horizon Cloud customer account records. The Horizon Cloud customer account record, which is created when you registered with VMware to use the Horizon Cloud Service and is associated with your My VMware credentials, is more like a tenant. A Horizon Cloud customer account record is isolated from other Horizon Cloud customer account records. A single customer account record maps to multiple pods, and when someone uses any of the account credentials associated with that customer account record to log in to the Administration Console, the console reflects all of the pods that are mapped to that customer account record.
The pod deployment process automatically creates a set of resource groups in your Microsoft Azure capacity. Resource groups are used to organize the assets that the environment needs and creates, such as:
- VMs for the pod's manager instance (multiple VMs for a pod that is enabled for high availability)
- VMs for the Unified Access Gateway instances and their load balancers
- VMs for the master RDS-enabled server images
- VMs for the master VDI desktop images
- VMs for the assignable (published) images that are made from the master images
- VMs for the RDSH farms that provide the RDSH desktops and remote applications
- VMs for the VDI desktops
- Additional assets that the VMs and the environment require for supported operations, such as network interfaces, IP addresses, disks, key vaults, Microsoft Azure Database for PostgreSQL server resource, and various items along those lines. The pod deployment process can create the required virtual subnets also, using the values you specify in the deployment wizard.
All of the resource groups created by Horizon Cloud in your Microsoft Azure environment are named using the prefix
- Manual creation of master images.
- Modifying farm and VDI desktop assignment network security groups as need to configure ports for your business circumstances.
Horizon Cloud automatically configures the pod-related resources to ensure the pod operates as designed. Do not manually change settings for the resources that are automatically created and deployed during workflows, assigned IP addresses or names, and so on. Do not manually power off VM instances directly using the Microsoft Azure portal. Do not manually delete the manager VM or Unified Access Gateway VMs. Do not manually delete NICs from the resource groups, especially from the Unified Access Gateway resource groups. If you change the generated settings or manually power off VMs or manually delete VMs or NICs that were created by the pod deployer, unpredictable results can occur and pod operations and pod upgrades might encounter failures.
The following diagram illustrates a deployed pod that is enabled for high availability and has both the external and internal types of Unified Access Gateway configurations. In this diagram,
RG means resource group. The Unified Access Gateway instances in the external Unified Access Gateway configuration have NICs on the demilitarized (DMZ) network. When your pod has the external Unified Access Gateway configuration, your end users located in the Internet, outside your corporate network, can access their pod-provisioned virtual desktops and applications through that configuration. When your pod has the internal Unified Access Gateway configuration, your end users located in your intranet, inside your corporate network, can make trusted connections to their pod-provisioned virtual desktops and applications through that gateway. The pod deployment wizard provides the option to deploy the pod with both configurations up front. Alternatively, you can deploy the pod with only one gateway configuration or with none at all, and edit the deployed pod to add the non-chosen gateway configuration later.
You can also choose not to enable the high availability option in the deployment wizard, and then edit the deployed pod later to enable high availability on it. A new pod is always deployed with the Azure Postgres database and pod load balancer, even when you do not enable the high availability option in the wizard. Having those assets available allows for easy enablement of high availability on an already deployed pod. The second pod manager VM is only deployed when high availability is enabled on the pod.
Subscriptions and Number of Pods
Be mindful about the number of pods you deploy into a single subscription, especially if you plan to have each pod running at a large scale. Even though multiple pods can be deployed into a single Microsoft Azure subscription, whether all into one region or spread across multiple regions, Microsoft Azure imposes certain limits within a single subscription. Because of those Microsoft Azure limits, deployment of a large number of pods into a single subscription increases the likelihood of hitting those limits. Numerous variables, and combinations of those variables, are involved in reaching those limits, such as the number of pods, the number of farms and assignments within each pod, the number of servers within each pod, the number of desktops within each assignment, and so on.
If you plan to have pods running at a large scale, consider adopting the approach of having multiple subscriptions with those multiple subscriptions under one Microsoft Azure account. Microsoft Azure customers use this approach, and often prefer it, because it provides some benefits for ongoing management of the subscriptions. Using this approach, you would deploy a single pod per subscription, roll up those subscriptions in a single "master" account, and avoid the chances of hitting the Microsoft Azure limits that are imposed on a single subscription.
When You Have Existing Pods That Were Deployed Prior to This Current Horizon Cloud Release
As described in Updating Your Horizon Cloud Pod, VMware updates the Horizon Cloud software components periodically to include new features and bug fixes. The in-cloud management environment is updated on a weekly basis and the pod software components are typically updated on a roughly quarterly basis. The Horizon Cloud Service documentation page provides access to versioned Release Notes where the versions correspond to those quarterly releases, such as version 2.1 for the September 2019 release.
When you deploy a new pod, that pod is always created at the manifest version that is the latest one for the current in-production service environment. As an example, if you created a new pod in August 2019, that pod was deployed with software components that were current for Horizon Cloud as of that date. Depending on how long you have been using your Horizon Cloud environment, on a given calendar date, your overall Horizon Cloud environment might include some pods that are at the latest released version and some that are at an earlier released version which are not yet upgraded to the latest manifest.
Microsoft Azure Terminology and References
The VMware Horizon Cloud Service on Microsoft Azure product documentation uses the applicable Microsoft Azure terminology as appropriate in the descriptions and task steps of the VMware Horizon Cloud Service on Microsoft Azure workflows. If the Microsoft Azure terminology is unfamiliar to you, you can use the following applicable references in the Microsoft Azure product documentation to learn more.
|Useful Microsoft Azure References||Description|
|Microsoft Azure glossary: A dictionary of cloud terminology on the Azure platform||Use this glossary to learn the meaning of terms as used in the Microsoft Azure cloud context, for terms such as load balancer, region, resource group, subscription, virtual machine, and virtual network (vnet).
Note: The Microsoft Azure glossary does not include the term service principal because the service principal is a resource automatically created in Microsoft Azure when an application registration is created in Microsoft Azure. The reason why you create an application registration in your Microsoft Azure subscription is because that is the way you authorize Horizon Cloud as an application to use your Microsoft Azure capacity. The application registration and its companion service principal enable the Horizon Cloud cloud service acting as an application to access resources in your Microsoft Azure subscription. Use the next reference below to learn about applications and service principals that can access resources in Microsoft Azure.
|Use portal to create an Azure Active Directory application and service principal that can access resources||
Use this article to learn about the relationship between an application and a service principal in a Microsoft Azure cloud.
|Azure Resource Manager overview||
Use this article to learn about the relationships between resources, resource groups, and the Resource Manager in Microsoft Azure.
Use this article to learn about the Azure Virtual Network (VNet) service in Microsoft Azure. See also Azure Virtual Network FAQs.
|Azure VNet Peering||
Use this article to learn about virtual network peering in Microsoft Azure.
|Microsoft Azure ExpressRoute Overview||
Use this article to learn about Microsoft Azure ExpressRoute and how you can use it to establish connections between your on-premises networks, Microsoft Azure, and your Horizon Cloud pods.
Use these articles to learn about how to configure VPNs in Microsoft Azure.
|What is Azure Load Balancer?||
Use this article to learn about the Azure load balancers that are deployed for a pod: the load balancer for the pod manager VMs and the load balancers for the gateway configurations.
|What is Azure Database for PostgreSQL?||Use this article to learn about the Microsoft Azure Database for PostgreSQL service.|