安装 Configuration Manager 的云分发点

适用于:Configuration Manager(当前分支)

警告

从 Azure 共享内容的实现已更改。 使用启用内容功能的云管理网关,方法是启用选项“允许 CMG 充当云分发点并提供 Azure 存储中的内容”。 有关详细信息,请参阅 修改 CMG

从版本 2107 开始,无法创建传统的云分发点(CDP)。

本文详细介绍了在 Microsoft Azure 中安装 Configuration Manager 云分发点的步骤。 它包括以下部分:

开始之前

首先阅读文章 “使用云分发点”。 本文可帮助你规划和设计云分发点。

使用以下清单确保拥有创建云分发点所需的信息和先决条件:

  • 站点服务器可以连接到 Azure。 如果网络使用代理,请配置站点系统角色

  • 要使用的 Azure 环境 。 例如,Azure 公有云或 Azure 美国政府云。

  • 使用 Azure 资源管理器部署。 它具有以下要求:

    • Microsoft Entra ID 集成以进行 云管理。 不需要 Microsoft Entra 用户发现。

    • Azure 订阅 ID

    • Azure 资源组

    • 订阅管理员帐户需要在向导期间登录。

  • 服务器 身份验证证书,导出为 .PFX 文件。

  • 云分发点的全局唯一 服务名称

    小提示

    在请求使用此服务名称的服务器身份验证证书之前,请确认所需的 Azure 域名是唯一的。 例如, WallaceFalls.CloudApp.Net

    1. 登录到 Azure 门户
    2. 选择 “所有资源”,然后选择“ 添加”。
    3. 搜索 云服务。 选择 创建
    4. DNS 名称 字段中,键入所需的前缀,例如 WallaceFalls。 接口反映域名是可用还是已被其他服务使用。

    不要在门户中创建服务,只需使用此过程来检查名称可用性。

  • 此部署的 Azure 区域

BranchCache(分支缓存)

若要启用云分发点以使用 Windows BranchCache,请在站点服务器上安装 BranchCache 功能。

  • 如果站点服务器具有本地分发点站点系统角色,请在该角色的属性中配置选项以 启用和配置 BranchCache。 有关详细信息,请参阅 配置分发点

  • 如果站点服务器没有分发点角色,请在 Windows 中安装 BranchCache 功能。 有关详细信息,请参阅 安装 BranchCache 功能

如果已将内容分发到云分发点,然后决定启用 BranchCache,请先安装该功能。 然后将内容重新分发到云分发点。

设置

警告

从版本 2107 开始,此操作不可用。 无法创建传统的云分发点(CDP)。 通过启用允许 CMG 充当云分发点并提供 Azure 存储中的内容 的选项,使用内容启用的云管理网关。 有关详细信息,请参阅 修改 CMG

根据 设计确定,在站点上执行此过程以托管此云分发点。

  1. 在 Configuration Manager 控制台中,转到 “管理 ”工作区,展开 云服务,然后选择“ 云分发点”。 在功能区中,选择“ 创建云分发点”。

  2. 在“创建云分发点向导”的 “常规 ”页上,配置以下设置:

    1. 首先指定 Azure 环境

    2. 选择 Azure 资源管理器部署 作为部署方法。 选择 “登录 ”以使用 Azure 订阅管理员帐户进行身份验证。 向导自动填充Microsoft Entra 集成先决条件期间存储的信息中的剩余字段。 如果拥有多个订阅,请选择要使用的所需 订阅的订阅 ID

  3. 选择“下一步”。 等待站点测试与 Azure 的连接。

  4. “设置” 页上,指定以下设置,然后选择“ 下一步” :

    • 区域:选择要在其中创建云分发点的 Azure 区域。

    • 资源组 (仅限 Azure 资源管理器部署方法)

      • 使用现有资源组:从下拉列表中选择现有资源组。

      • 新建:输入在 Azure 订阅中创建的新资源组名称。

    • 主站点:选择要将内容分发到此分发点的主站点。

    • 证书文件:选择 “浏览”,然后选择用于此云分发点服务器身份验证证书的 .PFX 文件。 此证书中的公用名将填充所需的 服务 FQDN 和服务 名称 字段。

      注释

      云分发点服务器身份验证证书支持通配符。 如果使用通配符证书,请将* 字段中的星号 () 替换为服务的所需主机名。

  5. “警报 ”页上,设置存储配额、传输配额,以及希望 Configuration Manager 生成警报的配额百分比。 然后选择下一步

  6. 完成安装向导。

显示器安装

站点开始为云分发点创建新的托管服务。 关闭向导后,在 Configuration Manager 控制台中监视云分发点的安装进度。 此外,监视主站点服务器上的 CloudMgr.log 文件。 如有必要,在 Azure 门户中监视云服务的预配。

