Compartir a través de

为节点类型使用临时 OS 磁盘的 Service Fabric 托管群集简介

默认情况下,Azure Service Fabric 托管群集对给定节点类型中的节点使用托管 OS 磁盘。 为了提高成本效益,托管群集提供临时 OS 磁盘的配置。 临时 OS 磁盘在本地虚拟机 (VM) 存储中创建,不保存到远程 Azure 存储。 临时 OS 磁盘免费,并取代托管 OS 磁盘。

临时 OS 磁盘的主要优点包括:

  • 较低的读/写延迟,临时磁盘节点缩放和群集升级速度较快。
  • 受市场、自定义映像和 Azure Compute Gallery(以前称为共享映像库)支持。
  • 能够将 VM 和规模集实例或其映像快速重置为原始启动状态。
  • 在所有 Azure 区域中可用。

如果应用程序可以容忍单个 VM 故障,但受 VM 部署时间或单个 VM 实例重置映像的影响,则使用临时 OS 磁盘更好。 它们不像托管 OS 磁盘那样提供数据备份/还原保证。

本文介绍如何使用 Azure 资源管理器模板(ARM 模板)创建专门使用临时 OS 磁盘的 Service Fabric 托管群集节点类型。

先决条件

本指南基于托管群集快速入门指南:使用 Azure 资源管理器部署 Service Fabric 托管群集

开始之前:

  • 如果没有 Azure 订阅,请创建一个试用版订阅
  • 检索托管群集 ARM 模板。 GitHub 上的 Azure 示例中提供了示例资源管理器模板。 这些模板可用作群集模板的起点。
  • 主要和辅助节点类型均支持临时 OS 磁盘。 本指南演示如何部署具有两种节点类型(主要节点和辅助节点)的标准 SKU 群集,它使用临时 OS 磁盘。
  • 每个 SKU 均不支持临时 OS 磁盘。 DSv1、DSv2、DSv3、Esv3、Fs、FsV2、GS、M、Mdsv2、Bs、Dav4 和 Eav4 等 VM 大小支持临时 OS 磁盘。 确保要使用其进行部署的 SKU 支持临时 OS 磁盘。 有关各个 SKU 的详细信息,请参阅支持的 VM SKU,并导航到左侧窗格中的所需 SKU。
  • Service Fabric 中的临时 OS 磁盘放在 VM SKU 的临时磁盘空间。 确保使用的 VM SKU 具有超过 127 GiB 的临时磁盘空间来放置临时 OS 磁盘。

查看模板

本指南中使用的模板来自 Azure 示例 - Service Fabric 群集模板

创建客户端证书

Service Fabric 托管群集使用客户端证书作为访问控制的密钥。 如果已有要用于群集访问控制的客户端证书,则可以跳过此步骤。

如果需要创建新的客户端证书,请按照设置和检索 Azure 密钥保管库中的证书中的步骤进行操作。 记下证书指纹,因为下一步需要使用它来部署模板。

部署模板

  1. 用于临时 OS 磁盘的 Service Fabric 群集示例模板中选取模板,其中包括临时 OS 磁盘支持的规范。

  2. 为以下模板参数提供自己的值:

    • 订阅:选择 Azure 订阅。
    • 资源组:选择“新建”。 输入资源组的唯一名称(例如 myResourceGroup),然后选择“确定”。
    • 位置:选择一个位置。
    • 群集名称:输入群集的唯一名称,例如 mysfcluster。
    • 管理员用户名:输入要在群集中的基础 VM 上用于 RDP 的管理员名称。
    • 管理员密码:输入要在群集中的基础 VM 上用于 RDP 的管理员密码。
    • 客户端证书指纹:提供要用于访问群集的客户端证书的指纹。 如果没有证书,请按照设置和检索证书中的说明来创建自签名证书。
    • 节点类型名称:输入节点类型的唯一名称,例如 nt1。
  3. 通过下面一种方法部署 ARM 模板:

    • ARM 门户自定义模板体验:自定义部署 - Azure。 选择下图以登录到 Azure,并为模板参数提供自己的值,然后部署模板。

      部署到 Azure

    • ARM PowerShell cmdlet:New-AzResourceGroupDeployment (Az.Resources)。 将 ARM 模板和参数文件的路径存储在变量中,然后部署模板。

      $templateFilePath = "<full path to azuredeploy.json>"
      $parameterFilePath = "<full path to azuredeploy.parameters.json>"
      
      New-AzResourceGroupDeployment ` 
         -Name $DeploymentName ` 
         -ResourceGroupName $resourceGroupName ` 
         -TemplateFile $templateFilePath ` 
         -TemplateParameterFile $parameterFilePath `
         -Debug -Verbose
      

    等待部署成功完成。

  4. 若要配置节点类型以通过自己的模板使用临时 OS 磁盘:

    • 使用 Service Fabric API 版本 2022-06-01-preview 或更高版本
    • 编辑模板 azuredeploy.json,并在节点类型部分下添加以下属性:
      "properties": { 
      "useEphemeralOSDisk": true 
      }
      

    示例模板包括以下规范:Azure-Sample - Service Fabric 群集模板

迁移为针对 Service Fabric 托管群集节点类型使用临时 OS 磁盘

节点类型只能在创建时配置为使用临时 OS 磁盘。 无法将现有节点类型转换为使用临时 OS 磁盘。 对于所有迁移方案,请将使用临时 OS 磁盘的新节点类型添加到群集,并将服务迁移到该节点类型。

  1. 添加配置为使用前面所指定临时 OS 磁盘的新节点类型。
  2. 将任何所需工作负荷迁移到新节点类型。
  3. 在群集中禁用并删除旧节点类型。

后续步骤