快照是应用配置存储中键值对的一个具有名称且不可变的子集。 构成快照的键值是在创建期间通过使用键和标签筛选器选择的。 创建快照后,其中的键值将保证保持不变。
使用快照安全地部署
快照旨在用于安全地部署配置变更。 如果将错误的配置更改部署到正在运行的环境中,可能会导致服务中断和数据丢失等问题。 为了避免此类问题,在迁移到生产环境之前,必须能够对配置更改进行审核。 如果确实发生此类问题,必须能够回滚任何错误的配置更改,以便还原服务。 创建快照是为了管理这些场景。
应以受控、一致的方式部署配置更改。 开发人员可以使用快照进行受控的逐步发布。 要开始受控推出,需要在应用程序中进行的唯一更改是更新应用程序所引用的快照的名称。 当应用程序进入生产环境时,可以保证所引用的快照中的配置保持不变。 这种保证可避免快照中的任何更改,防止意外设置进入生产环境。 快照的不可变性和便于引用的特性,使得安全地部署正确的一组配置更改变得简单。
使用快照的场景
受控发布:由于具有不可变性,快照非常适合用于支持受控发布。 当开发人员使用快照管理配置时,他们可以确信,随着发布流程推进到上线的不同阶段,配置始终保持不变。
最后已知良好 (LKG) 配置:快照可用于支持配置的安全部署实践。 通过快照,开发人员可以确保在部署过程中出现问题时,有可用于回滚的最后已知良好(LKG)配置。
配置版本控制:快照可用于创建配置设置的版本历史记录,以便与发布版本同步。 可比较在每个快照中捕获的设置,以识别版本之间的更改。
审计:使用快照进行审计和合规。 开发者可以通过使用版本快照来记录版本之间的配置变更。
测试和过渡环境:快照可用于创建一致的测试和过渡环境。 开发人员可以使用相同的快照来确保在不同的环境中使用相同的配置,这有助于进行调试和测试。
简化客户端配置组合:通常,应用配置客户端需要从应用配置实例中提取部分键值。 没有快照时,客户端需要代码中的查询逻辑来获取所需的键值。 由于快照在创建时支持过滤器,客户端可以按名称引用所需的键值集合。
快照操作
因为快照是不可变的,你可以创建和归档它们,但不能删除、清除或编辑它们。
创建快照:可通过定义键和标签筛选器来创建快照,从应用程序配置实例捕获所需的键值。 经过筛选的键值存储为快照,其名称在创建期间提供。
存档快照:存档快照会将其置于存档状态。 虽然快照已存档,但它仍完全正常运行。 存档快照时,会根据在创建快照期间配置的保持期设置过期时间。 如果快照在过期之前一直处于存档状态,则在过期时间后,快照将自动从系统中消失。 归档用于逐步停用已不再使用的快照。
恢复快照:恢复快照会使其恢复为活动状态。 此时,快照不再因其配置的保留期而过期。 只能在存档后的保持期内进行恢复。
注释
只能在创建快照期间设置保持期。 对于标准层和高级层存储,保留期的默认值为 30 天,免费层和开发人员层存储的默认值为 7 天。
快照操作要求
以下部分详细介绍了使用 Microsoft Entra ID 和 HMAC 身份验证执行快照相关操作所需的权限。
创建快照
要使用 Microsoft Entra 身份验证在存储中创建快照,需要具备以下权限。 Azure 应用程序配置“数据所有者”角色已拥有这些权限。
Microsoft.AppConfiguration/configurationStores/keyvalues/readMicrosoft.AppConfiguration/configurationStores/snapshots/write
若要使用 HMAC 身份验证创建快照,必须使用读写访问密钥。
存档和恢复快照
要使用 Microsoft Entra 身份验证存档和/或恢复快照,需要以下权限。 Azure 应用程序配置“数据所有者”角色已拥有此权限。
Microsoft.AppConfiguration/configurationStores/snapshots/archive/action
若要使用 HMAC 身份验证存档和/或恢复快照,必须使用读写访问密钥。
查看和列出快照
要列出所有快照或按名称获取单个快照中的所有键值,你需要为使用 Microsoft Entra 认证的商店获得以下权限。 内置的数据所有者和数据阅读器角色已经包含了这个权限。
Microsoft.AppConfiguration/configurationStores/snapshots/read
对于使用 HMAC 身份验证的存储,可使用读写访问密钥或只读访问密钥执行“读取快照”操作(从快照中读取键值)和“列出快照”操作。
计费注意事项和限制
应用配置有四个层:免费层、开发人员层、标准层和高级层。 下表汇总了每个层的快照存储配额:
| 层 | 快照存储配额 |
|---|---|
| 免费 | 10 MB |
| 开发人员 | 500 MB |
| 标准 | 1GB |
| 高级 | 4 GB |
可以根据需要创建任意数量的快照,前提是所有活动快照和存档快照的总存储大小不超过层的配额。 单个快照的最大大小为 1 MB。