From the course: VMware Horizon View 7.5 Essential Training

Horizon Architecture introduction

of different shapes and sizes. There's a lot of different options, and it could be any one of those options. They all basically do the same thing. It's providing a physical piece of hardware for the user to actually interact with. And so, when the user launches their Horizon Client, whatever type of Horizon Client it is, they're going to connect up to the View Connection Server, and the View Connection Server is the heart and soul of View. This is at the center of everything. So the View Connection Server is responsible for a few different things. Number one, it is responsible for authentication. So it's going to actually authenticate against an Active Directory domain. So my user connects to the View Connection Server, they'll put in their Active Directory credentials, and they will authenticate against Active Directory. So that's number one thing, and the View Connection Server does its authentication. So now the user has successfully authenticated. They've successfully logged in. Another key function of the View Connection Server is entitlement. The View Connection Server is now going to say, "Okay, Rick is logged in. What am I going to show Rick? Which pools of desktops? that's part of the information systems pool, or he doesn't get to take a desktop that's part of the back office pool. So there's different pools of desktops for different groups of users. And that way, I can compartmentalize things a little bit. I can give one set of applications to one group of desktops, a different set of applications to a different group. Different images to different teams. That's entitlements. So the View Connection Server is going to be configured with these entitlements based on Active Directory security group membership. It will present certain pools of desktops or certain pools of applications to these users as they log in. So now, my user is logged in, they've authenticated, and my user is presented with a list of pools that they are entitled to, and the user will now choose one of those pools and say, "Hey, I want a desktop from the accounting pool." Great. That request hits the View Connection Server, and now it's going to do one of its other major functions. and now it's going to do one of its other major functions. It's going to perform connection brokering. So basically, think of the View Connection Server as like a matchmaker. The client has requested a match. It wants to be connected with a virtual desktop. The connection server has the job of actually reaching out to the Horizon Agent on a virtual desktop that is part of the appropriate pool. So let's say that the accounting pool has a hundred virtual desktops in it. The View Connection Server is going to pick one of them, reach out to the Horizon Agent, which is special software running on that virtual machine, and say, "I've got a session that I want to establish here. You are being requested by a client. Can I establish a virtual desktop session between you and that Horizon Client?" That's the connection server making matches, connecting desktops with clients. So it's basically the match.com of our virtual desktop infrastructure. And so, once it finds a match, once it discovers a virtual desktop that can fulfill this requirement, what it does is is it sets up a display protocol session between the Horizon Client and the Horizon Agent. So here we see we've got a few different display protocols listed: Blast, PCoIP, RDP. These are all kind of doing the same thing. If I think about it, I've got a user sitting here, and we'll just draw a little smiley face. Here's my user, sitting at the physical client, right. So there's my user. They're sitting in front of a keyboard. They're sitting with their mouse and their desktop, but the stuff that they are doing is actually happening over here. That's where their virtual desktop is actually running. Their virtual desktop is a virtual machine running on some ESXi host in our data center. So as they interact with that virtual machine, as they interact with what seems to be a normal desktop to them, all the things that they do need to be sent to that virtual desktop. If they click, if they type something in, it needs to be sent to that virtual desktop. If their screen changes, if they go to a website, all of that data, all of that imaging has to be passed over this connection so that it will actually be displayed on their monitor. And so there's a couple different display protocol options that we can choose from here. The first one shown is Blast, The first one shown is Blast, and that's really the latest and greatest display protocol. and that's really the latest and greatest display protocol. The second one shown is PCoIP, The second one shown is PCoIP, which is probably the most common out there right now. which is probably the most common out there right now. And then we have RDP, which is really the oldest one and And then we have RDP, which is really the oldest one and the one that not a whole lot of folks the one that not a whole lot of folks are really using at this point. are really using at this point. So we'll learn about those So we'll learn about those three different display protocols three different display protocols and how they can be used to establish a session and how they can be used to establish a session between the client and the desktop, between the client and the desktop, but the real concept that I want but the real concept that I want you to understand at this point you to understand at this point is that their desktop isn't sitting is that their desktop isn't sitting in front of them anymore. in front of them anymore. Their CPU and memory and all that stuff, Their CPU and memory and all that stuff, that's running on a virtual machine that's running on a virtual machine on an ESXi host in the physical data center. on an ESXi host in the physical data center. So they have a client. So they have a client. The client device is sort of like a dumb client. The client device is sort of like a dumb client. It's simply redirecting all of their screen It's simply redirecting all of their screen and keyboard and mouse activity and keyboard and mouse activity and USB traffic and things like that and USB traffic and things like that between their desktop and their physical client device. between their desktop and their physical client device. So, it actually seems relatively simple. So, it actually seems relatively simple. It actually seems relatively simple, It actually seems relatively simple, so we've got this client that connects to a desktop so we've got this client that connects to a desktop that runs in the data center. Really, it's not that complex. But, when you start to peel back the layers and think about all of the things that are going to have to change as a result of this, like, for example, how do I effectively deliver applications? Can I have one image that everybody uses, and I just give applications to individual groups of users? That would be really efficient. Can I accomplish that? How do I tolerate failures? What if my connection server goes down? What if I lose all of the data on my connection server? What's that going to mean to me? What about printer mappings? What about printer mappings? Now, their physical computer's running in the data center. So who knows where they're actually sitting? The could be sitting at home. They could be sitting on any floor in our building. They could be in different locations. Their virtual desktop is always running in the data center. So how do I give them the correct printer that is nearby where they're sitting? What if they want to connect up from home? Can I do that securely with the tools baked right into Horizon View, or do I need to use some sort of third-party solution? How are my virtual desktops created? Am I going to have to manually build every single virtual desktop? Is every single virtual desktop going to be a full virtual machine, going to be a full virtual machine, consuming all the space required for a full VM? consuming all the space required for a full VM? How does vCenter, How does vCenter, ESXi, View Connection Server, ESXi, View Connection Server, View Composer, Active Directory, how do all these components communicate with each other? how do all these components communicate with each other? What sorts of permissions do I need? What sorts of permissions do I need? What kind of ports need to be open? And how do I make it all work as efficiently as possible? And how do I make it all work as efficiently as possible? So I equate Horizon View to a boulder. That's kind of a funny analogy, but Horizon View is sort of like a boulder, right. There's all this stuff that I have to figure out in the beginning. It's kind of like getting a boulder rolling down a hill. If a boulder's sitting at the top of the hill, it's going to be really hard to push that boulder, move it, and get it rolling. But once it's rolling, it's rolling. And you don't have to do a whole lot of work to keep it rolling. And that's kind of like Horizon View. It's a very significant undertaking to get all this stuff setup, to get all this stuff setup, get it all working the way it should be working, get everything as efficient as it can, get everything as efficient as it can, and number one priority, and number one priority, deliver a great experience to your users. deliver a great experience to your users. If you can't do that, if the experience that they get If you can't do that, if the experience that they get is not at least as good as their physical desktop, your project will be a failure. So it takes a lot of effort to make that happen initially, but once you get that done, but once you get that done, now this thing just kind of rolls, and you're not dealing with a whole lot of help desk issues with people's PCs. There's a whole bunch of tools and efficiencies that you didn't have access to before, and so it really helps, kind of keep things moving in the right direction, once you have it established. So that's what we're going to learn how to do in this course: how to build a View environment the right way, how to make it as maintenance-free as possible once it's all set up and ready to go, and we're going to build step by step the whole way to make it as simple and easy to understand as possible.

Contents