你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 设备注册表 将有关资产和设备的信息存储在云中。 设备注册表将资产在云中投影为 Azure 资源,并集中管理于一个注册表中。 单个注册表是设备和资产元数据以及资产管理功能的真相来源。 设备注册表可与 Azure IoT作结合使用。
使用 Azure 时, 可靠性是共同的责任。 Microsoft提供了一系列功能来支持复原和恢复。 你负责了解这些功能如何在你使用的所有服务中工作,并选择满足业务目标和运行时间目标所需的功能。
本文介绍如何使设备注册表能够应对各种潜在的中断和问题,包括暂时性故障、可用区中断和区域中断。
Note
Azure IoT 运营包括设备注册表以外的各种其他组件。 有关 Azure IoT 操作组件的高可用性和零数据丢失功能的详细信息,请参阅 Azure IoT 操作常见问题解答。
暂时性故障的复原能力
暂时性故障是指组件发生短暂的间歇性故障。 这些故障经常出现在云之类的分布式环境中,在运营过程中比较常见。 暂时性故障在短时间内自行纠正。 重要的是,应用程序可以处理暂时性故障,处理方式通常是重试受影响的请求。
与任何云托管的 API、数据库和其他组件通信时,所有云托管的应用程序都应遵循 Azure 暂时性故障处理指南。 有关详细信息,请参阅 处理暂时性故障的建议。
客户端使用 Azure 资源管理器与设备注册表交互。 通常,使用 Azure 门户、Azure CLI 或 Azure SDK 与设备注册表资源进行交互,这些工具提供对暂时性故障的自动处理。 如果直接使用资源管理器 API,请确保处理暂时性故障。
应对可用区故障的弹性
可用性区域 是在物理上彼此独立的数据中心群组,位于同一个 Azure 区域内。 当一个区域发生故障时,服务可以故障转移到其他区域。
默认情况下,Azure 设备注册表是区域冗余的,这意味着它会自动跨多个 可用性区域复制数据。 此设置通过提供高可用性来增强服务的复原能力。 如果一个区域中发生故障,服务可继续从另一个区域无缝运行。
Microsoft 管理 Azure 设备注册表中区域冗余的设置和配置。 无需再执行任何配置来启用此区域冗余。 Microsoft 确保服务配置为提供最高级别的可用性和可靠性。
区域支持
以下区域列表支持设备注册表中的可用性区域:
| 美洲 | 欧洲 |
|---|---|
| 美国东部 | 德国中西部 |
| 美国东部 2 | 北欧 |
| 美国西部 | 西欧 |
| 美国西部 2 | |
| 美国西部 3 |
Cost
无需额外付费即可使用设备注册表的区域冗余。
配置可用性区域支持
新资源: 在 Azure IoT作中创建设备注册表资源时,默认情况下会自动包含区域冗余。 无需再执行任何配置。
所有区域正常时的行为
以下信息描述了具有区域冗余设备注册表且所有可用性区域都正常运行时会发生什么情况:
区域之间的流量路由: 请求会自动分布在每个可用性区域。 请求可能会转到任何可用性区域中的设备注册表实例。
区域之间的数据复制: 设备数据跨可用性区域同步复制。
区域故障期间的行为
以下信息描述了当您有一个区域冗余设备注册表且一个可用性区域发生故障时会出现的情况。
- 检测和响应: 由于设备注册表自动检测并响应可用性区域中的故障,因此无需执行任何作即可启动可用性区域故障转移。
- 通知:当区域关闭时,Microsoft不会自动通知你。 但是,可以使用 Azure 服务运行状况 来了解服务的总体运行状况,包括任何区域故障,并且可以设置 服务运行状况警报 来通知问题。
活动请求: 某些活动请求可能会被删除,因此可能需要以与其他暂时性故障相同的方式重试。 若要确保应用程序对任何暂时性故障具有弹性,请参阅 暂时性故障的弹性。
预期数据丢失: 区域故障不应导致任何数据丢失。
预期的停机时间: 区域故障不应导致资源停机。
区域恢复
当可用性区域恢复时,设备注册表会自动恢复该可用性区域中的操作。
测试区域故障
设备注册表平台管理跨可用性区域的流量路由、故障转移和故障回复。 你不需要开始任何事情。 由于此功能是完全管理的,因此无需验证可用区故障处理流程。
对区域范围的故障的复原能力
设备注册表是单区域服务。 如果区域不可用,则设备注册表资源也不可用。
但是,注册表的数据会被复制到配对区域。 如果某个区域长时间中断,Microsoft 可能会考虑将服务故障转移到配对区域。 如果发生这种情况,注册表将继续在配对区域中可用。
区域支持
在设备注册表可用的所有区域中,默认的复制和故障转移均受支持,因为这些区域都是成对的。
Cost
跨区域数据复制或故障转移无需额外费用。
配置复制并准备故障转移
默认情况下,当在成对区域中创建设备注册表资源时,会自动配置跨区域数据复制。 此过程是默认选项,无需你进行干预。
当所有区域都正常时的行为
本部分介绍为跨区域复制和故障转移配置设备注册表时会发生什么情况,以及主要区域正在运行的情况。
区域之间的数据复制: 数据自动复制到配对区域。 复制以异步方式发生,这意味着如果发生故障转移,则预期会丢失某些数据。
区域之间的流量路由: 在正常作中,流量仅流向主要区域。
区域故障期间的行为
本部分介绍为设备注册表配置跨区域复制和故障转移,以及主要区域发生中断时会发生的情况。
检测和响应: 如果主要区域丢失,Microsoft 可以决定执行故障转移。 在主要区域丢失后,此过程可能需要几个小时,在某些情况下甚至更长的时间。 设备注册表资源的故障转移可能不会与其他 Azure 服务同时发生。
通知: 可以通过 Azure 服务运行状况监视区域故障事件。 设置警报以接收区域级别问题的通知。
活动请求: 主要区域在故障转移期间正在处理的任何请求都可能会丢失。 故障转移完成后,客户端应重试请求。
预期数据丢失: 数据以异步方式复制到配对区域。 因此,故障转移后预期会出现一些数据丢失。 在发生区域故障转移后,预计数据丢失不超过 15 分钟。
预期不可用时间:从区域丢失到资源可在配对区域提供,预计大约有 24 小时的不可用时间。
流量重新路由: 在故障转移过程中,设备注册表将更新 DNS 记录以指向配对区域。 所有后续请求都会发送到配对区域。
在注册表的故障转移操作完成后,预计设备和后端应用程序的所有操作都能继续运行,而无需手动干预。
区域恢复
当主要区域恢复时,设备注册表会自动恢复该区域的操作。
针对区域故障进行测试
设备注册表平台跨配对区域管理流量路由、故障转移和故障回复。 你不需要开始任何事情。 由于此功能完全由系统管理,因此无需验证配对区域故障处理过程。