1 00:00:01,040 --> 00:00:05,210 Select our app again, run an assessment this time, and 2 00:00:05,210 --> 00:00:06,640 you notice that there's no errors. 3 00:00:06,640 --> 00:00:09,540 That's because I went back and fixed the binding and changed it 4 00:00:09,540 --> 00:00:14,000 to 443. So it looks like the only warning we have now is to make 5 00:00:14,000 --> 00:00:15,970 sure that our certificate is valid, 6 00:00:15,970 --> 00:00:18,640 which, of course, we would do anyway. Fortunately, 7 00:00:18,640 --> 00:00:22,540 because it's such a tiny application, it doesn't take long. 8 00:00:22,540 --> 00:00:25,840 Okay. Because we didn't see a blocker this time, 9 00:00:25,840 --> 00:00:29,500 it's asking us for specifics on how we want to set up our 10 00:00:29,500 --> 00:00:31,200 app service. That's what it's doing here. 11 00:00:31,200 --> 00:00:35,770 So I'm going to choose my az801‑rg resource group, 12 00:00:35,770 --> 00:00:37,030 the destination site, 13 00:00:37,030 --> 00:00:43,680 I'll call twaz81webapp1. App service plan again is the 14 00:00:43,680 --> 00:00:47,390 underlying compute. I'm actually in East US. Now, 15 00:00:47,390 --> 00:00:49,770 it says here a single premium instance, 16 00:00:49,770 --> 00:00:53,250 that's pretty expensive. I don't actually want to keep that. I'm 17 00:00:53,250 --> 00:00:56,170 going to want to downgrade that to standard as soon as this 18 00:00:56,170 --> 00:00:59,460 finishes deploying, so I'll definitely want to do that. Now 19 00:00:59,460 --> 00:01:01,590 notice that we can skip database, 20 00:01:01,590 --> 00:01:04,100 which is what I'm doing because I would handle the 21 00:01:04,100 --> 00:01:06,840 SQL Server migration separately. 22 00:01:06,840 --> 00:01:11,730 But you can actually do a hybrid scenario where you migrate the IIS 23 00:01:11,730 --> 00:01:16,390 app to Azure App Service and you continue to use your on‑premises SQL 24 00:01:16,390 --> 00:01:21,320 Server or SQL Server cluster. This is called a hybrid connection and 25 00:01:21,320 --> 00:01:22,490 what this allows you to do, 26 00:01:22,490 --> 00:01:26,930 it involves installing a small service in your local environment to act as a 27 00:01:26,930 --> 00:01:31,860 proxy. It enables just a single port connection. In this case, if it were SQL 28 00:01:31,860 --> 00:01:36,640 Server, you would have the on‑premises database server name here, and then you 29 00:01:36,640 --> 00:01:42,320 would do TCP for 1433, and that would allow your app service to poke through 30 00:01:42,320 --> 00:01:47,770 your firewall and come in on that hybrid connection to continue communicating 31 00:01:47,770 --> 00:01:49,520 with your on‑premises database. 32 00:01:49,520 --> 00:01:53,740 So that helps customers when they're doing a more of a phased migration. 33 00:01:53,740 --> 00:01:57,890 I'm going to do a skip on this one. And then notice that we can export 34 00:01:57,890 --> 00:02:01,350 the ARM template if we're going to handle the deployment separately. I'm 35 00:02:01,350 --> 00:02:03,310 going to put that on my desktop. 36 00:02:03,310 --> 00:02:04,590 Nice convenience. 37 00:02:04,590 --> 00:02:08,540 So we could use PowerShell, or the Azure CLI, or whatever, to do 38 00:02:08,540 --> 00:02:13,520 that deployment ourselves, or we can click Migrate. And this 39 00:02:13,520 --> 00:02:15,040 looks like we're ready to go here. 40 00:02:15,040 --> 00:02:19,350 So once we've done our handshake into the Azure Migrate project, 41 00:02:19,350 --> 00:02:21,970 as long as you don't have a blocking error, 42 00:02:21,970 --> 00:02:26,120 you can proceed. I've taken a snapshot copy of the underlying ARM 43 00:02:26,120 --> 00:02:29,340 template, and at this point it's not only sending all of the 44 00:02:29,340 --> 00:02:32,260 discovery and assessment data to Azure Migrate, 45 00:02:32,260 --> 00:02:35,440 but it's actually building out the resources and pushing 46 00:02:35,440 --> 00:02:38,140 the code into the App Service as well. 47 00:02:38,140 --> 00:02:41,240 That's pretty sweet, seems to me. Pretty sweet indeed. 48 00:02:41,240 --> 00:02:42,140 Nice. 49 00:02:42,140 --> 00:02:43,540 So while we're waiting for that, 50 00:02:43,540 --> 00:02:49,040 let me come back to Azure Migrate and do a hard refresh in the portal. 51 00:02:49,040 --> 00:02:50,640 It hasn't updated yet. 52 00:02:50,640 --> 00:02:52,170 So let's come back to the app. 53 00:02:52,170 --> 00:02:55,930 Okay, Congratulations, your site's been successfully migrated! Cool. 54 00:02:55,930 --> 00:02:58,840 So as you can see, we can migrate another site, 55 00:02:58,840 --> 00:03:02,880 we can jump into the Azure portal, or we can browse to the site 56 00:03:02,880 --> 00:03:06,840 directly. And here we can see https, the name of my 57 00:03:06,840 --> 00:03:10,260 webapp.azurewebsites.net. And here it is, 58 00:03:10,260 --> 00:03:11,840 it's running just fine. 59 00:03:11,840 --> 00:03:16,740 So if we go to the Azure App Services blade here in the portal, 60 00:03:16,740 --> 00:03:19,720 we should find there is our running web app and there's the 61 00:03:19,720 --> 00:03:22,540 underlying App Service plan right here. 62 00:03:22,540 --> 00:03:24,960 And like I said, I want to save some money here, 63 00:03:24,960 --> 00:03:29,230 so I'm going to go down to Scale up, and I want to resize this 64 00:03:29,230 --> 00:03:32,500 because the premium's too expensive for just this little 65 00:03:32,500 --> 00:03:36,700 environment here, So I'm going to downgrade to S1 and click Apply 66 00:03:36,700 --> 00:03:38,860 to put that change into effect. 67 00:03:38,860 --> 00:03:45,000 Great! So now that that's finished, it looks like we're ready to continue on our merry way.