 Hi, my name is Lisa Guthrie. I'm a Program Manager in Microsoft Developer Division, and I'm here today to talk about some new functionality we've added around Kubernetes in Visual Studio 2019. Specifically, there are two main features that we've added to Visual Studio 2019 to make it really easy for you to develop applications that target Kubernetes. We have the ability to create a Docker file and Helm charts for you to run your application in a Kubernetes cluster. We also have the ability to very easily run your application and do team development in Azure Kubernetes service with Azure Dev Spaces. I'll run through both of these features today. In order to install the Visual Studio tools for Kubernetes, they are included in the Azure Development workload for Visual Studio 2019. They are an optional component, but they are selected by default. So as long as you select that workload, when you're installing Visual Studio 2019, you should be good to go. Once you've installed the Visual Studio Kubernetes tools, you'll notice that there is a new project type that you can select when you're creating a new project in Visual Studio, called a Container Application for Kubernetes Project. You can also add Kubernetes support to an existing application by right-clicking on a project in Visual Studio. This needs to be an ASP.NET core web application project type. If you right-click on that project and you point to add and then Container Orchestrator support, you will have the option to select Kubernetes and Helm as the Container Orchestrator that you wish to add. Once you've done this, you'll notice a couple of new files and folders that are added to your project, either if you create a new application or add Kubernetes support to an existing application. The files that you'll see, first and foremost, there's a Docker file added, which defines how to build the container image that you want to run in Kubernetes. There's also a Helm chart added, which provides more context around the application that you want to run. Finally, you'll notice a file called azds.yaml. This contains configuration settings that are specific to Azure Dev Spaces and to running your application in a live Kubernetes cluster using Azure Dev Spaces. All right. Let's jump into a demo and I'll show you exactly how this all works. All right. Here I am inside Visual Studio 2019, and I have an ASP.NET Core Web API project loaded here. Just a very simple Web API that returns a string. What I'm going to do is add Kubernetes support to this Web API. So I go to Add and I choose Container Orchestrator support. Then I'm going to choose Kubernetes as my Container Orchestrator. It's going to ask me if I want to create a publicly accessible endpoint for this Web API, and I chose No because this is a back-end Web API that does not need to be publicly accessible from outside the Kubernetes cluster. Now I'm going to choose my AKS cluster where I want to actually run this Web API, and I'm going to choose the default space here. I also have my own lisa space if I wanted to run this Web API in my own private isolated space where I don't affect any of my teammates as I'm working, but I'm going to choose to run this in my team's default space instead for now. Before I go to Debug, I'm going to set a quick breakpoint on this particular API call, and then I'm going to press the Debug button to debug this Web API in Azure Dev Spaces. You can see a little bit in the output window of what's going on here. Visual Studio is synchronizing my code up into Azure, and then it is building a container image to run my code based on that Dockerfile that was created when I added Kubernetes support. Now that Dockerfile is a standard Dockerfile. I can edit it, I can add additional dependencies, or do whatever I need to do to create a container image that successfully runs my application. Once the container image is built, then the Helm chart is used to deploy that container image into my AKS cluster. Now I'm going to go to that particular API call that I made, and you can see that the breakpoint that I set is hit. So I am now live debugging my Web API running in that AKS cluster that I selected. Now, since this is running in an AKS cluster, it can be accessed from other services running inside that cluster as well. So let me just continue here. There it goes, and I'm going to open a browser window to go to my actual website, and just switching back here. This is the URL of my actual website. The Web front-end service is another service running in that AKS cluster, and this about page calls out to my Web API. So you could see that as soon as I went to hit that about page, again, the Web front-end service called out to my Web API, and my breakpoint here was hit. So I'll say continue. We can see that that message coming back from my Web API now shows up on this web page. Let me go and just make a quick change here. Change my Web API to Visual Studio 2019 and save that. We'll run that in Dev Spaces again. We'll see that Dev Spaces has a lot of optimizations to make sure that I really get that fast iterative debugging experience. Going to my API call again, I can see that now it's returning hello from Visual Studio 2019. If I come back and refresh my about page, of course, it's showing that new string that's being returned from the Web API as well. It's a very fast debugging experience, lots of great team functionality as well. So that if I wanted to make these changes isolated from the rest of my team, I could do that and still test my service in the context of the broader application. So that's Azure Dev Spaces, which is part of the Visual Studio Tools for Kubernetes integrated into Visual Studio 2019. So that's the Visual Studio Tools for Kubernetes. If you're interested in learning more about Azure Dev Spaces specifically, you can visit this website, all the documentation is there to get you started with using Azure Dev Spaces. Thanks for watching.