什么是 AWS
Amazon Web Services (AWS) 是全球最全面、应用最广泛的云平台,提供超过 200 项全功能服务。
AWS 核心概念
1. 全球基础设施
AWS 在全球拥有 31 个地理区域和 99 个可用区:
全球区域分布:
├─ 美洲:us-east-1, us-west-2, ca-central-1, sa-east-1
├─ 欧洲:eu-west-1, eu-central-1, eu-north-1
├─ 亚太:ap-southeast-1, ap-northeast-1, ap-south-1
└─ 中国:cn-north-1 (北京), cn-northwest-1 (宁夏)
关键术语:
- Region(区域):地理位置(如 us-east-1)
- Availability Zone(可用区):区域内的独立数据中心
- Edge Location(边缘站点):CDN 节点(CloudFront)
2. 服务分类
┌─────────────────────────────────────┐
│ 计算服务 │
│ EC2, Lambda, ECS, EKS, Fargate │
└─────────────────────────────────────┘
│
┌─────────────────────────────────────┐
│ 存储服务 │
│ S3, EBS, EFS, Glacier, Storage GW │
└─────────────────────────────────────┘
│
┌─────────────────────────────────────┐
│ 数据库服务 │
│ RDS, DynamoDB, ElastiCache, Redshift│
└─────────────────────────────────────┘
│
┌─────────────────────────────────────┐
│ 网络服务 │
│ VPC, Route 53, CloudFront, ELB │
└─────────────────────────────────────┘
为什么选择 AWS
优势
✅ 全球覆盖:31 个区域,低延迟访问
✅ 服务丰富:200+ 服务满足各种需求
✅ 按需付费:用多少付多少,无前期成本
✅ 弹性伸缩:自动扩展应对流量变化
✅ 安全可靠:符合多种合规标准
✅ 成熟生态:丰富的工具和社区支持
应用场景
- Web 应用托管:使用 EC2、S3、RDS
- 大数据分析:EMR、Athena、Redshift
- 机器学习:SageMaker、Rekognition
- 物联网:IoT Core、Greengrass
- 容器化应用:ECS、EKS、Fargate
- 无服务器架构:Lambda、API Gateway
AWS 核心服务
计算服务
| 服务 | 说明 | 使用场景 |
|---|---|---|
| EC2 | 虚拟服务器 | Web 服务器、应用服务器 |
| Lambda | 无服务器计算 | 事件驱动、微服务 |
| ECS | 容器编排 | Docker 容器管理 |
| EKS | Kubernetes 托管 | K8s 集群 |
存储服务
| 服务 | 说明 | 使用场景 |
|---|---|---|
| S3 | 对象存储 | 静态文件、备份、数据湖 |
| EBS | 块存储 | EC2 磁盘 |
| EFS | 文件存储 | 共享文件系统 |
| Glacier | 归档存储 | 长期备份 |
数据库服务
| 服务 | 类型 | 使用场景 |
|---|---|---|
| RDS | 关系型数据库 | MySQL、PostgreSQL |
| DynamoDB | NoSQL | 高性能 KV 存储 |
| ElastiCache | 缓存 | Redis、Memcached |
| Aurora | 云原生数据库 | 高性能关系型数据库 |
网络服务
| 服务 | 说明 | 使用场景 |
|---|---|---|
| VPC | 虚拟私有云 | 网络隔离 |
| ELB | 负载均衡 | 流量分发 |
| Route 53 | DNS 服务 | 域名解析 |
| CloudFront | CDN | 内容分发 |
AWS 账号和权限
IAM(身份和访问管理)
Root Account(根账号)
│
├─ IAM User(用户)
│ └─ Access Key + Secret Key
│
├─ IAM Group(组)
│ └─ Developers, Admins, Ops
│
├─ IAM Role(角色)
│ └─ EC2, Lambda 使用
│
└─ IAM Policy(策略)
└─ JSON 格式的权限定义
最佳实践:
- ❌ 不要使用根账号进行日常操作
- ✅ 为每个用户创建独立的 IAM 用户
- ✅ 启用 MFA(多因素认证)
- ✅ 遵循最小权限原则
- ✅ 定期轮换访问密钥
计费模式
按需付费
EC2 实例:按小时/秒计费
S3 存储:按 GB/月 + 请求次数
RDS 数据库:按小时 + 存储 + I/O
数据传输:入站免费,出站收费
节省成本
- 预留实例(Reserved Instances):1-3 年承诺,节省 75%
- Spot 实例:竞价实例,节省 90%
- Savings Plans:灵活的价格模型
- 成本优化工具:Cost Explorer、Trusted Advisor
开始使用 AWS
1. 注册账号
访问 aws.amazon.com 注册账号
需要:
- 有效的邮箱
- 信用卡(用于身份验证)
- 电话号码(接收验证码)
免费套餐:
- EC2:750 小时/月(t2.micro)
- S3:5GB 存储
- RDS:750 小时/月(db.t2.micro)
- Lambda:100 万次请求/月
2. 安装 AWS CLI
Windows:
# 使用 MSI 安装程序
msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi
macOS:
brew install awscli
Linux:
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
3. 配置凭证
# 配置 AWS CLI
aws configure
# 输入:
AWS Access Key ID: YOUR_ACCESS_KEY
AWS Secret Access Key: YOUR_SECRET_KEY
Default region name: us-east-1
Default output format: json
# 验证
aws sts get-caller-identity
4. 第一个 EC2 实例
# 创建密钥对
aws ec2 create-key-pair \
--key-name my-key \
--query 'KeyMaterial' \
--output text > my-key.pem
# 设置权限
chmod 400 my-key.pem
# 启动实例
aws ec2 run-instances \
--image-id ami-0c55b159cbfafe1f0 \
--instance-type t2.micro \
--key-name my-key \
--security-groups my-sg
# 查看实例
aws ec2 describe-instances
AWS 管理工具
1. AWS Management Console
- Web 界面:https://console.aws.amazon.com
- 可视化操作
- 适合初学者
2. AWS CLI
- 命令行工具
- 脚本自动化
- 适合运维人员
3. AWS SDK
- 多语言支持:Python、Java、JavaScript、Go
- 编程接口
- 适合开发者
4. Infrastructure as Code
- CloudFormation:AWS 原生 IaC
- Terraform:跨云 IaC
- AWS CDK:用编程语言定义基础设施
下一步
在接下来的章节中,我们将深入学习:
- 计算服务:EC2、Lambda、容器服务
- 存储服务:S3、EBS、EFS 的使用
- 网络服务:VPC、安全组、负载均衡
- 数据库服务:RDS、DynamoDB 管理
- 安全最佳实践:IAM、KMS、安全组
- 监控和日志:CloudWatch、X-Ray
- 自动化运维:CloudFormation、Systems Manager
- 生产实战:高可用架构、灾难恢复
让我们开始 AWS 运维之旅!