in this video I'm going over Windows virtual desktop load balancing and
remote application pools
hello everyone I'm Travis this is Ciraltos this is the
continuation of a previous video I did on the new Azure Windows virtual
desktop in public preview I want to thank everyone who watched and commented
and subscribed thanks a lot I appreciate it
if you haven't watched the last video pause and go watch it I'll add the link
someplace up here and while you're at it be sure to click Subscribe and click on
that notification bell to get updates when I post new content I'm gonna cover
load balancing and creating remote application pools in this video before
that let's cover a couple concepts first is tenants tenants as it relates to
Windows virtual desktop contain host pools app groups and user assignments
most configuration is done at the tenant level optionally there are tenant groups
this is meant for cloud service providers or anyone who needs to manage
multiple tenants I'm not gonna demo tenant groups in this video but they
exist if it's something you need to use next is host pools a host pool is a pool
of computers that hosts desktop sessions and/or remote applications there are two
types of desktop pools personal or pooled personal host pools have a
one-to-one mapping between users and desktops in the VDI world these were
called persistent desktops this is the only option for Windows 7 as Windows 7
doesn't support multi-user desktop but Windows 10 can be used also pooled host
pools support multi-user environments and require Windows 10 multi-user load
balancing is assigned to pooled host pools
there are two options for load balancing breadth-first or depth-first
breadth-first balances users across available hosts in a pool breadth-first
can have a max number of sessions assigned to the host but that is not
required depth first will fill up one host before assigning users to the next
a max number of sessions per host is required for the depth-first
load-balancing option with that let's do a demo of setting up load balancing in
Windows Virtual Desktop buckle up everyone it's
time for demos the first demo I'm gonna do is configuring load balancing in the
host pool so I have my host pool and tenant defined here and the first
command I'm going to run is gonna get the RDS host pool if you don't have the
RDS PowerShell tools I'll include a link to the download instructions at
Microsoft you do need to download and install the RDS tools for PowerShell
before you can run this but the first thing I'm going to do is get my RDS host
pools and here you can see by default it's set to breadth-first for load
balancer type and we've got a limit of nine hundred and ninety nine thousand so
the next thing I'm gonna do is I'm going to change it to depth first so with
depth first this is where it's going to fill up one host before it moves on to
the next where as breath it's going to kind of round robin or spread the load
amongst all available hosts so I'm gonna set depth first and that does require a
session limit so if I run that command now you can see it's set to depth first
with a max session limit of ten so ten users will log into one host then the 11th
will roll over to the next now I'm gonna set my breadth-first load balancing I'm
gonna move it back to that but I'm going to set the session limit to 15 that's
all there is to it now it's back to breadth-first with session limit of 15
and just to round everything off to end this I'm gonna set it back to where it
was by default breadth-first with the max session limit of nine hundred
ninety nine thousand that is it for this demo fun here is a visual of how all the
pieces fit together keep in mind that the tenant group is not required let's
dig a little deeper into remote desktop and remote apps there are two types of
application pools desktop and remote applications desktop application groups
of the type desktop are used to host well desktops a desktop group called
desktop application group is created by default when a new host pool is deployed
it can be removed and a new one added with a different name but you can't have
more than one of the type desktop in a host pool remote application groups are
for can you guess remote applications you can have one or
more remote application groups in a host pool users can be assigned to multiple
remote application groups and applications will apply cumulatively
this is different from a traditional RDS environment where remote apps and remote
desktops required their own separate session host pool but it's not all good
a user can be assigned to a desktop application group or a remote
application group in the same host pool but not to both if a user needs access
to remote desktop and remote applications that would require two
hosts pools so with that let's do a demo on setting up remote applications
alright everyone let's get it started with the demos the first thing I'm going
to do is show you the remote desktop application you can see I have a session
desktop in here that is a remote desktop session host connection I'm gonna
minimize that for now and we'll come back to that in a second so I've got my
a tenant and host pool name defined here and I'm going to go down and view my
existing app groups so I've run this command you can see I have the default
desktop application group that was created by default when I deployed
this host pool the host pool will have one default desktop application group
created you can delete that and create a new one with a different name but you
can't have more than one the resource type desktop in a host pool so the first
thing I'm going to do is create a new remote application group so a remote
application group holds applications and then you can publish the remote
application group to users so they would then have access to those applications
so I'm going to create one called remote app group 1 it's going to be the
resource type remote app it's going to be to the same host pool we click this I
pre created all these so you don't have to watch me type so I'm going to go back
here and you can see now I have a resource type desktop and another one
RemoteApp great now I'm gonna go down to the RDS start menu app so what this is
gonna do is it's going to look at the image that I deployed and it's gonna
grab all the items from the start menu and these are the apps that I can deploy
from the image and you can see I'm filtering here on the friendly name of
word so if I click on that we can see that we have the application word pad
it's got a file path icon path icon index alias name and friendly name so I
want to deploy this application to the remote app group 1 so in order to do
that I'm going to come down there's two ways to do it the first way I'm going to
do it is by the file path the icon path and the icon index I'm going to give it
a name of WordPad and if I run this
there it is created so now I have an application available in that remote app
group 1 now the next thing I'm going to do is assign the user my test user to
that app group and I'm using the add RDS app group user command to add the user
as you can see I get an error because that users already assigned to desktop
application group so as I mentioned earlier a user can be assigned to the
resource type desktop and there's only one desktop allowed per host pool or
they can be assigned to one or more remote applications because this user is
assigned to the desktop I can't assign them to the remote
application so what I'm gonna do is remove that user so now I remove the
user and let's come over here and do a refresh and it's gone so I no longer
have that session now I'm gonna add the user I'm gonna run that command that
fell before now because the user has been removed from the desktop
application group I can add them to the RemoteApp group so if I come here
let me exit and reopen okay something funny
happened I did a little pause there because I ran into trouble I'm using
this remote desktop app this is new and probably in preview and as you can see
it's blank it's blank because there is no way to refresh so I did pull the user
out of the desktop group and now that that's gone there's no refresh option to
actually see to get the new application assignment so I'm going to skip that for
now but if we go into the html5 client you can see WordPad is published now so
let's continue on this is all public preview results may vary I guess let's
see we've added the user to that we can skip this remove line and we're gonna
move on to adding a second app group so with this I'm just going to show you
that if you create a second app group you can add a user to it and those apps
that you assign out will be cumulative to that user so let's go and add the
second remote app group which is named remote app group 2 pretty clever here
and again resource type remote app and there it is now I'm going to run the get
RDS start menu app again and this time I'm going to find a friendly name of
paint and there it is now instead of using the file path and icon path and
icon index like I did before I'm going to make this much easier and use the app
alias and here we'll scoot that over and you can see new RDS remote app and here
it is the name paint and the app alias paint so if I run that one next so I've
just added the MS paint to that remote app group - and now
going to add my user again to RemoteApp group 2 and there we have it now let's
go over to the html5 client and here we can refresh so we have paint and WordPad
and we can see we can click on paint so one thing that came up in some of the
online discussions is can we use Azure Active Directory for joining these
computers to a domain and right now I don't believe you can I haven't seen
anything in the documentation and it will point out here I'm I'm first
authenticating to this web page with my as your Active Directory account but at
this point I'm signing in to the computer with ntlm or Kerberos or the
workstation itself that I'm connecting to is still using the Active Directory
for authentication
we'll see if it launches without even adding the domain and that took a couple
seconds but as you can see it did login I did not specify domain at that last
login screen so it's using the default domain which is the Active Directory
domain that was set up this behavior is very similar almost exactly the same as
if you were to publish Rd web page through an Azure ad application proxy
I've done that in the past and it's it's pretty much the same thing first
authentication is OAuth or SAML and you can set persistent tokens on that so
user only has to login once on the same computer and then after that it's an
ntlm authentication or Kerberos so there we have it we have published those two
applications created two remote app groups and published two applications to
it that is it for this demo great thanks for watching I hope you found this
information useful be sure to subscribe and click the bell icon for future
updates on Windows virtual desktop or anything else that might put out there
thanks again