187 lines
6.1 KiB
Markdown
187 lines
6.1 KiB
Markdown
|
|
# 第8天:EC2 入门——启动你的第一台云服务器
|
|||
|
|
|
|||
|
|
## 今天你将学到什么
|
|||
|
|
|
|||
|
|
今天是激动人心的一天——你将亲手启动人生中第一台云服务器。从点击"启动"到通过网络连接上它,整个过程不超过 5 分钟。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## EC2 是什么
|
|||
|
|
|
|||
|
|
EC2 的全称是 Elastic Compute Cloud(弹性计算云)。说白了就是 AWS 提供的**虚拟电脑**。
|
|||
|
|
|
|||
|
|
你可以把它想象成:你在网上"租"了一台电脑。这台电脑:
|
|||
|
|
- 放在 AWS 的数据中心里(不在你家)
|
|||
|
|
- 通过网络远程操作
|
|||
|
|
- 按使用时间收费(用一小时付一小时的钱)
|
|||
|
|
- 配置可以随时调整(觉得慢了可以升级,觉得浪费可以降级)
|
|||
|
|
|
|||
|
|
**EC2 是 AWS 最基础、最重要的服务**,2006 年推出,至今仍是使用最广泛的服务。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 启动一台 EC2 之前,你需要做 5 个选择
|
|||
|
|
|
|||
|
|
就像买电脑要选配置一样,启动 EC2 也要做几个选择。别紧张,我一个个解释。
|
|||
|
|
|
|||
|
|
### 选择 1:操作系统(AMI)
|
|||
|
|
|
|||
|
|
AMI(Amazon Machine Image)就是操作系统的"安装盘"。
|
|||
|
|
|
|||
|
|
常见选择:
|
|||
|
|
| AMI | 说明 | 适合 |
|
|||
|
|
|-----|------|------|
|
|||
|
|
| Amazon Linux 2023 | AWS 自己优化的 Linux | 学习首选,免费,和 AWS 集成最好 |
|
|||
|
|
| Ubuntu Server | 最流行的 Linux 发行版 | 社区资源丰富,教程多 |
|
|||
|
|
| Windows Server | 微软的服务器系统 | 需要运行 .NET 应用 |
|
|||
|
|
|
|||
|
|
**学习建议**:选 Amazon Linux 2023,免费且轻量。
|
|||
|
|
|
|||
|
|
### 选择 2:实例类型(配置)
|
|||
|
|
|
|||
|
|
实例类型决定了这台"虚拟电脑"有多少 CPU 和内存。
|
|||
|
|
|
|||
|
|
命名规则举例:`t3.micro`
|
|||
|
|
- `t3` = 系列名(t 系列是通用型,适合轻量工作)
|
|||
|
|
- `micro` = 大小(从小到大:nano → micro → small → medium → large → xlarge)
|
|||
|
|
|
|||
|
|
**常见系列**:
|
|||
|
|
| 系列 | 特点 | 生活类比 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| t3/t4g | 通用型,适合轻量任务 | 家用轿车,日常代步够用 |
|
|||
|
|
| m5/m6i | 均衡型,CPU 和内存平衡 | SUV,什么都能干 |
|
|||
|
|
| c5/c6i | 计算型,CPU 强 | 跑车,速度快 |
|
|||
|
|
| r5/r6i | 内存型,内存大 | 大货车,装得多 |
|
|||
|
|
|
|||
|
|
**学习阶段**:选 `t2.micro` 或 `t3.micro`,这是免费套餐包含的。
|
|||
|
|
|
|||
|
|
### 选择 3:密钥对(登录凭证)
|
|||
|
|
|
|||
|
|
密钥对是你远程登录服务器的"钥匙"。
|
|||
|
|
|
|||
|
|
工作原理就像一把锁配一把钥匙:
|
|||
|
|
- 公钥(锁)→ 放在服务器上
|
|||
|
|
- 私钥(钥匙)→ 下载到你的电脑上
|
|||
|
|
|
|||
|
|
**只有拿着私钥的人才能登录服务器。**
|
|||
|
|
|
|||
|
|
创建密钥对时,私钥文件(.pem)只能下载一次。丢了就没了,只能重新创建。
|
|||
|
|
|
|||
|
|
### 选择 4:网络和安全组
|
|||
|
|
|
|||
|
|
**安全组**是 EC2 的"防火墙",控制什么流量能进来、什么能出去。
|
|||
|
|
|
|||
|
|
把安全组想象成你家的门禁系统:
|
|||
|
|
- 你可以设置"只允许快递员进入"(只开放特定端口)
|
|||
|
|
- 你可以设置"只允许我家人进入"(只允许特定 IP)
|
|||
|
|
- 默认是"谁都不让进"(所有入站流量被拒绝)
|
|||
|
|
|
|||
|
|
**学习阶段的安全组配置**:
|
|||
|
|
| 类型 | 端口 | 来源 | 用途 |
|
|||
|
|
|------|------|------|------|
|
|||
|
|
| SSH | 22 | 你的 IP | 远程登录(Linux) |
|
|||
|
|
| RDP | 3389 | 你的 IP | 远程桌面(Windows) |
|
|||
|
|
| HTTP | 80 | 所有人 | 网站访问 |
|
|||
|
|
|
|||
|
|
**安全提醒**:SSH 端口(22)绝对不要开放给"所有人"(0.0.0.0/0)。只允许你自己的 IP 地址。否则全世界的黑客都会来尝试登录你的服务器。
|
|||
|
|
|
|||
|
|
### 选择 5:存储
|
|||
|
|
|
|||
|
|
EC2 的"硬盘"叫 EBS(Elastic Block Store)。
|
|||
|
|
|
|||
|
|
- 默认 8GB,学习够用
|
|||
|
|
- 类型选 gp3(通用 SSD),性价比最好
|
|||
|
|
- 可以后续扩容(但不能缩小)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 动手:启动你的第一台实例
|
|||
|
|
|
|||
|
|
1. 登录 AWS 控制台,搜索 "EC2"
|
|||
|
|
2. 点击 "启动实例"(Launch instance)
|
|||
|
|
3. **名称**:`my-first-server`
|
|||
|
|
4. **AMI**:Amazon Linux 2023(标有 Free tier eligible)
|
|||
|
|
5. **实例类型**:t2.micro(Free tier eligible)
|
|||
|
|
6. **密钥对**:点击"创建新密钥对",命名为 `my-key`,下载 .pem 文件
|
|||
|
|
7. **网络设置**:勾选"允许来自我的 IP 的 SSH 流量"
|
|||
|
|
8. **存储**:默认 8GB gp3
|
|||
|
|
9. 点击 "启动实例"
|
|||
|
|
|
|||
|
|
等待 1-2 分钟,实例状态变为 "Running"(运行中)。
|
|||
|
|
|
|||
|
|
**恭喜!你的第一台云服务器已经在运行了。**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 连接到你的服务器
|
|||
|
|
|
|||
|
|
### 最简单的方式:EC2 Instance Connect(浏览器直连)
|
|||
|
|
|
|||
|
|
1. 在 EC2 控制台选中你的实例
|
|||
|
|
2. 点击 "连接"(Connect)
|
|||
|
|
3. 选择 "EC2 Instance Connect" 标签
|
|||
|
|
4. 点击 "连接"
|
|||
|
|
|
|||
|
|
浏览器会打开一个终端窗口,你已经在服务器里面了!
|
|||
|
|
|
|||
|
|
试试输入:
|
|||
|
|
```
|
|||
|
|
whoami
|
|||
|
|
```
|
|||
|
|
会显示 `ec2-user`,这是你在服务器上的用户名。
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
uname -a
|
|||
|
|
```
|
|||
|
|
会显示服务器的操作系统信息。
|
|||
|
|
|
|||
|
|
### 用终端 SSH 连接(更专业的方式)
|
|||
|
|
|
|||
|
|
如果你用 Mac 或 Linux:
|
|||
|
|
```
|
|||
|
|
chmod 400 my-key.pem
|
|||
|
|
ssh -i my-key.pem ec2-user@你的公网IP
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
公网 IP 在 EC2 控制台的实例详情里可以找到。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 实例的生命周期
|
|||
|
|
|
|||
|
|
EC2 实例有几个状态,理解它们很重要(尤其是和计费相关):
|
|||
|
|
|
|||
|
|
| 状态 | 说明 | 是否计费 |
|
|||
|
|
|------|------|----------|
|
|||
|
|
| Running(运行中) | 正在运行 | 计费 |
|
|||
|
|
| Stopped(已停止) | 关机了,但"电脑"还在 | 不收计算费,但硬盘(EBS)仍收费 |
|
|||
|
|
| Terminated(已终止) | 彻底销毁,不可恢复 | 不计费 |
|
|||
|
|
|
|||
|
|
**关键区别**:
|
|||
|
|
- **停止** = 关机。数据还在,下次可以重新开机。就像你的电脑关机了。
|
|||
|
|
- **终止** = 销毁。数据没了,实例消失了。就像你把电脑扔了。
|
|||
|
|
|
|||
|
|
**学习完成后,记得停止或终止实例,避免持续计费!**
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 今天的小测验
|
|||
|
|
|
|||
|
|
1. EC2 的 `t2.micro` 中,`t2` 和 `micro` 分别代表什么?
|
|||
|
|
2. 安全组的作用是什么?为什么 SSH 端口不能开放给所有人?
|
|||
|
|
3. "停止"和"终止"一台 EC2 实例有什么区别?
|
|||
|
|
4. 密钥对的私钥文件丢了怎么办?
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 延伸阅读
|
|||
|
|
|
|||
|
|
- [EC2 实例类型完整列表](https://aws.amazon.com/ec2/instance-types/)
|
|||
|
|
- [EC2 入门教程](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EC2_GetStarted.html)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 明天预告
|
|||
|
|
|
|||
|
|
明天学习 EC2 的省钱秘籍:同样的服务器,不同的付费方式价格可以差 10 倍。按需、预留、Spot 实例各自适合什么场景?
|