如何在Visual Studio发布配置文件中程序化终止对应AKS Pod?
实现Visual Studio发布流水线自动更新AKS Pod
完全可以通过Visual Studio发布流水线实现这个自动化操作,不用手动删除Pod,直接触发AKS的滚动更新即可,具体步骤如下:
配置发布流水线的后期任务
打开你的Visual Studio发布配置(针对AKS的发布模板),添加一个Azure CLI任务或者命令行任务,放在镜像发布到ACR和AKS的步骤之后。编写触发Pod更新的命令
不需要手动删除Pod,用kubectl命令直接触发Deployment的滚动更新更可靠,两种常用方式:- 直接指定新镜像更新Deployment(适用于镜像标签唯一的场景):
# 获取AKS集群凭证 az aks get-credentials --resource-group <你的资源组名称> --name <你的AKS集群名称> # 更新Deployment的镜像 kubectl set image deployment/<你的Deployment名称> <容器名称>=<ACR地址>/<镜像名>:<新版本标签> - 强制重启Deployment(适用于使用latest这类固定标签的场景):
az aks get-credentials --resource-group <你的资源组名称> --name <你的AKS集群名称> kubectl rollout restart deployment/<你的Deployment名称>
- 直接指定新镜像更新Deployment(适用于镜像标签唯一的场景):
配置权限与环境
确保Visual Studio流水线使用的Azure服务连接账号,拥有AKS集群的Kubernetes Cluster Admin或Contributor权限,这样才能执行kubectl命令。托管代理环境默认已预装Azure CLI和kubectl,无需额外安装。测试验证
保存配置后触发一次发布,检查流水线是否自动执行更新命令,同时查看AKS控制台,确认Pod是否自动重启并拉取了新镜像。
内容的提问来源于stack exchange,提问作者Jan Martin
相关产品推荐
相关产品推荐

