
## 概述
这个自动化n8n工作流能够直接从Google Sheets文档启动AWS EC2实例。用户可以在Google Sheets中指定实例详细信息(如区域、实例类型、密钥对),触发工作流通过AWS API创建EC2实例。工作流会在表格中更新实例信息并发送确认邮件。
## 核心功能
### Google Sheets触发器
– 当Google Sheets中添加或更新新行时启动工作流
– 从表格中解析区域、实例类型、密钥对名称和实例名称
### 输入验证
– 检查必需字段和有效的AWS配置
– 确保所有必要的启动参数都已提供
### EC2实例启动
– 使用AWS EC2 API启动指定的实例
– 支持多种实例类型和区域配置
### 数据更新与通知
– 在Google Sheets中添加实例ID和状态
– 通过电子邮件向用户发送包含实例详细信息的确认通知
## 技术架构
### 主要节点
– **Schedule Trigger**: 定时触发器,每天上午10点执行
– **Google Sheets**: 读取和写入Google Sheets数据
– **SSH**: 通过SSH连接执行Terraform命令
– **Gmail**: 发送详细的确认邮件
### 技术依赖
– Google Sheets API:用于读取和写入数据
– AWS EC2 API:用于启动和管理实例
– SMTP服务:用于发送确认邮件
– n8n:用于工作流自动化和集成
## 设置说明
### 1. 导入工作流到n8n
– 下载工作流JSON并通过n8n界面导入
### 2. 配置API凭据
– 设置具有适当权限的Google Sheets API凭据
– 配置具有EC2启动权限的AWS IAM凭据
– 配置用于电子邮件通知的SMTP凭据
### 3. 准备Google Sheets
– 创建包含以下列的表格:区域、实例类型、密钥对名称、实例名称、实例ID和状态
### 4. 运行工作流
– 激活Google Sheets触发器并通过添加包含实例详细信息的行进行测试
### 5. 验证响应
– 检查Google Sheets中更新的实例ID
– 检查确认邮件
## 自定义可能性
### 扩展功能
– 添加更多EC2实例类型支持
– 增强验证:添加AWS限制或配额检查
– 支持标签:为启动的实例包含自定义标签
– 添加日志记录:与日志服务集成以进行工作流跟踪
– 自定义邮件:调整邮件内容或添加附件
## Terraform配置示例
工作流包含完整的Terraform配置示例:
– `main.tf`: 配置AWS提供商和EC2实例资源
– `variables.tf`: 定义所有必要的变量
– `terraform.tfvars`: 提供示例配置值
## 工作流优势
### 自动化效率
– 消除手动EC2实例启动过程
– 减少人为错误
– 标准化实例配置
### 协作友好
– 通过Google Sheets实现团队协作
– 集中管理所有启动请求
– 实时状态跟踪
### 成本控制
– 自动记录所有启动的实例
– 便于成本跟踪和管理
– 减少资源浪费

评论(0)