注释

在 Azure 中预配新分发点最多可能需要 30 分钟。 CloudMgr.log文件重复以下消息,直到预配存储帐户:
Waiting for check if container exists. Will check again in 10 seconds
预配存储帐户后,将创建并配置该服务。

验证安装

使用以下方法验证云分发点安装是否已完成:

  • 在Configuration Manager控制台中,转到“管理”工作区。 展开 云服务,然后选择 “云分发点” 节点。 在列表中查找新的云分发点。 状态列应为 “就绪”。

  • 在Configuration Manager控制台中,转到“监视”工作区。 展开 系统状态,然后选择 “组件状态 ”节点。 显示 来自SMS_CLOUD_SERVICES_MANAGER 组件的所有消息,并查找状态消息 ID 9409

  • 如有必要,请转到 Azure 门户。 云分发点的 部署 显示 就绪状态。

配置 DNS

在客户端可以使用云分发点之前,它们必须能够将云分发点的名称解析为 Azure 管理的 IP 地址。 管理点向它们提供云分发点的 服务 FQDN。 云分发点以 服务名称的形式存在于 Azure 中。 在云分发点属性的 “设置” 选项卡上查看这些值。

注释

控制台中的 云分发点 节点包含名为 “服务名称”的列,但实际上显示 服务 FQDN 值。 若要查看这两个值,请打开云分发点 的属性 并切换到 “设置” 选项卡。

服务器身份验证证书公用名应包括域名。 从公共提供商购买证书时,需要此名称。 当您从 PKI 颁发此证书时,建议这样做。 例如,WallaceFalls.contoso.com。 在“创建云分发点向导”中指定此证书时,公用名将填充 Service FQDN 属性 (WallaceFalls.contoso.com)。 服务名称采用相同的主机名(WallaceFalls)并将其追加到 Azure 域名。 cloudapp.net 在此方案中,客户端需要将域 的服务 FQDNWallaceFalls.contoso.com)解析为 Azure 服务名称WallaceFalls.cloudapp.net)。 创建 CNAME 别名以映射这些名称。

创建 CNAME 别名

在组织的公共面向 Internet 的 DNS 中创建规范名称记录(CNAME)。 此记录为云分发点的 服务 FQDN 属性创建别名,将客户端接收到的属性映射到 Azure 的 服务名称。 例如,为WallaceFalls.contoso.com创建一个指向WallaceFalls.cloudapp.net的新CNAME记录。

客户端名称解析过程

以下过程演示客户端如何解析云分发点的名称:

  1. 客户端在内容源列表中获取云分发点的服务 FQDN。 例如,WallaceFalls.contoso.com

  2. 它查询 DNS,使用 CNAME 别名将服务的 FQDN 解析为 Azure 服务名称。 例如,WallaceFalls.cloudapp.net

  3. 它会再次查询 DNS,它将 Azure 服务名称解析为 Azure 公共 IP 地址。

  4. 客户端使用此 IP 地址开始与云分发点通信。

  5. 云分发点向客户端提供服务器身份验证证书。 客户端使用证书的信任链进行验证。

设置站点服务器代理

管理云分发点的主站点服务器需要与 Azure 通信。 如果你的组织使用代理服务器来控制 Internet 访问,请将主站点服务器配置为使用此代理。

有关详细信息,请参阅 代理服务器支持

分发内容并配置客户端

将内容分发到云分发点与任何其他本地分发点相同。 管理点只有在云分发点拥有客户端请求的内容时,才会将其包括在内容位置列表中。 有关详细信息,请参阅 “分发和管理内容”。

管理与任何其他本地分发点相同的云分发点。 这些作包括将其分配给分发点组和管理内容包。 有关详细信息,请参阅 安装和配置分发点

默认客户端设置会自动使客户端能够使用云分发点。 使用以下客户端设置控制对层次结构中所有云分发点的访问:

  • “云设置” 组中,修改“ 允许访问云分发点”设置。

    • 默认情况下,此设置设置为 “是”。

    • 为用户和设备修改和部署此设置。

管理和监视

监视内容分发到云分发点的过程,应与监视任何其他本地分发点的过程相同。 有关详细信息,请参阅 “监视内容”。

在控制台中查看云分发点列表时,可以向列表中添加其他列。 例如, “数据出口 ”列显示过去 30 天内从服务下载的数据客户端量。

警报

Configuration Manager 定期检查 Azure 服务。 如果服务未处于活动状态,或者存在订阅或证书问题,Configuration Manager 将发出警报。

