在 Azure Stack Hub 上运行Windows虚拟机

在Azure Stack Hub中预配虚拟机(VM)需要除 VM 本身之外的某些附加组件,包括网络和存储资源。 本文介绍在Azure上运行Windows VM 的最佳做法。

Azure Stack Hub 上 Windows VM 的体系结构

资源组

资源组是包含相关Azure Stack Hub资源的逻辑容器。 一般情况下,可根据资源的生存期及其管理者将资源分组。

将共享相同生命周期、密切相关的资源放入同一资源组。 资源组可让你以组的形式部署和监视资源,并按资源组跟踪计费成本。 可以成组删除资源,这对于测试部署很有用。 指定有意义的资源名称,以便简化特定资源的查找并了解其角色。 有关详细信息,请参阅 针对 Azure 资源的推荐命名约定

虚拟机

可以从已发布映像列表中预配虚拟机,或者使用已上传到 Azure Stack Hub Blob 存储的自定义托管映像或虚拟硬盘 (VHD) 文件来预配虚拟机。

Azure Stack Hub提供与Azure不同的虚拟机大小。 有关详细信息,请参阅 Azure Stack Hub 中虚拟机的大小。 如果要将现有工作负荷移到Azure Stack Hub,请从与本地服务器/Azure最匹配的 VM 大小开始。 然后从 CPU、内存和每秒磁盘输入/输出操作次数 (IOPS) 等方面测量实际工作负荷的性能,并根据需要调整大小。

Disks

成本取决于预配磁盘的容量。 IOPS 和吞吐量(即数据传输速率)取决于 VM 大小,因此预配磁盘时,请考虑所有三个因素(容量、IOPS 和吞吐量)。

Azure Stack Hub上的磁盘 IOPS(每秒输入/输出操作数)是 VM 大小而不是磁盘类型的函数。 这意味着,对于Standard_Fs系列 VM,无论为磁盘类型选择 SSD 还是 HDD,单个附加数据磁盘的 IOPS 限制为 2300 IOPS。 设置的 IOPS 限制是一个上限(即可能达到的最大值),用于防止噪声邻居问题。 这并不保证你在特定 VM 规格上能够获得的 IOPS。

我们还建议使用 托管磁盘。 Managed disks通过管理你的存储来简化磁盘管理。 托管磁盘不需要存储帐户。 只需指定磁盘的大小和类型,并将其部署为高度可用的资源。

操作系统磁盘是存储在 Azure Stack Hub Blob 存储中的 VHD,因此即使主机停机,该磁盘中的数据仍会保留。 我们还建议创建一个或多个数据磁盘(用于保存应用程序数据的持久性 VHD)。 如果可能,请将应用程序安装在数据磁盘上,而不是 OS 磁盘上。 某些旧版应用程序可能需要将组件安装在 C: 驱动器上;在这种情况下,可使用 PowerShell 重设 OS 磁盘的大小

VM 还使用临时磁盘(Windows上的 D: 驱动器)创建。 此磁盘存储在Azure Stack Hub存储基础结构中的临时卷上。 在重新启动和其他 VM 生命周期事件期间,可能会将其删除。 只使用此磁盘存储临时数据,如页面文件或交换文件。

网络

网络组件包括以下资源:

  • 虚拟网络。 每个 VM 都会部署到可细分为多个子网的虚拟网络中。

  • 网络接口 (NIC) 。 NIC 使 VM 能够与虚拟网络进行通信。 如果需要 VM 的多个 NIC,请注意,为每个 VM 大小定义了最大 NIC 数。

  • 公共 IP 地址/VIP。 需要公共 IP 地址才能与 VM 通信,例如,通过远程桌面(RDP)。 公共 IP 地址可以是动态的或静态的。 默认是动态的。

  • 如果需要不更改的固定 IP 地址,请保留 静态 IP 地址 ,例如,如果需要创建 DNS“A”记录或将 IP 地址添加到安全列表。

  • 还可以为 IP 地址创建完全限定的域名 (FQDN)。 然后,可以在 DNS 中注册指向 FQDN 的 CNAME 记录。 有关详细信息,请参阅在 Azure 门户中创建完全限定的域名

  • 网络安全组 (NSG) 。 NSG 用于允许或拒绝发到 VM 的网络流量。 NSG 可与子网或单个 VM 实例相关联。

所有 NSG 都包含一组默认规则,其中包括阻止所有入站 Internet 流量的规则。 无法删除默认规则,但其他规则可以覆盖它们。 若要启用 Internet 流量,请创建允许入站流量到特定端口的规则-例如,用于 HTTP 的端口 80。 若要启用 RDP,请添加允许 TCP 端口 3389 的入站流量的 NSG 规则。

操作

