第二章 | 环境准备:先把“房子”搭好
做任何自动化项目,第一步都绕不开环境准备。说白了,你得有个能跑起来的“地基”。这一章咱们就干三件事:注册AWS账号、配好IAM权限、打开预算提醒。动作不复杂,但细节挺多。
我记得自己第一次接触AWS时,光账号注册就折腾了半小时——银行卡验证、手机验证、还要等几分钟审批。后来带新人,发现很多人都在同一个坑里摔过:要么权限给太大,要么忘了设预算,月底收到账单吓一跳。所以这次我尽量把经验都写出来。
2.1 创建AWS账号
注册步骤其实很标准化,但有几个地方容易忽略。
- 准备材料:一个没注册过AWS的邮箱、一张支持外币的信用卡(Visa/Mastercard)、手机号。
- 访问官网:打开
aws.amazon.com,点击右上角“创建AWS账号”。 - 填写信息:邮箱、密码、账户名称。注意账户名称后面会出现在ARN里,我习惯用
你的名字-实训这种格式,方便识别。 - 联系信息:选“个人”或“企业”都行,手机号要能接收验证码。
- 支付验证:输入信用卡信息,会扣1美元验证(后面会退还)。这一步我遇到过用虚拟信用卡失败的案例,建议用实体卡。
- 选择支持计划:别花钱,直接选“基本支持(免费)”。
💡 注册完成后,你会收到一封确认邮件。根用户(root user)权限极大,平时别用,后面我们会创建专属的IAM用户。
⚠️ 千万不要把根用户的登录密码和MFA分享出去。我见过有人把密码贴在显示器上,结果被同事误操作删了整个VPC…
2.2 IAM基础配置
IAM(Identity and Access Management)是AWS的权限中心。你想想看,根用户就像公司的法人,总不能每次办事都让他签字吧?所以我们需要创建几个“部门经理”——就是IAM用户和角色。
2.2.1 启用MFA(多因素认证)
第一个动作:给根用户绑上MFA。否则一旦密码泄露,后果你懂的。
- 进入IAM控制台 → 选择“用户” → 点击根用户名 → 进入“安全凭证”标签页。
- 点击“分配MFA设备”,选“虚拟MFA” → 用手机Auth App(比如Google Authenticator)扫二维码。
- 连续输入两次动态码,搞定。
我曾经帮一个客户排查安全事件,发现他们根用户没绑MFA,被暴力破解后创建了300台EC2挖矿。那个月的账单…嗯,不提了。
2.2.2 创建管理员IAM用户
日常操作不要用根用户。我们创建一个管理员用户,用于本课程的全部Lambda部署。
| 步骤 | 操作 | 关键点 |
|---|---|---|
| 1 | IAM控制台 → 用户 → 创建用户 | 用户名建议:lambda-admin |
| 2 | 勾选“提供用户对AWS管理控制台的访问” | 控制台密码选“自定义”,或让系统生成 |
| 3 | 设置权限 → 直接附加“AdministratorAccess”策略 | 实训阶段用这个没关系,生产环境要最小权限 |
| 4 | 创建后下载凭证:Access Key ID 和 Secret Access Key | 这俩相当于用户名和密码,千万别泄漏 |
🔑 密钥文件只下载一次!AWS不会再次提供。我习惯把它加密存到1Password或LastPass里。
2.2.3 创建IAM角色(用于Lambda执行)
Lambda函数需要扮演一个IAM角色才能访问其他服务(比如S3、DynamoDB)。所以提前建好角色。
- 创建新角色 → 选择“AWS服务” → 用例选“Lambda”。
- 附加策略:先给
AWSLambdaBasicExecutionRole(写日志权限),后面根据函数需要再加。 - 角色名称:
lambda-exec-role。创建完成。
注意:角色本身没有永久密钥,它通过“临时安全凭证”工作。这样做更安全——就算有人拿到角色ARN,也直接没法登录控制台。
2.3 预算提醒设置
这个环节很多人忽略,但我觉得是最重要的。AWS收费项目多,一个不小心就超支。设置预算提醒 = 给自己买份保险。
- 打开Billing and Cost Management控制台。
- 进入“预算”页面 → 点击“创建预算”。
- 选择预算类型:选“成本预算”,这样可以看到实际花费。
- 设置预算金额:比如每月20美元。对了,定价要合理——本实训只用到一些免费层资源,但加上数据传出和日志量,我建议设成20-30美元。
- 设置提醒阈值:
- 实际支出达到预算的80%时 → 发邮件通知。
- 预测支出达到预算的100%时 → 也发邮件。
- 添加通知邮箱:可以是自己的个人邮箱或团队邮件组。
⚠️ 预算提醒是异步的,不是实时。通常延迟1-2小时。所以不要依赖它来阻止瞬间的大额消费,但日常保护足够用了。
我曾经有一次忘记关一个RDS实例,跑了三天,花掉50美元。幸好开了预算提醒,第四天收到邮件立刻关停。从那以后我养成了习惯:每开一个新资源,都会顺便检查预算页面。
本章知识结构图
下面这张SVG图把整个环境准备的流程和关键角色串起来了。你看一遍就能理清脉络。
图中从左到右呈现了三个主要模块:MFA加固、用户与角色创建、预算保护。可以看到,用户和角色是平行关系,但都依赖MFA先开启。预算提醒作为兜底防护,放在最后一步。(实际生产中还有更多细粒度策略,但本章够用了。)