计划内维护事件的提前通知(预览版)
适用于:Azure SQL 数据库
Azure SQL 托管实例
提前通知(预览版)适用于配置为使用非默认维护时段的数据库和具有任何配置(包括默认配置)的托管实例。 使用提前通知,客户可以将通知配置为最多在发生任何计划事件前的 24 小时内发送。
可以配置通知,以便可以在接下来的 24 小时内按计划开始计划内维护时获取文本和电子邮件。 在维护开始和结束时,将发送其他通知。
重要
对于 Azure SQL 数据库,无法为“系统默认”维护时段选项配置提前通知。 选择除“系统默认”以外的其他维护时段,以配置和启用“提前通知”。
注意
虽然维护时段通常是可用的,但维护时段的高级通知在 Azure SQL 数据库和 Azure SQL 托管实例的公共预览中。
配置提前通知
提前通知适用于配置了维护时段的 Azure SQL 数据库和具有任何配置(包括默认配置)的托管实例。
若要启用通知,请完成以下步骤。
转到计划内维护页,选择“运行状况警报”,然后选择“添加服务运行状况警报”。
在“范围”部分,选择订阅。
在“条件”部分,配置要针对其发出警报的服务、区域和条件。 对于更多通用警报,请选择所有值。 若要缩小范围,请选择“Azure SQL 数据库”或“Azure SQL 托管实例”服务、部署了这些服务的区域,并且对于事件类型,请选择“计划内维护”。
重要
服务运行状况正在分阶段推出全新体验。 一些用户将获得更新体验,其他用户仍将获得经典的服务运行状况门户体验。 如果你仍然看到经典的服务运行状况门户,则对于“区域”,请不要选择“全局”选项,而是选择特定区域或所有区域。
在“操作”部分,选择现有操作组或创建一个新操作组。
在“详细信息”部分,定义警报的名称,并指定应在其中部署警报的资源组。
选择“查看 + 创建”即可创建警报。
已经完成全部设置。 下次发生计划内 Azure SQL 维护事件时,你将收到提前通知。
若要详细了解如何创建运行状况警报,请访问 Azure 服务运行状况
接收通知
下表显示了你可能会收到的一般信息通知:
状态 | 说明 |
---|---|
已计划 | 在发生维护事件前的 24 小时内收到。 计划在下午 5 点至上午 8 点1(当地时间)之间的日期范围内在 xyz 区域进行维护。 |
InProgress | 正在启动对区域“xyz”中的数据库的维护。 |
完成 | xyz 区域中的数据库维护已完成。 |
1 开始时间和结束时间取决于所选的维护时段。
下表显示了在进行维护时可能会发送的其他通知:
状态 | 说明 |
---|---|
重新计划 | 1) 正在进行维护,但未在维护时段内完成。 2) 在维护过程中出现问题,无法启动。 3) 计划内维护已启动,但无法进行到最后,将在下一个维护时段继续。 |
已取消 | xyz 区域中的数据库维护已取消,稍后将重新计划。 |
权限
虽然可以将提前通知发送到任何电子邮件地址,但 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) 资源管理器中,你可能会发现部署状态的值与通知内容中显示的值略有不同。
状态 | 说明 |
---|---|
挂起 | 1) 计划在即将到来的日期进行维护。 2) 先前计划的维护已重新计划,正在等待在下一个时段启动。 3) 维护已在上一个时段中启动但未完成,将在下一个时段中继续。 |
InProgress | 资源“xyz”的维护正在启动或正在进行中。 |
已完成 | 对资源 xyz 的维护已完成。 |
NoUpdatesPending | 资源 xyz 之前的计划内维护已取消,并重新计划在以后进行。 |
RetryLater | 资源 xyz 的计划内维护已启动,但无法进行到最后,将在下一个维护时段继续。 |
有关示例查询的完整参考以及如何跨 PowerShell 或 Azure CLI 等工具使用这些查询,请访问适用于 Azure 服务运行状况的 Azure Resource Graph 查询示例。