诊断。 启用监视和诊断,包括基本运行状况指标、诊断基础结构日志和启动诊断。 如果 VM 陷入不可启动状态,启动诊断有助于诊断启动故障。 创建用于存储日志的 Azure 存储帐户。 标准的本地冗余存储 (LRS) 帐户足以存储诊断日志。 有关详细信息,请参阅 启用监控和诊断

可用性。 由于Azure Stack Hub操作员计划内维护,VM 可能会重启。 为了在 Azure 中实现多 VM 生产系统的高可用性,VM 放置在一个可用性集中,将 VM 分散到多个容错域和更新域。 在规模较小的 Azure Stack Hub 中,可用性集中的容错域被定义为缩放单元中的单个节点。

虽然 Azure Stack Hub 的基础结构已具备故障恢复能力,但如果发生硬件故障,其底层技术(故障转移群集)仍会导致位于受影响物理服务器上的虚拟机出现一定时间的停机。 为了与 Azure 保持一致,Azure Stack Hub 支持的可用性集最多有三个容错域。

故障域

放置在可用性集中的 VM 将通过尽可能均匀地分散到多个容错域(Azure Stack Hub节点)上,以物理方式相互隔离。 如果出现硬件故障,则来自故障容错域的 VM 将在其他容错域中重启。 如果可能,它们将与其他 VM 分处不同的容错域,但仍位于同一可用性集中。 当硬件重新联机时,将重新平衡 VM 以保持高可用性。

更新域名

更新域是 Azure 在可用性集中提供高可用性的另一种方式。 更新域是基础硬件的逻辑组,可以同时进行维护。 位于同一更新域中的 VM 将在计划内维护期间一起重启。 当租户在可用性集中创建虚拟机时,Azure 平台会自动将虚拟机分配到这些更新域中。

在Azure Stack Hub中,VM 在更新基础主机之前,会跨群集中的其他联机主机实时迁移。 由于主机更新期间没有租户停机,因此Azure Stack Hub上的更新域功能仅适用于与Azure的模板兼容性。 可用性集中的 VM 在门户中其更新域编号将显示为 0。

Backups 有关保护 Azure Stack Hub IaaS VM 的建议,请参阅保护部署在 Azure Stack Hub 上的 VM。

正在停止虚拟机。 Azure 对“已停止”和“已解除分配”状态进行了区分。 当虚拟机的状态为“已停止”时将产生费用,但当虚拟机的状态为“已解除分配”时则不会产生费用。 在 Azure Stack Hub 门户中,Stop 按钮会解除分配该 VM。 如果在已登录时通过操作系统关闭,虚拟机(VM)会被停止,但不会解除资源分配,因此仍会产生费用。

删除 VM。 如果删除 VM,则不会删除 VM 磁盘。 这意味着可以安全地删除 VM,而不会丢失数据。 但是,你仍会为存储付费。 若要删除 VM 磁盘,请删除托管磁盘对象。 要防止意外删除,请使用资源锁锁定整个资源组或锁定单个资源(如 VM)。

安全注意事项

将 VM 载入Azure 安全中心,以获取Azure资源的安全状态的中心视图。 安全中心监视潜在的安全问题,并全面了解部署的安全运行状况。 安全中心按每个 Azure 订阅分别进行配置。 按照 将Azure订阅加入安全中心标准版中所述启用安全数据收集。 启用数据收集后,安全中心会自动扫描在该订阅下创建的任何 VM。

补丁管理。 若要在 VM 上配置修补程序管理,请参阅 本文 。 如果启用,安全中心将检查是否缺少任何安全和关键更新。 使用 VM 上的组策略设置可启用自动系统更新。

反恶意软件。 如果启用,安全中心将检查是否安装了反恶意软件。 还可以使用安全中心从 Azure 门户中安装反恶意软件。

访问控制。 使用基于角色的访问控制(RBAC)来控制对 Azure 资源的访问。 RBAC 允许向 DevOps 团队成员分配授权角色。 例如,“读者”角色可以查看 Azure 资源,但不能创建、管理或删除这些资源。 某些权限特定于 Azure 资源类型。 例如,“虚拟机参与者”角色可以执行重启或解除分配 VM、重置管理员密码、创建新的 VM 等操作。 对于此体系结构可能有用的其他 内置 RBAC 角色 包括 开发测试实验室用户网络参与者

注释

RBAC 不会限制用户登录到 VM 可以执行的操作。 这些权限由来宾 OS 上的帐户类型决定。

审核日志。 使用 活动日志 查看预配操作和其他 VM 事件。

数据加密。 Azure Stack Hub使用 BitLocker 128 位 AES 加密来保护存储子系统中的用户和基础结构静态数据。 有关更多信息,请参阅Azure Stack Hub 中的静态数据加密

后续步骤