【Azure Container App】Key Vault的Secret修改导致Container App重启,是否有办法规避呢?

简介: 本文解析Container App因Key Vault密钥更新自动重启的原因:当环境变量引用的密钥(未指定版本)更新时,系统会触发RevisionRestartWithNewSecrets事件,在30分钟内自动重启以获取最新值。建议指定密钥版本以手动控制更新时机,避免非预期滚动重启。

问题描述

在查看Container App的Replica Count时候,发现它数量发生了变化,通常这意味着发生了重启了。

那么,是什么原因导致它重启了呢?

 

问题解答

可以从Container App的诊断日志 ContainerAppSystemLogs_CL中查看到有RevisionRestartWithNewSecrets事件,所以判断是Key Vault的Secret更新引起了 Container App 通过重启来获取最新值。

ContainerAppSystemLogs_CL
| where ContainerAppName_s == "<your-app-name>"
| where Reason_s == "RevisionRestartWithNewSecrets"
| project TimeGenerated, RevisionName_s, Reason_s, Log_s
| order by TimeGenerated desc

通过Environment variable 来引用secret 的任何active revision 都会自动重启来获取最新的值。

Key Vault机密 URI 必须具有以下格式之一:

如果 URI 中未指定版本,则应用将使用密钥保管库中存在的最新版本。

有更新的版本可用时,应用会在 30 分钟内自动检索最新版本。

在环境变量中引用机密的任何活动修订版都会自动重启,以选取新值。

若要完全控制使用哪个机密版本,请在 URI 中指定版本。

所以,如果想要手动来控制Container App何时更新Secret值,避免更新 Key Vault 的行为引起 Container App 的滚动重启(rollout restart),可以指定 Key Vault 内 Secret 的版本,在希望更新时再进行手动更新,如上图中的第一种方式。

 

参考资料

从密钥保管库引用机密(Azure Container Apps): https://docs.azure.cn/zh-cn/container-apps/manage-secrets?tabs=azure-portal#reference-secret-from-key-vault

 

 


当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

相关文章
|
2月前
|
Web App开发 人工智能 Cloud Native
一人买多用不完,多人分享被封号——"Key池化"破解 AI 订阅共享困局
Claude用户面临“独用浪费、共享封号”困局:Max 20x额度闲置,多人拼车却因IP跳变、指纹泄露等触发风控。Key池化方案通过本地代理+虚拟Key分发,实现额度共享而不共号,规避风控,降低成本(3人仅$200/月),提升安全与体验。
669 7
|
1月前
|
人工智能 安全 数据库连接
明文不扩散,日志仍可用:阿里云可观测敏感数据保护方案
AI Agent 日志既要防止敏感明文扩散,也要保留排障、分析与审计价值。本文介绍阿里云可观测如何通过脱敏、加密等能力,在采集、写入和加工环节构建敏感数据保护体系。
493 11
|
1月前
|
存储 Kubernetes 调度
|
1月前
|
Kubernetes 并行计算 算法框架/工具
|
1月前
|
缓存 UED 开发者
Codex109天重置23次,明天还要再送一次
Codex近109天完成23次额度重置,7月14日将迎来第24次。Tibo高频响应用户反馈:优化GPT-5.6高消耗问题、补发失效福利、调整重置时间——形成“反馈→回应→修复→补偿”正向闭环,彰显以用户为中心的产品哲学。(239字)
1745 12
运维 监控 Java
54 5
|
1月前
|
运维 前端开发 安全
【Azure App Service】解析 Azure App Service 中的 X-Ms-Forbidden-Ip 响应头
Azure App Service 的 `X-Ms-Forbidden-Ip` 响应头可辅助判断 403 是否由平台访问限制触发,标识被拒客户端IP。虽未正式文档化,但在受控链路中是实用排障线索,建议结合诊断日志综合验证。
357 3
【Azure App Service】解析 Azure App Service 中的 X-Ms-Forbidden-Ip 响应头
|
1月前
|
SQL 运维 关系型数据库
PolarDB-X 分布式数据库实战:从分库分表到云原生分布式的架构演进
单表 5000 万数据查询 3 秒,ShardingSphere 分库分表后运维噩梦——分片键选择、跨片查询、扩容迁移、分布式事务、运维复杂五大痛点轮番暴击。PolarDB-X 让应用零改造获得分布式能力,查询从 3 秒降到 80ms。本文从电商订单系统实战出发,深度拆解 PolarDB-X 的 CN/DN/GMS/CDC 架构,详解分片策略、分布式 SQL、分布式事务、读写分离、DDL 变更五大核心实战,提供 Spring Boot 集成完整代码和 ShardingSphere 迁移方案,附 6 维度量化对比和 5 个踩坑实录。