部署 Azure 云服务(外延支持)的先决条件
若要确保云服务(外延支持)成功部署,请查看以下步骤,并在尝试任何部署之前完成每一项。
所需的服务配置 (.cscfg) 文件更新
1) 虚拟网络
云服务(外延支持)部署必须在虚拟网络中。 可以通过 Azure 门户、PowerShell、Azure CLI 或 ARM 模板创建虚拟网络。 还必须在服务配置文件 (.cscfg) 的 NetworkConfiguration 部分下引用虚拟网络和子网。
对于属于云服务所在资源组的虚拟网络,仅引用服务配置 (.cscfg) 文件中的虚拟网络名称就已经足够。 如果虚拟网络和云服务位于两个不同的资源组中,则需要在服务配置 (.cscfg) 文件中指定虚拟网络的完整 Azure 资源管理器 ID。
注意
Visual Studio 2019 不支持位于不同资源组中的虚拟网络和云服务。 请考虑使用 ARM 模板或门户在此类情况下成功部署
位于同一资源组中的虚拟网络
<VirtualNetworkSite name="<vnet-name>"/>
<AddressAssignments>
<InstanceAddress roleName="<role-name>">
<Subnets>
<Subnet name="<subnet-name>"/>
</Subnets>
</InstanceAddress>
</AddressAssignments>
位于其他资源组中的虚拟网络
<VirtualNetworkSite name="/subscriptions/<sub-id>/resourceGroups/<rg-name>/providers/Microsoft.Network/virtualNetworks/<vnet-name>"/>
<AddressAssignments>
<InstanceAddress roleName="<role-name>">
<Subnets>
<Subnet name="<subnet-name>"/>
</Subnets>
</InstanceAddress>
</AddressAssignments>
2) 删除旧插件
从服务配置 (.cscfg) 文件中删除旧的远程桌面设置。
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" value="gachandw" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" value="XXXX" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" value="2021-12-17T23:59:59.0000000+05:30" />
<Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled" value="true" />
从服务配置 (.cscfg) 文件中的每个角色删除旧的诊断设置。
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
所需的服务定义文件 (.csdef) 更新
注意
更改服务定义文件 (.csdef) 需要重新生成包文件 (.cspkg)。 在 .csdef 文件中进行以下更改后,请生成并重新打包 .cspkg,以获取云服务的最新设置
1) 虚拟机大小
下面左侧列中列出的大小在 Azure 资源管理器中已弃用。 但是,如果要继续使用它们,请使用关联的 Azure 资源管理器命名约定更新名称 vmsize
。
以前的大小名称 | 更新的大小名称 |
---|---|
特小型 | Standard_A1_v2 |
Small | Standard_A1_v2 |
中型 | Standard_A2_v2 |
大型 | Standard_A4_v2 |
超大型 | Standard_A8_v2 |
A5 | Standard_A2m_v2 |
A6 | Standard_A4m_v2 |
A7 | Standard_A8m_v2 |
A8 | 已放弃 |
A9 | 已放弃 |
A10 | 已放弃 |
A11 | 已放弃 |
MSODSG5 | 已放弃 |
例如,<WorkerRole name="WorkerRole1" vmsize="Medium"
将变为 <WorkerRole name="WorkerRole1" vmsize="Standard_A2"
。
注意
若要检索可用大小列表,请参阅资源 SKU - 列表并应用以下筛选器:
ResourceType = virtualMachines
VMDeploymentTypes = PaaS
2) 删除旧远程桌面插件
利用旧远程桌面插件的部署需要将模块从服务定义 (.csdef) 文件以及任何关联的证书中删除。
<Imports>
<Import moduleName="RemoteAccess" />
<Import moduleName="RemoteForwarder" />
</Imports>
利用旧诊断插件的部署需要为服务定义 (.csdef) 文件中的每个角色删除设置
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" />
访问控制
对于云服务(外延支持),包含网络资源的订阅需要具有网络参与者访问权限或更高权限。 有关详细信息,请参阅 RBAC 内置角色
创建密钥保管库
Key Vault 用于存储与云服务(外延支持)关联的证书。 将证书添加到密钥保管库,然后引用服务配置文件中的证书指纹。 还需要为“用于部署的 Azure 虚拟机”启用 Key Vault“访问策略(在门户中),以便云服务(外延支持)资源可从 Key Vault 检索存储为机密的证书。 可以在 Azure 门户中创建密钥保管库,也可以使用 PowerShell 创建。 该密钥保管库必须在云服务所在的区域和订阅中创建。 有关详细信息,请参阅在 Azure 云服务(外延支持)中使用证书。
后续步骤
- 查看云服务(外延支持)的部署先决条件。
- 使用 Azure 门户、PowerShell、模板或 Visual Studio 部署云服务(外延支持)。
- 请参阅云服务(外延支持)的常见问题解答。
- 访问云服务(外延支持)示例存储库