mcpField
T
terraform-infrastructure

terraform-infrastructure

github.com/aj-geddes云与 DevOps3731.2k 次安装34 周前更新
代码仓库

关于 terraform-infrastructure

terraform-infrastructure 是一项 Terraform 基础设施即代码技能,面向云资源配置与运维。内容涵盖声明式配置、远程状态和自动化部署,并提供模块、变量与部署脚本参考。

主要功能

  1. 01使用 Terraform 声明式配置基础设施
  2. 02管理云端及本地资源
  3. 03通过远程状态管理配置
  4. 04参考模块、变量和部署脚本

适用场景

  1. 01配置云基础设施
  2. 02管理开发、预发布和生产环境
  3. 03审查基础设施代码变更
  4. 04复制环境用于灾难恢复

安装

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

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill terraform-infrastructure

安装后在 Claude Code 中输入/terraform-infrastructure确认已加载。

包含的文件

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

references/
aws-infrastructure-module.md
terraform-deployment-script.md
variables-and-outputs.md
scripts/
validate-config.sh
templates/
config-starter.yaml

详细介绍

Terraform 基础设施

目录

概述

使用 Terraform 构建可扩展的基础设施即代码,通过声明式配置、远程状态和自动化预配来管理 AWS、Azure、GCP 和本地资源。

适用场景

  • 云基础设施预配
  • 多环境管理(开发、预发布、生产)
  • 基础设施版本控制与代码审查
  • 成本跟踪与资源优化
  • 灾难恢复与环境复制
  • 自动化基础设施测试
  • 跨区域部署

快速开始

最简可运行示例:

# terraform/main.tf
terraform {
  required_version = ">= 1.0"

  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 5.0"
    }
  }

  # Remote state configuration
  backend "s3" {
    bucket         = "terraform-state-prod"
    key            = "prod/terraform.tfstate"
    region         = "us-east-1"
    encrypt        = true
    dynamodb_table = "terraform-locks"
  }
}

provider "aws" {
  region = var.aws_region

  default_tags {
// ... (see reference guides for full implementation)

参考指南

references/ 目录中的详细实现:

指南内容
AWS 基础设施模块AWS 基础设施模块
变量与输出变量与输出
Terraform 部署脚本Terraform 部署脚本

最佳实践

✅ 应该做
  • 使用远程状态(S3、Terraform Cloud)
  • 实施状态锁定(DynamoDB)
  • 将代码组织成模块
  • 使用工作区管理环境
  • 统一应用标签
  • 使用变量提高灵活性
  • 在执行 apply 前进行代码审查
  • 将敏感数据保存在单独的变量文件中
❌ 不应该做
  • 将状态文件本地存储在 git 中
  • 使用硬编码值
  • 在同一个状态中混合多个环境
  • 跳过 terraform plan 审查
  • 所有操作都使用根模块
  • 在代码中存储密钥
  • 禁用状态锁定

评论

支持 Markdown