在 Azure SQL 托管实例中配置计划内维护事件的提前通知
适用于:Azure SQL 托管实例
使用提前通知,客户可以将通知配置为最多在发生任何计划事件前的 24 小时内发送。
可以配置通知,以便可以在接下来的 24 小时内按计划开始计划内维护时获取文本和电子邮件。 在维护开始时以及在维护结束时,还会发送后续通知。
配置提前通知
完成以下步骤,在 Azure 门户“服务运行状况”页中启用通知。
重要
服务运行状况分阶段推出新体验。 某些用户会看到更新后的 Azure 服务运行状况门户体验,其他用户仍会看到经典服务运行状况门户体验。 如果你仍然看到经典的服务运行状况门户,则对于“区域”,请不要选择“全局”选项,而是选择特定区域或所有区域。
转到服务运行状况页面,在“警报”下,选择“运行状况警报”。 然后选择“创建”。
在“范围”部分,选择订阅。
在“条件”部分,配置要针对其发出警报的服务、区域和条件。 对于更多通用警报,请选择所有值。 若要缩小范围,请选择 Azure SQL 托管实例即服务、已部署这些服务的区域以及事件类型的“计划内维护”。
在“操作”部分,选择现有操作组或创建一个新操作组。
在“详细信息”部分,定义警报的名称,并指定应在其中部署警报的资源组。
选择“标记”。 考虑使用 Azure 标记。 例如,用于确定资源创建者的“所有者”或“创建者”标记,以及确定此系统是生产环境还是开发环境等的“环境”标记。有关详细信息,请参阅为 Azure 资源开发命名和标记策略。
选择“查看 + 创建”。 警报会在接下来的几分钟内创建。
已经完成全部设置。 下次发生计划内 Azure SQL 维护事件时,你将收到提前通知。 若要详细了解如何创建运行状况警报,请访问 Azure 服务运行状况
跟踪 Azure SQL 托管实例维护事件
Azure 服务运行状况由三个独立的小服务组合而成,目的是让你了解云资源的运行状况。 这些信息包括当前和即将发生的问题,例如影响服务的事件、计划内维护以及其他可能影响可用性的更改。 服务运行状况(一项子服务)以个性化视图显示所使用 Azure 服务和区域的运行状况。 这是排查影响计划内维护活动的服务的最佳位置。
“服务运行状况”下的“计划内维护”页面会列出订阅上发生的所有维护活动。 可以使用内置筛选器缩小事件列表的范围,并按租户、订阅、区域或资源类型限定其范围。
从“服务运行状况 | 计划内维护”页面上的事件列表中,可以进一步导航到每个维护事件并检查详细信息。 具有相同跟踪 ID 的所有维护事件将在“问题更新”选项卡中显示。“受影响的资源”页面会列出受已发布维护事件影响的资源。
接收通知
下表显示了你可能会收到的常规信息通知:
状态 | 说明 |
---|---|
已计划 | 在发生维护事件前的 24 小时内收到。 计划在下午 5 点至上午 8 点1(当地时间)之间的日期范围内在 region_name 区域进行维护。 |
InProgress | 正在启动对区域“region_name”中的数据库的维护。 |
完成 | region_name 区域中的数据库维护已完成。 |
1 开始时间和结束时间取决于所选的维护时段。
下表显示了在进行维护时可能会发送的其他通知:
状态 | 说明 |
---|---|
重新计划 | - 正在进行维护,但未在维护时段内完成。 - 在维护过程中出现问题,无法启动。 - 计划内维护已启动,但无法进行到最后,将在下一个维护时段继续。 |
已取消 | region_name 区域中的数据库维护已取消,稍后将重新计划。 |
权限
虽然可以将高级通知发送到任何电子邮件地址,但 Azure 订阅基于角色的访问控制 (RBAC) 策略决定谁可以访问电子邮件中的链接。 Azure RBAC 访问管理涵盖了查询资源图。 要启用读取访问权限,每个收件人都应具有资源组级别的读取访问权限。 有关详细信息,请参阅分配 Azure 角色的步骤。
以编程方式检索受影响资源的列表
Azure Resource Graph 是可以扩展 Azure 资源管理的 Azure 服务。 Azure Resource Graph Explorer 提供高效且高性能的资源浏览。 可以在一组给定的订阅中进行大规模查询,以便有效地控制环境。
你可以使用 Azure Resource Graph Explorer 查询维护事件。 有关如何运行这些查询的介绍,请参阅快速入门:使用 Azure Resource Graph Explorer 运行第一个 Resource Graph 查询。
收到计划维护的高级通知后,你将获得一个链接,该链接将打开 Azure Resource Graph 并执行确切事件的查询,类似于以下内容。 每个维护事件的 notificationId
值是唯一的。
resources
| project resource = tolower(id)
| join kind=inner (
maintenanceresources
| where type == "microsoft.maintenance/updates"
| extend p = parse_json(properties)
| mvexpand d = p.value
| where d has 'notificationId' and d.notificationId == 'LNPN-R9Z'
| project resource = tolower(name), status = d.status, resourceGroup, location, startTimeUtc = d.startTimeUtc, endTimeUtc = d.endTimeUtc, impactType = d.impactType
) on resource
| project resource, status, resourceGroup, location, startTimeUtc, endTimeUtc, impactType
在 Azure Resource Graph (ARG) 资源管理器中,你可能会发现部署状态的值与通知内容中显示的值略有不同。
状态 | 说明 |
---|---|
挂起 | - 计划在即将到来的日期进行维护。 - 先前计划的维护已重新计划,正在等待在下一个时段启动。 - 维护已在上一个时段中启动但未完成,将在下一个时段中继续。 |
InProgress | 资源 region_name 的维护正在启动或正在进行中。 |
已完成 | 对资源 region_name 的维护已完成。 |
NoUpdatesPending | 资源 region_name 之前的计划内维护已取消,并重新计划在以后进行。 |
RetryLater | 资源 region_name 的计划内维护已启动,但无法进行到最后,将在下一个维护时段继续。 |
有关示例查询的完整参考以及如何跨 PowerShell 或 Azure CLI 等工具使用这些查询,请访问适用于 Azure 服务运行状况的 Azure Resource Graph 查询示例。