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

问题描述

在查看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): 管理Azure Container Apps中的机密 | Azure Docs


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

相关推荐
147API2 小时前
Claude 的 Microsoft 365 connector 能写入了,技术接入别跳过权限验收
人工智能·microsoft·claude
娇气的红酒3 小时前
微软对PHP支持的改进,及其它一些胡言乱语
开发语言·microsoft·php
影寂ldy3 小时前
C# 泛型协变与逆变
windows·microsoft·c#
神经智研社1 天前
ros2 -9章 机器人的控制多节点启动文件Launch
人工智能·microsoft·机器人环境搭建·win11 ros2 开发环境·ros2 jazzy
小鹿软件办公1 天前
单文件狂吞 503 GB!微软确认 Windows 11 存储漏洞
microsoft·c盘存储漏洞·c盘占用太大如何清理
白白白飘1 天前
【9】Langchain实战案例:构建一个聊天机器人
microsoft·langchain·机器人
爱奥尼欧1 天前
【LangChain】2.提示词工程
人工智能·microsoft·langchain
春日见1 天前
FlashOcc
人工智能·深度学习·算法·microsoft·transformer
每日新鲜事2 天前
鲸蕾文化及进昂发布互动电影新作 《双生》亮相韩国富川电影节
microsoft