使用Azure虚拟机创建一个功能完备的网站 - 安装Web服务
分类: Windows Server ◆ 标签: #Azure #基础 #Web #.Net Host #Windows ◆ 发布于: 2023-06-15 16:06:45

上一篇教程我们有使用Azure Powershell
来创建一个Windows Datacenter 2019
的虚拟机,如果有遇到如下的错误:
WARNING: Since the VM is created using premium storage or managed disk, existing standard storage account, dbstoragezwxlvqqlwwnnc, is used for boot diagnostics. VERBOSE: Performing the operation "New" on target "my-testing-vm". New-AzVM: Long running operation failed with status 'Failed'. Additional Info:'Boot diagnostics uses dbstoragezwxlvqqlwwnnc which is a Blob storage account. Please retry with General purpose storage account.' ErrorCode: StorageAccountTypeNotSupported ErrorMessage: Boot diagnostics uses dbstoragezwxlvqqlwwnnc which is a Blob storage account. Please retry with General purpose storage account. ErrorTarget: StartTime: 2022/4/14 21:44:59 EndTime: 2022/4/14 21:45:00 OperationID: d6d187a7-e520-49e4-92ae-8e8fb8efb930 Status: Failed
那么可能是你运气正好,Azure
虚拟机默认是开启启动诊断的,启动了之后它需要一个Azure Storage
存储诊断日志,运气不好的话,正好自动生成了一个和你订阅下的某个存储账号重名了,这就很尴尬了,如果不想麻烦的话,可以直接关闭启动诊断完事了,当然如果对启动诊断很看重您还是需要先创建一个storage, 然后使用指令Set-AzVMBootDiagnostic
设置这个账号,具体怎么用,您可以看一下文档,我们先关闭它:
Set-AzVMBootDiagnostic -VM $MyVMConfig -Disable
然后继续运行之前的New-AzVM
创建您的虚拟机。
之前创建虚拟机的文章,您可以参考网址:https://www.azuredeveloper.cn/article/build-web-by-azure-vm-create-azure-resource
本章我们来配置我们创建好的虚拟机,用于自己的Web
站点。
我们的目标:
- 安装
Web
角色和服务 - 安装
Asp.net Core Module
- 配置用户
- 创建我们的站点
- 启动
IIS
的远程管理 - 安装
Web Deploy
- 配置
Windows Server
上的防火墙 - 配置
Azure Virtual Network Security Group
- 测试远程管理
- 测试通过
MSBuild
和Visual Studio
远程更新和发布站点
安装Web
角色和服务
注意
本章是跟随前一章的内容,请先仔细阅读前一章的内容,前一章的地址在这里:
https://www.azuredeveloper.cn/article/build-web-by-azure-vm-create-azure-resource
可以通过Azure Portal找到我们创建的虚拟机,拿到公网IP, 或者直接运行如下的脚本(上一篇文章我们创建好的)得到公网IP:
$ $public_ip.IpAddress
然后使用Windows
的远程登录登录到虚拟机上,虚拟机默认启动服务器管理器, 如下图:
然后点击右上角的菜单管理
-> 添加角色和功能
, 如下图,启动安装向导:
安装向导如下图:
然后继续下一步:
安装类型记得按上图所选,然后继续下一步:
注意左侧列表里选择Web
服务,会跳出一个弹框,默认选择就好了。
确定,下一步,然后选择单个组件,保持默认,继续下一步,一直到向导界面服务器角色功能
如下图:
请按照上图所示选择所有的必要组件。然后就下一步又下一步直到完成所有安装。
支持我们完成了Windows Server
上的Web
服务器的安装。
安装Asp.net core Module
我们这个站点是为了运行基于.Net 6
的Asp.net core
应用,安装好IIS
之后,我们需要安装额外的模块,Asp.net core module
的Host Bundle
, 它包含了Asp.net core module
以及.Net 6
的runtime, 您可以从这里直接下来,并安装就可以了:
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/aspnet-core-module?view=aspnetcore-6.0
支持安装完成了,我们继续配置用户。