关于 canary-deployment
用于规划和实施金丝雀部署的技能,可逐步向少量用户发布新版本并评估指标。参考资料涵盖 Istio、Kubernetes 原生脚本、基于指标的分析和自动晋级。
主要功能
- 01逐步向部分用户发布
- 02基于指标监控问题
- 03按阈值回滚或晋级
- 04Istio 与 Kubernetes 指南
- 05部署最佳实践
适用场景
- 01通过真实流量测试新版本
- 02降低发布对用户的影响
- 03错误超过阈值时回滚
- 04依据指标晋级版本
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ aj-geddes/ useful-ai-prompts --skill canary-deployment安装后在 Claude Code 中输入/canary-deployment确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/automated-canary-promotion.mdistio-based-canary-deployment.mdkubernetes-native-canary-script.mdmetrics-based-canary-analysis.mdscripts/scaffold-tests.shtemplates/test-template.js详细介绍
金丝雀部署
目录
概述
逐步向少量用户部署新版本,监控指标以发现问题,并根据预先定义的阈值自动回滚或继续部署。
适用场景
- 低风险的渐进式发布
- 使用真实流量进行实际测试
- 出现错误时自动回滚
- 尽量减少对用户的影响
- 与 A/B 测试集成
- 由指标驱动的部署
- 高流量服务
快速入门
最简可运行示例:
# canary-deployment-istio.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp-v1
namespace: production
spec:
replicas: 3
selector:
matchLabels:
app: myapp
version: v1
template:
metadata:
labels:
app: myapp
version: v1
spec:
containers:
- name: myapp
image: myrepo/myapp:1.0.0
ports:
- containerPort: 8080
---
// ... (see reference guides for full implementation)
参考指南
references/ 目录中的详细实现:
| 指南 | 内容 |
|---|---|
| 基于 Istio 的金丝雀部署 | 基于 Istio 的金丝雀部署 |
| Kubernetes 原生金丝雀脚本 | Kubernetes 原生金丝雀脚本 |
| 基于指标的金丝雀分析 | 基于指标的金丝雀分析 |
| 自动推进金丝雀部署 | 自动推进金丝雀部署 |
最佳实践
✅ 应该做
- 遵循既定模式和惯例
- 编写清晰、易于维护的代码
- 添加适当的文档
- 部署前进行充分测试
❌ 不应该做
- 跳过测试或验证
- 忽略错误处理
- 将配置值硬编码
评论
支持 Markdown