【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

 

 


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

相关文章
|
1月前
|
弹性计算 监控 Java
Maven 并行构建配置:-T 4C 提速 4 倍实战
本文深入讲解了 Maven 并行构建的核心原理和实战技巧,包含 -T 参数详解、模块并行化改造、性能监控与分析等企业级最佳实践。通过真实案例展示了如何将多模块项目的构建时间从 45 分钟缩短到 11 分钟(提升 4.1 倍),提供完整的性能测试脚本和优化检查清单。掌握这些技能,你将能够充分利用多核 CPU 加速 Maven 构建。适合 Java 开发者、架构师、DevOps 工程师阅读。
|
25天前
|
人工智能 自然语言处理 API
【Azure AI Search】Index的字段使用默认Analyzer(standard.lucene) 和 en.microsoft 有什么不同?
Azure AI Search英文检索因词形差异(如brief/briefs)无法匹配,根源在于analyzer选择:默认standard.lucene不处理词形还原,而en.microsoft支持lemmatization,可将变体还原为基本形式。需通过新增字段并配置en.microsoft analyzer解决,兼顾检索质量与业务需求。
237 124
|
24天前
|
人工智能 自然语言处理 API
【Azure AI Search】 stopword 是什么,为什么它会影响搜索结果?
本文解析 Azure AI Search 中搜索 &quot;in brief&quot; 返回结果过多的问题,指出根源在于 analyzer 对停用词(如 &quot;in&quot;)的处理差异:默认 `standard.lucene` 保留停用词导致泛匹配,而 `en.microsoft` 会过滤停用词,使结果更精准。关键在于根据业务语义选择合适 analyzer。
219 121
|
1月前
|
存储 人工智能 自然语言处理
拒绝“大模型幻觉”:一文彻底搞懂 RAG(检索增强生成)技术全流程
本文深入解析RAG(检索增强生成)技术,直击大模型落地私有知识场景的核心痛点——如何让LLM精准、低成本、高时效地基于企业文档作答。从文本分片、向量化索引,到召回重排、增强生成,系统拆解五大关键步骤,揭示RAG作为“AI外挂”的底层逻辑与工程实践精髓。
拒绝“大模型幻觉”:一文彻底搞懂 RAG(检索增强生成)技术全流程
|
1月前
|
传感器 人工智能 开发工具
Meta AI眼镜百万销量:AI硬件的iPhone时刻到了?
Meta Ray-Ban AI眼镜2026年Q1销量破百万,标志端侧多模态AI落地成熟。依托Llama 4端侧模型(4B参数)、实时多模态感知与云边协同,开启第一视角智能新范式。开发者可借SDK、数据集与硬件工具链抢占生态先机。
273 8
|
2月前
|
存储 人工智能 JSON
Litefuse 正式发布:Agent 可观测与效果评估, 比 Langfuse 成本低 88%
Litefuse 是一个 Agent 可观测与评估平台,兼容 Langfuse SDK 和 100 多个 AI 生态,并支持 Hermes、OpenClaw、Claude Code 等通用 Agent。存储成本比 Langfuse 降低 88%、简化部署架构、Trace 文本检索效率提升 10 倍,帮助团队以更低成本构建可靠的观测平台。
1192 9
Litefuse 正式发布:Agent 可观测与效果评估, 比 Langfuse 成本低 88%
|
8天前
|
运维 前端开发 安全
【Azure App Service】解析 Azure App Service 中的 X-Ms-Forbidden-Ip 响应头
Azure App Service 的 `X-Ms-Forbidden-Ip` 响应头可辅助判断 403 是否由平台访问限制触发,标识被拒客户端IP。虽未正式文档化,但在受控链路中是实用排障线索,建议结合诊断日志综合验证。
151 3
【Azure App Service】解析 Azure App Service 中的 X-Ms-Forbidden-Ip 响应头
|
1天前
|
Rust 安全 Linux
Rust实战:从零构建跨平台CLI工具并开源发布
在积累Rust开发与开源经验后,我用Rust打造了跨平台命令行笔记工具note-cli。依托Clap、dirs等生态库,实现高性能、零依赖单文件分发;通过cross完成多平台交叉编译。项目实践深化了我对Rust内存安全、模块化设计与开源协作的理解。
32 2
|
2天前
|
SQL 存储 运维
SQL Server迁移必看!深度解析SQLServer兼容性三大核心维度与选型指南
SQL Server迁移是国产化替代中最复杂的场景之一。所谓SQLServer兼容性,通俗来说,就是让国产数据库能够“听懂”并“执行”原本运行在微软SQL Server上的指令,同时保持数据不丢失、业务不中断。本文从语法兼容、语义兼容、生态兼容三大维度深度解析SQLServer兼容性的本质,梳理T-SQL差异、存储过程转换、工具链适配等核心挑战,并提供系统化的迁移评估路径和选型建议,帮助读者在迁移启动之前就建立起清晰的认知图谱。
|
2天前
|
人工智能 运维 Cloud Native
【直播预告】Agentic Cloud:阿里云 AgentTeams、AgentLoop 正式发布
☁️应用在云上生长,智能在运行中进化,7 月 3 日 14:00,锁定飞天发布时刻 https://summit.aliyun.com/apsaramoment ,不见不散!