为要存储在云分发点上的数据量以及客户端从分发点下载的数据量配置阈值。 使用这些阈值的警报可帮助你决定何时停止或删除云服务、调整存储在云分发点上的内容,或修改哪些客户端可以使用该服务。

  • 存储警报阈值:存储警报阈值对要在云分发点上存储的数据量或内容量设置上限(以 GB 为单位)。 默认情况下,此阈值为 2,000 GB。 当剩余可用空间达到指定的级别时,Configuration Manager 将生成警告和严重警报。 默认情况下,这些警报发生在阈值的 50% 和 90%。

  • 每月传输警报阈值:每月传输警报阈值可帮助你监视在 30 天内从分发点传输到客户端的内容量。 默认情况下,此阈值为 10,000 GB。 当传输达到定义的值时,站点会引发警告和严重警报。 默认情况下,这些警报发生在阈值的 50% 和 90%。

    重要

    Configuration Manager 监视数据传输,但不会停止超出指定传输警报阈值的数据传输。

指定安装过程中每个云分发点的阈值,或使用云分发点属性的 “警报 ”选项卡。

注释

云分发点的警报取决于 Azure 的使用情况统计信息,可能需要长达 24 小时才能可用。 有关适用于 Azure 的存储分析的详细信息,请参阅 存储分析

主站点每小时从 Azure 下载事务数据,以监视云分发点。 它将此事务数据存储在 CloudDP-<ServiceName>.log 站点服务器上的文件中。 然后,Configuration Manager 根据每个云分发点的存储和传输配额评估此信息。 当数据传输达到或超过针对警告或严重警报所指定的容量时,Configuration Manager 会生成相应的警报。

警告

由于站点每小时下载有关 Azure 数据传输的信息,因此,在 Configuration Manager 可以访问数据并引发警报之前,使用情况可能超过警告或严重阈值。

修改

在 Configuration Manager 控制台的管理工作区中的云服务下,查看云分发点节点中有关分发点的高级信息。 选择分发点,然后选择 “属性 ”以查看更多详细信息。

编辑云分发点的属性时,以下选项卡包括要编辑的设置:

设置

  • 说明

  • 证书文件:在服务器身份验证证书过期之前,颁发具有相同公用名的新证书。 然后在此处添加新证书,以便服务开始使用。 如果证书过期,客户端将不信任并使用该服务。

警报

调整存储和每月传输警报的数据阈值。

内容

以与本地分发点相同的方式管理内容。

重新部署服务

更重大的更改(如以下配置)需要重新部署服务:

  • Azure 资源管理器的经典部署方法
  • 订阅
  • 服务名称
  • 私有PKI到公共PKI转换
  • Azure 区域

如果经典部署方法上有现有的云分发点,若要使用 Azure 资源管理器部署方法,需要部署新的云分发点。 有两个选项:

  • 如果要重复使用相同的服务名称:

    1. 首先删除经典云分发点。 如果没有其他云分发点,则客户端可能无法获取内容。

    2. 使用 Resource Manager 部署创建新的云分发点。 重复使用同一服务器身份验证证书。

    3. 将必要的软件包内容分发到新的云分发点。

  • 如果要使用新的服务名称:

    1. 使用 Resource Manager 部署创建新的云分发点。 使用新的服务器身份验证证书。

    2. 将必要的软件包内容分发到新的云分发点。

    3. 删除经典云分发点。

小提示

若要确定云分发点的当前部署模型,请执行以下作:

  1. 在 Configuration Manager 控制台中,转到 “管理 ”工作区,展开 “云服务”,然后选择 “云分发点” 节点。
  2. 部署模型 属性作为列添加到列表视图。 对于资源管理器部署,此属性为 Azure 资源管理器

按需停止或启动云服务

在 Configuration Manager 控制台中随时停止云分发点。 此作会立即阻止客户端从服务下载其他内容。 从 Configuration Manager 控制台重启云服务,以还原客户端的访问权限。 例如,在云服务达到数据阈值时停止云服务。

停止云分发点时,云服务不会从存储帐户中删除内容。 它也不会阻止站点服务器将其他内容传输到云分发点。 管理点仍将云分发点作为有效的内容源返回到客户端。

使用以下过程停止云分发点:

  1. 在Configuration Manager控制台中,转到“管理”工作区。 展开 云服务,然后选择 “云分发点” 节点。

  2. 选择云分发点。 若要停止在 Azure 中运行的云服务,请选择功能区中的 “停止服务 ”。

  3. 选择 “启动服务 ”以重启云分发点。

删除云分发点

若要卸载云分发点,请在 Configuration Manager 控制台中选择分发点,然后选择“ 删除”。

从层次结构中删除云分发点时,Configuration Manager 将从 Azure 中的云服务中删除内容。

