mcpField
D
devops-iac-engineer

devops-iac-engineer

github.com/davila7云与 DevOps33.0k777 次安装1 天前更新
代码仓库

关于 devops-iac-engineer

DevOps IaC Engineer 是面向 DevOps 团队的技能,帮助以基础设施即代码方式设计和维护云基础设施,提供涵盖架构、Terraform、Kubernetes、CI/CD、可观测性和安全的指导。

主要功能

  1. 01Terraform 与 IaC 设计指导
  2. 02Kubernetes 和容器编排实践
  3. 03云平台与服务选择建议
  4. 04CI/CD 流水线和 GitOps 规划
  5. 05可观测性与 DevSecOps 实践
  6. 06基础设施实施工作流

适用场景

  1. 01为新应用设计云基础设施
  2. 02规划容器部署与编排
  3. 03设计 CI/CD 和 GitOps 工作流
  4. 04处理基础设施漂移、密钥或云成本问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/davila7/claude-code-templates --skill devops-iac-engineer

安装后在 Claude Code 中输入/devops-iac-engineer确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

DIRECTORY_STRUCTURE.md
IMPLEMENTATION_GUIDE.md
README.md
examples/kubernetes/
complete-app.yaml
examples/pipelines/
github-actions.yml
examples/terraform/
main.tf
reference/
cicd.md
cloud_platforms.md
kubernetes.md
observability.md
security.md
templates.md
terraform.md
scripts/
devops_utils.py

详细介绍

DevOps IaC 工程师

此 Skill 帮助 DevOps 团队使用基础设施即代码原则设计、实现和维护云基础设施。在构建云架构、部署容器化应用、搭建 CI/CD 流水线或实施可观测性与安全实践时使用。

快速导航

  • Terraform 与 IaC:参见 terraform.md 了解 Terraform 最佳实践与模式
  • Kubernetes 与容器:参见 kubernetes.md 了解容器编排
  • 云平台:参见 cloud_platforms.md 了解 AWS、Azure、GCP 指南
  • CI/CD 流水线:参见 cicd.md 了解流水线设计与 GitOps
  • 可观测性:参见 observability.md 了解监控与日志
  • 安全:参见 security.md 了解 DevSecOps 实践
  • 模板与工具:参见 templates.md 了解即用型模板

核心原则

关键 DevOps 术语(全文统一)
  • 基础设施即代码(IaC):通过声明式代码文件管理基础设施
  • GitOps:将 Git 作为基础设施和应用的唯一可信来源
  • 不可变基础设施:被替换而非修改的基础设施组件
  • 服务网格:用于服务间通信的基础设施层
  • 可观测性:从外部输出(日志、指标、追踪)理解系统状态的能力
  • SLI/SLO/SLA:用于可靠性的服务级别指标/目标/协议
  • RTO/RPO:用于灾难恢复的恢复时间目标/恢复点目标
工作流:基础设施实现

在实现基础设施时,遵循以下结构化方法:

  1. 理解需求

    • 业务需求是什么?(新应用、迁移、扩缩容、合规)
    • 规模要求是什么?(流量、数据、地理分布)
    • 有哪些约束?(预算、时间线、监管)
    • 有哪些依赖?(现有系统、数据源)
  2. 设计架构

    • 选择合适的云平台和服务
    • 为高可用性和容错性而设计
    • 规划网络拓扑和安全边界
    • 识别数据流和存储需求
    • 用图表记录架构
  3. 选择 IaC 工具

    • 使用 Terraform 进行多云基础设施配置
    • 使用 Kubernetes 清单/Helm 进行容器编排
    • 根据团队和需求选择 CI/CD 工具
    • 如有需要,使用配置管理工具
  4. 实现基础设施

    • 创建模块化、可复用的 IaC 代码
    • 遵循安全最佳实践(参见 security.md)
    • 实施适当的状态管理和版本控制
    • 使用一致的命名和标记约定
    • 记录代码并创建 README 文件
  5. 搭建可观测性

    • 为关键服务定义 SLI 和 SLO
    • 实施日志、指标和追踪
    • 创建仪表盘和告警
    • 搭建日志聚合与分析
    • 规划值班轮换和运行手册
  6. 实施 CI/CD

    • 设计部署流水线阶段
    • 实施自动化测试(单元、集成、端到端)
    • 搭建 GitOps 工作流
    • 配置部署策略(蓝绿、金丝雀)
    • 实施回滚流程
  7. 测试与验证

    • 运行基础设施测试(安全、合规、成本)
    • 执行灾难恢复演练
    • 负载测试与性能验证
    • 安全扫描与渗透测试
    • 记录测试结果和改进
  8. 部署与监控

    • 执行分阶段发布
    • 密切监控指标和日志
    • 对照 SLO 进行验证
    • 记录运行手册和故障排查指南
    • 进行部署后评审
决策框架:工具选择

多云需求 → Terraform 或 Pulumi 仅 AWS → Terraform、AWS CDK 或 CloudFormation 容器编排 → Kubernetes(EKS、GKE、AKS) 简单容器部署 → ECS、Cloud Run 或 App Service 配置管理 → Ansible 或云原生解决方案 GitOps 工作流 → ArgoCD 或 Flux CI/CD 流水线 → GitHub Actions、GitLab CI 或 Jenkins

常见挑战与解决方案

问题:代码与实际基础设施之间存在漂移 解决方案:实施自动化漂移检测,在 CI/CD 中使用 terraform plan,启用生产环境只读访问,维护状态文件的完整性

问题:密钥管理与凭证泄露 解决方案:使用云原生密钥管理器(AWS Secrets Manager、HashiCorp Vault),实施 SOPS 以在 Git 中加密密钥,使用 IRSA/workload identity

问题:云成本高昂与意外账单 解决方案:实施标签策略,使用成本分配标签,设置预算警报,合理调整资源规格,使用竞价实例,实施自动扩缩容

问题:Kubernetes 配置复杂 解决方案:使用 Helm chart 进行模板化,使用 Kustomize 实现环境特定配置,遵循 GitOps 模式,使用 operator 处理复杂工作负载

协作建议

  • 与开发团队协作:提供自助服务平台,编写 API 文档,将基础设施作为可复用模块共享
  • 与安全团队协作:实施策略即代码,自动化合规检查,提供审计追踪
  • 与 SRE 团队协作:共同定义 SLI/SLO,共担值班职责,协同处理事故响应
  • 与财务团队协作:提供成本可见性,预测支出,实施费用分摊模型

后续步骤

  1. 如果你正在实施基础设施即代码,请从 terraform.md 开始
  2. 使用 kubernetes.md 进行容器编排
  3. 参考 templates.md 获取可直接使用的配置
  4. 查看 observability.md 以设置监控

注意:在实施变更之前,请务必核实当前基础设施状态、安全需求和合规要求。本 Skill 提供框架与最佳实践,但应根据你所在组织的具体需求进行调整。

评论

支持 Markdown