(funky music)
(audience applauding)
- Hello and welcome to Microsoft Mechanics Live.
Coming up, we're gonna take a look at how Microsoft
is transforming virtual desktop delivery
by separating operating system, user profile and app layers.
Then we're gonna show you how we've improved
the Microsoft Teams remoted experience with AV redirection
and a preview of the Windows Virtual Desktop admin portal
and the things that you can do there.
And I'm joined once again by Scott Manchester
from the Windows Virtual Desktop team,
so please give him a warm welcome.
- Thanks, thanks Jeremy.
It's really great to be back up here again with you.
- All right, so one of my favorite topics
Windows Virtual Desktop.
It's been generally available now since September,
and it's our fully managed virtualization solution
on Azure so congrats for shipping that.
It's only been a few weeks but how's that going?
- It's been going great.
Hopefully you and the audience have had the chance to go
live with Windows Virtual Desktop.
We've had thousands of new customers onboard
onto the service in these last, about 35 days I think.
Both using our native solution that we went live with
and the Citrix WVD solutions that also went live at GA.
- Right and I know there's been a ton of work
that the team's really been focused on since you went GA,
so what are some of the other things
that you've been working on in those last couple of weeks.
- Well we've been very busy Jeremy.
We've been continuing to extend the capabilities
of the service and expanding the partner program
to bring more value and options to our customers.
But some of the most significant work we've been doing
is enhancements to the whole Windows experience itself.
So we've been breaking down the Windows experience
into the user data, the applications, and the OS layers.
Now on a physical device these layers
are intrinsically linked, and the user experience
is consistent every time the user logs onto a machine.
Their apps, their data, and their OS experience
is deeply tied together.
But in a virtualized environment, a brokering service
typically routes a user to a virtual machine
from a host pool and that host pool is typically
the one being routed to that can host the workloads,
the apps and desktop workloads to that user,
but could be a different machine
every time that user logs in.
- Right so everybody knows the challenge, right?
You have to make sure that you can create a virtualization
environment that kind of mirrors or matches
what you can do here on a local, physical device.
You don't wanna have to train people
to save stuff to a Z drive or an I drive
or something for their files.
Just keep it in the documents folder
or whatever they're used to using.
Also for an IT admin perspective there's a lot
of IT admins out here I think,
it's also hard to maintain those environments.
Yeah, exactly.
So we've already provided a mechanism to give you
that same experience with user data and settings
by managing user profiles with FSLogix.
Now with FSLogix we've separated out the user profile layer
from the virtual machine, and the way we do that lets users
work in a way that feels natural.
To the user it feels like they're saving and accessing
those files just as if it was a local disk, but in reality,
that user data is hosted in a file share and mounted
when the user logs into that machine.
Now that takes care of one of the three layers,
now we've separated out the user data layer,
but we still have the application layer
and the OS still deeply tied together.
In a shared or pooled virtual machine, this is a challenge,
because each user might need a different set of apps
and as we mentioned before they can be assigned
to a different VM every time they log in.
So you're left with a couple of options as an IT admin.
You can either manage a bunch of unique of VM-pools
all customized with different users' roles.
And these images would all need to be individually
maintained and patched and that creates a lot of overhead
for the IT--
- [Jeremy] Right but it's still common,
a lot of people are doing this.
- [Scott] They are indeed
but there's some better options now.
So additionally customers might also overload a single
VM image with more apps than any single user would need,
and then hide and show those apps
based on policies.
- But it's a mega single image and the thing is,
the licensing stuff can get kinda tricky
as well depending on the apps that they've got.
- So that's obviously, you're dealing with a very bloated
image and then how do you deal with which users
have the access rights and licenses
to those different applications.
So another tool people often use is to actually
stream the apps dynamically.
So you might stream those apps when the user logs in
but that takes a lot of effort to get the apps,
you know, both set up in a streaming format
and to build all the backend streaming infrastructure
that would be required to do that.
- Right, so you have to package the apps,
get them ready for virtualization and streaming.
That may still come into the OS itself,
the VHD or VHDX file and consume space, right?
So that's all kind of challenging as well
and you gotta wait for that file transfer
to happen and then even if it's streamed
for everything to be there before it can actually
perk up and start working.
- All of those have some kind of compromise
but there's a lot of tools and resources
out there for customers. - All right, so how would you
then solve for this, what have you done?
- Well what if the apps worked like the user profile data
and were stored outside the virtual machine,
and each app attached itself like we do the virtual disk
of the user profile and we did not have to repackage
the apps and this just worked naturally?
- All right so I think this has been something
that people have been waiting for for a long time.
You've actually solved the problem of being able
to decouple apps from the OS.
- We absolutely have and we call it MSIX App Attach.
And you can start using this today if you're part
of the Windows Insider Program,
this is coming in the next version of Windows,
and you can use this with Windows Virtual Desktop.
So like we did with the user profile we've modified Windows
so that apps can be stored off the Windows disk
and we just need to attach the apps to the VM on demand.
Now you can create app groups and assign different users
to these, and these are available instantly
when the user logs on
because you don't have to stream the app binaries.
And to the user it looks and feels the same
as it does on their home PC and their desktop.
- And the cool thing is the actual application
payload is left off the machine,
the OS imagine is left clean,
it's left smaller than it would be.
Now I bet people wanna see this.
Can you show us what that would look like
to do on a MSIX App Attach.
- Let's do that.
So I'm gonna show you guys the connected experience
of using MSIX App Attach abd dynamically add OneNote
to a managed desktop.
So let me switch over here to one of my VMs
that I've already pre-connected to.
And before I actually show you this Jeremy
I want you to take note of the C drive over here
and the amount available space.
- [Jeremy] So 21.4 gigs today.
- [Scott] Yep, and I don't have this app installed
so I'm gonna just show you that it's not here
in my start menu yet.
- [Jeremy] No tricks up your sleeve.
- Yep, and ultimately this whole experience
is gonna be integrated into the WVD management experience
so it'll make it easier
for you to-- - So just to be clear,
the app will stay in another location
like in other words like Azure files or somewhere
and just attach itself as part of a virtual desk
but not move into the VM.
- That's exactly right,
in a highly optimized fashion as well.
- [Jeremy] Okay, let's see it.
- So, let's take a look.
So I'm gonna run this script here and again
this will be integrated into our experience
so ultimately directly but I wanna show you
what this looks like.
Now as I mentioned, this application
is about 1.2 gigabytes once it's installed on disk.
So what's happening in the background
is it's actually attaching the app
and then it's already launching it.
And being that this is a large app
it takes a few seconds for this to load
but the performance of doing this using App Attach
is pretty much the same performance
you'd get on bare metal and in this case
not only am I loading the application
but we're actually done the composition of both,
the application, and my user profile data.
So you'll see when this app loads,
it's actually gonna load not only as a clean
installation of One Note, but also--
- [Jeremy] But you're signed in as Scott.
- Signed in Scott, all my data was already
there available as well.
- Very cool, but let's prove it.
Go back to your File Explorer
and make sure-- - Let's take a look.
- [Jeremy] That we're still at 21.4.
- [Scott] So here we are with a 1.2 gigabyte application
effectively loaded on this VM and I haven't
even touched my space. - And you can even pull down
down the Explorer.
We didn't do any games in terms of storage drive D,
that's the C drive. - That is the C drive.
21.4 gigabytes.
Now imagine how this would play out
over a large number of users.
- Right, so by the way if you're new to MSIX,
these packages also work with Win 32 apps
so you can actually package up your apps for Win 32
into the UWP as MSIX files
but how does this differ then
from a traditional app layering that we're used to?
- Well traditional app layering is a great tool
to optimize virtualization environments,
but we have taken things a step further
with MSIX App Attach.
We've made core changes to the Windows operating system
to support dynamic delivery of MSIX packages,
now this is a new app delivery standard
and you can use your existing EXEs or MSIs
and package them up in this MSIX format.
And if your app is already in an MSIX format
you're ready to go today.
- All right so it's really gonna help the admin experience
by reducing the number of images, the image size,
keeping the OS and apps up-to-date
because it's kind of decoupled from the apps themselves
and for the user, it felt like a personal desktop
with local profile and local apps
'cause all those things will attach at login,
no change in user behavior for both files and for apps.
It's just gonna show up in the start menu
and feel like a physical desktop.
But you mentioned earlier that you're storing
those MSIX packages onto file shares,
so are we making any updates
in terms of storage solutions available for WVD?
- Yes, one of the options is to use Azure Files,
which is a great storage option and we are excited
to announce today that coming soon you'll be able
to use your, on-prem, your native AD controller
with Azure Files.
This is a really big deal for vitalization deployments.
- [Jeremy] Right, so you don't have to use AADDS.
- That's right, you can actually use your on-prem AD now
and associate that with your Azure Files storage.
- [Jeremy] Very cool. - Now in our demo environment,
we've actually set up two file shares
on our storage account.
One is hosting the user profiles
and one is hosting the MSIX app packages.
So if we switch back to my machine
I'll show you quickly here.
I've pinned this Azure Files instance on my dashboard.
I'll drill in here and if I click on the file shares here
you'll see that I've got two file shares.
One set up to host the FSLogix profiles
and I've set a quota of one terabyte of storage now.
I'm only charged for what I'm actually using here,
this is just a way to manage the storage--
- [Jeremy] Pay as you use basically.
- Exactly.
So the second folder has the MSIX packages
so if I drill into that you can see I've got
a bunch of pre-configured MSIX apps in here
and one instance of these applications
could be used to host hundreds if not thousands of users.
So think of that storage, it will replay it
over 1000 C drives where you're not using up all that--
- And to get all this
attached to that file share effectively.
- That's right.
And we're just streaming them using a highly
efficient, new, read only, streaming solution
that's much faster than the traditional streaming solutions.
- Very cool, so it's fully managed file share,
you only pay for what you use,
but I wanted to switch gears and talk about
some of the work that we're doing to make
remote meetings and teams better,
'cause I'm actually ready to kind of show
some of the stuff 'cause it's pretty cool
in terms of, you know how it would be
if you've got two VMs and you've gotta kind of
remote up to those and then connect across.
There's a lot of latency potential, all these things,
it's get better, right?
- Yeah, unified communications apps like Teams
haven't traditionally worked well
in virtualization environment.
But we're in development of a solution for WVD
to address that challenge and significantly improve
the experience and performance of Teams.
So do you wanna take an early look at the experience
and take a look at this?
- I think everybody does.
You guys wanna see some Teams optimization?
- [Scott] So Jeremy it looks like your camera's on.
I think we've already got a stream going here.
Let's take a peek and see what that looks like here.
- All right.
- [Scott] So look at the quality of that video, Jeremy.
Go ahead and wave your hand in front
of your camera here and let's see what that looks like.
- All right, just to show there's no latency,
no tricks up my sleeve.
Here we are, look at that.
Almost perfect.
It's kinda going over West US too and back to you
and all of these things.
- Yeah, so the actual VM that's hosting this workload
is actually in West US.
You would imagine the latency would incur
if we were routing that stream all the way up
to West US and all the way back.
- All right, so what kind of magic did you do
to make all of this stuff work?
- [Scott] So in an environment without AV redirection,
you're sending these audio and video streams
up into the cloud and they're getting encoded and decoded
which is a very CPU-intensive and adds a lot of latency.
Now that reduces the quality and performance of your video.
And that CPU encoding and decoding could affect
other users on that virtual machine as well.
But with AV redirection for Teams,
we've essentially redirect Teams AV traffic to bypass
the WVD virtual machine and the cloud
and send that audio and video call client device
from one to the another.
- [Jeremy] So pretty much it's like a direct connection
between your machine and my machine.
Almost like they're on the same subnet.
- Yeah, and basically it's like there's a connection
between our two laptops here.
- Not too bad.
And this is all done web rtc?
- Yeah this is done with web rtc
and it just creates this direct channel
between the two machines.
- Cool.
So it's much more efficient way
to pass that video feed in this case
but we've done a lot of work here
in the clients in terms of the Teams client
but I know you've done a lot of work
on the RDS client as well.
- Yeah, good segway there Jeremy.
Let me give you a quick demonstration
of the new RDS client or NWV client for Windows.
So one of the things you'll first notice here
is that we're in dark mode much like this whole Ignite
event is in dark mode.
And I'll show you here under the settings tab
here I can switch between light and dark mode
or just let it follow the system settings.
So that's one of my favorite features here.
I love dark mode.
But one of my other favorite features now
is I can drill in to one of the VMs that's hosted
by my IT admin and if I right click on this
and click on settings, now I've got a whole bunch
of overrides I can do.
So my IT admin would configure the machine
back when they create the host pool for parameters
like does it support multi mon,
some of the redirection policies,
well some of those I can override on my machine here.
So I can just take the default settings
or turn that off and come in here and say,
look I want this to span all of my monitors
so if I've got multi mon spanned across all of them.
I can start it in full screen,
I can have it update the resolution on the resize
or I can actually hard code a specific resolution here.
So I could drill into any particular resolution
I wanted to start that VM in.
So actually let me show you a quick demo of that.
So I'll go into one of these VMs here.
This one in particular,
and if I just take it out of full screen mode
you'll notice on the host it simply
resets the resolution to the resolution of the window
so as I drag this window open now, get my cursor on it,
it'll resize to the new resolution.
- Nice, so it's gonna fit exactly
where you wanna put it on your desktop
which is super important and better
from a user experience perspective
but now we're here in a room full of admins
and I know that this is something that we didn't show
when we did our mechanics show on this
so you've updated the admin experience,
we've shown redirection, we've shown all these things
that you might have seen in the past
but let's see what's new in terms of the admin side
of the house for what you're working on with WVD.
- Yeah so I'm super excited to show this.
So we've been making a lot of investments
to improve the experience in setting up
and managing Windows Virtual Desktop
and there's a number of partners out here
on the show floor who've also made a lot of optimizations
and created some really unique tools
but having a native solution for deploying and managing
WVD and Azure is something that we've been hearing
loud and clear from our customers here.
So I wanna give you guys an early preview of this.
So here I am in the Azure dashboard
and you saw I just went in here and in the blade
you can see there's a new item here
for Windows Virtual Desktop.
It takes you right here to our hub.
Now our hub surfaces the most common task
which is to go out and create a new host pool
but you can also see that we've got links
to important documentation to help ensure
that you've got things set up correctly.
Now over here on the left you can see
we've got workspaces, host pools, app groups, and users.
If you use WVD today you're familiar with the term tenant.
We've just replaced the term with workspaces.
- Makes sense. - Essentially the same thing.
But let's take a look into this.
Let's drill into host pools real quick
and I'll show you that I actually
have two host pools set up.
One of them that's hosting application groups
and another one that's hosting full desktops.
So if I drill in to one of these host pools here,
first off it'll show me how many virtual machines I have,
it'll tell me I've got two application groups
with a total of 12 apps.
I can look at any active sessions,
I can restart the VM.
If I wanted to manually add another VM I could go
create the registration key here and manually add a VM
but that wouldn't be very cool.
What's cool is going straight into here,
click the add button, and now I can scale out my deployment
simply choosing how many more instances of that VM
I want and it'll automatically build the whole thing for me.
- [Jeremy] Very cool, very cool.
- [Scott] Very cool.
So let's take a look at a couple of other little features
here while we're in here.
So let's go look at the app groups that we've got,
and here you can see that I've got two app groups.
The browsers and the office apps,
and let's say I wanna add a new user
to the browser app group, right?
So I click on browser, and if I go over here
under assignments I can see who currently has access.
So you can see here I've set up
my entire family with access to this.
- [Jeremy] It looks like a lot of Manchesters.
- [Scott] There's a lot of Manchesters
in the family household.
But I don't have is I haven't assigned it to myself.
- [Jeremy] It's the best gift
I think for Christmas this one.
- [Scott] I'm about ready to give
these guys their best gift.
I'm gonna click add, now I could go and find my name
in this group here but what if I'm a member of a group?
- [Jeremy] Okay.
- [Scott] So let's just add the accounting department
and say select and yes I just added a group of users
to my WVD app pool.
- And by the way, you couldn't have done that
even in PowerShell and as much as we love the PowerShell
part and we had Jeffrey Snover up here yesterday,
this is so much easier and you can add a group
instead of a bunch of semicolon delineated usernames
and UPNs, now you just have the one group.
- We're not gonna but Jeffrey out of work.
PowerShell is still a really important tool
and you can do a lot of automation with PowerShell
but simple tasks like this it's great to be able
to have a UI environment to do that.
Now let me show you this real time by the way.
I'm gonna click on the web client here
and normally once I make a change it takes about
five minutes for that to propagate but I think
our conversation might have given us just enough
stall time if I hit refresh.
We'll cross our fingers here and hopefully
you're gonna see that I now have access to,
drum roll please.
Here's the browsers. - A couple more apps.
All right you got a couple more browsers awesome.
- [Scott] Just that quick,
now I have access to all those browsers.
- Very cool, everybody like that?
You can applaud for that.
(audience applauding)
All right, awesome.
So even if you're not proficient with PowerShell
you can do all this coming up right from gooiest part
of the new admin experience.
- Yeah we'll continue to support all those rest APIs
and PowerShell and ARM templates and like I said
out on the show floor there's tons of third party tools
that people have built that you can build on top of this
and I see a lot of creative things that people are building
to make WVDs set up and deployment so much easier.
- All right, awesome stuff.
So it's really great to see how we're transforming
virtual desktop delivery then as part of the improved
remote experience of the Microsoft Teams.
Lots of cool stuff coming, lots of great stuff coming
for admins, but where should people go to get started?
- Well we've made it really easy
to find information about WVD.
You can go to aka.ms/WVD
and there's jumping points of all kinds of documentation
from there. - And by the way,
if you need help getting deployed
we actually published an entire how to series
four parts where I personally went from zero
to totally configuring all of this,
documented it all in Microsoft Mechanics
so you're gonna wanna check that out at aka.ms/WVDplaylist
and if you wanna get into the learning path for that
it's aka.ms/LearnWVD and of course don't forget
to subscribe to Microsoft Mechanics and follow Scott
at RDS4U on Twitter.
That's about all the time we have for this show.
Thank you so much for watching.
We'll see you next time and goodbye for now.
(audience applauding) (upbeat music)