手动删除 Azure 中的任何组件会导致系统不一致。 此状态会留下孤立的信息,并可能出现意外的行为。

高级故障排除

如果需要从 Azure VM 收集诊断日志记录以帮助排查云分发点的问题,请使用以下 PowerShell 示例为订阅启用服务诊断扩展:

# Change these variables for your Azure environment. The current values are provided as examples. You can find the values for these from the Azure portal.
$storage_name="4780E38368358502‬‭23C071" # The name of the storage account that goes with the CloudDP
$key="3jSyvMssuTyAyj5jWHKtf2bV5JF^aDN%z%2g*RImGK8R4vcu3PE07!P7CKTbZhT1Sxd3l^t69R8Cpsdl1xhlhZtl" # The storage access key from the Storage Account view
$service_name="4780E38368358502‬‭23C071" # The name of the cloud service for the CloudDP, which for a Cloud DP is the same as the storage name
$azureSubscriptionName="8ba1cb83-84a2-457e-bd37-f78d2dd371ee" # The subscription name the tenant is using
$subscriptionId="8ba1cb83-84a2-457e-bd37-f78d2dd371ee" # The subscription ID the tenant is using

# This variable is the path to the config file on the local computer.
$public_config="F:\PowerShellDiagFile\diagnostics.wadcfgx"

# These variables are for the Azure management certificate. Install it in the Current User certificate store on the system running this script.
$thumbprint="dac9024f54d8f6df94935fb1732638ca6ad77c13" # The thumbprint of the Azure management certificate
$mycert = Get-Item cert:\\CurrentUser\My\$thumbprint

Set-AzureSubscription -SubscriptionName $azureSubscriptionName -SubscriptionId $subscriptionId -Certificate $mycert

Select-AzureSubscription $azureSubscriptionName

Set-AzureServiceDiagnosticsExtension -StorageAccountName $storage_name -StorageAccountKey $key -DiagnosticsConfigurationPath $public_config –ServiceName $service_name -Slot 'Production' -Verbose

以下示例是上述 PowerShell 脚本中public_config变量中引用的示例 diagnostics.wadcfgx 文件。 有关详细信息,请参阅 Azure 诊断扩展配置架构

<?xml version="1.0" encoding="utf-8"?>
<PublicConfig xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration">
  <WadCfg>
    <DiagnosticMonitorConfiguration overallQuotaInMB="4096">
      <Directories scheduledTransferPeriod="PT1M">
        <IISLogs containerName ="wad-iis-logfiles" />
        <FailedRequestLogs containerName ="wad-failedrequestlogs" />
      </Directories>
      <WindowsEventLog scheduledTransferPeriod="PT1M">
        <DataSource name="Application!*" />
      </WindowsEventLog>
      <Logs scheduledTransferPeriod="PT1M" scheduledTransferLogLevelFilter="Information" />
      <CrashDumps dumpType="Full">
        <CrashDumpConfiguration processName="WaAppAgent.exe" />
        <CrashDumpConfiguration processName="WaIISHost.exe" />
        <CrashDumpConfiguration processName="WindowsAzureGuestAgent.exe" />
        <CrashDumpConfiguration processName="WaWorkerHost.exe" />
        <CrashDumpConfiguration processName="DiagnosticsAgent.exe" />
        <CrashDumpConfiguration processName="w3wp.exe" />
      </CrashDumps>
      <PerformanceCounters scheduledTransferPeriod="PT1M">
        <PerformanceCounterConfiguration counterSpecifier="\Memory\Available MBytes" sampleRate="PT3M" />
        <PerformanceCounterConfiguration counterSpecifier="\Web Service(_Total)\ISAPI Extension Requests/sec" sampleRate="PT3M" />
        <PerformanceCounterConfiguration counterSpecifier="\Web Service(_Total)\Bytes Total/Sec" sampleRate="PT3M" />
        <PerformanceCounterConfiguration counterSpecifier="\ASP.NET Applications(__Total__)\Requests/Sec" sampleRate="PT3M" />
        <PerformanceCounterConfiguration counterSpecifier="\ASP.NET Applications(__Total__)\Errors Total/Sec" sampleRate="PT3M" />
        <PerformanceCounterConfiguration counterSpecifier="\ASP.NET\Requests Queued" sampleRate="PT3M" />
        <PerformanceCounterConfiguration counterSpecifier="\ASP.NET\Requests Rejected" sampleRate="PT3M" />
        <PerformanceCounterConfiguration counterSpecifier="\Processor(_Total)\% Processor Time" sampleRate="PT3M" />
      </PerformanceCounters>
    </DiagnosticMonitorConfiguration>
  </WadCfg>
</PublicConfig>