The ultimate VDI deployment guide with VMware vSphere 6.5 and Horizon View 7.3 - From scratch
Summary:
This is a 12 part series, for designing, installing, and configuring VMware vSphere 6.5 (6.7) and Horizon View 7.3 components.
Guide parts
- VDI-LAB-2018 - Part 1 - Network design and configuration
- VDI-LAB-2018 - Part 2 - Pfsense vRouter configuration
- VDI-LAB-2018 - Part 3 - Deploying and configuring VCSA 6.5
- VDI-LAB-2018 - Part 4 - Creating a Windows server 2016 template
- VDI-LAB-2018 - Part 5 - Configuring a Domain Controller server with AD, DNS and DHCP services
- VDI-LAB-2018 - Part 6 - Installing and configuring SQL Server 2017
- VDI-LAB-2018 - Part 7 - Installing and configuring vCenter server 6.5
- VDI-LAB-2018 - Part 8 - Installing Horizon 7 Composer
- VDI-LAB-2018 - Part 9 - Installing and configuring Horizon 7 Connection Server
- VDI-LAB-2018 - Part 10 - Signed Certificate for Horizon Connection Server
- VDI-LAB-2018 - Part 11 - Create a Windows 10 Golden Image
- VDI-LAB-2018 - Part 12 - Deploying a linked-clone desktop pool
Introduction
This is a step-by-step guide to deploy VDI from scratch, using VMware vSphere and Horizon. While it is for VMware general purposes, you can also run tests for Login VSI. There are several modules (post) for this series, so you can use/start it at your convenience.
This guide can be divided into four major parts: The initial LAB, vSphere infrastructure, Horizon infrastructure, and desktop infrastructure. Each part contains ESXi, VM, Windows servers, and applications, including its installation and configuration.
[Update] Although I wrote this guide a couple of years ago, it is still valid for the current versions of VMware, Horizon, and Windows servers.
The overall structure as below:
Prerequisites
Two physical ESXi server
Client PC
Software/ISO files:
- ESXi 6.5 / 6.7
- pfSense 2.4.2 (vRouter)
- VCSA 6.5 / 6.7
- SQL Server 2017
- vCenter Server 6.5 / 6.7
- Horizon View 7.3
- Windows Server 2016
- Windows 10 (x64)
- MS office 2016 (x86)
Edits
I planed this guide for vSphere 6.5 and Horizon 7, but it took longer than I expected (Several reasons, but mostly because I've been a bit busy recently). In the end, vSphere 6.7 come out before I finish it, and I decided to edit/update some of this series parts to fit the new version on it. Honestly, not many changes (that could affect the deployment and configurations of this lab) were made in vSphere 6.7. The vCenter installation is almost the same. On the other hand, what is changing is the growth of VCSA against vCenter Windows-based, so try to move to VCSA if you can, and let's say goodbye to the old vCenter Windows-based, which is almost certain that will be discontinued for the next vSphere (7?) version.
Disclaimer
I have been working for storage companies, so I do have the resources to test and “play around" with enterprise servers, storage, and software. However, I try to keep the information as simple as possible so everyone can use it from a home-lab to real-life VDI deployment. This deployment is based on my experience and knowledge. Also, I have been collecting a lot of information around the web, I always have thought that if a great reference has been made about a specific topic, is better to use it, instead of duplicate it. Nevertheless, I like to keep my methodology, structure, and organization... at least, most of the time.
Storage agnostic
I don’t plan to provide any storage configuration for external arrays or other solutions. Storage is probably the hardest decision for a real VDI deployment, but once is selected and you are sure IOPS and capacity are enough, is all set. The virtual infrastructure, on the other hand, will become the hardest part of the whole solution, especially if you don’t have previous and essential data center infrastructure experience. For storage, want to mention that I used two LUNs for testing 150 VMs. For any deployment, I will recommend no more than 100 VMs per LUN, but of course, this is not a rule of thumb, VMware suggests no more than 500 VMs per LUN.
Home lab? Don’t have external storage? Any old PC working as a NAS will do, or merely reduce the capacity sizing from the (Client PC) local drive.