跳至内容
AWS
云计算

AWS EC2 实例类型详解:何时使用哪一类

本文拆解 AWS EC2 的不同实例类型,帮助您将应用需求与合适的云资源精准匹配,从而获得更佳性能与更低成本。
Laiba Siddiqui's photo
Laiba Siddiqui
已更新 · 14分钟 阅读

使用 AI 探索

ChatGPTClaudePerplexity

创建您的免费账户

实践并学习路径你的进步。

使用 Google 继续
继续操作即表示您接受我们的《使用条款》和《隐私政策》,并同意您的数据存储在美国。

Amazon EC2(弹性计算云)是 AWS 的关键基石。它让我们能够在云端启动可按需扩展的虚拟服务器。不过,EC2 实例并非千篇一律,选择合适的类型会对性能与成本产生显著影响。

在本指南中,我将解释不同的 EC2 实例类型、它们的用途,以及如何为您选出最合适的一款。

什么是 EC2 实例类型?

当您在AWS 中启动实例时,您需要选择一个实例类型。每种类型都是一套不同的计算资源组合,包括 CPU、内存、存储和网络能力。这些类型有助于将应用需求与合适的资源量相匹配,避免为未使用的资源付费。

因此,选择正确的实例类型是构建高效、具性价比基础设施的基石。这是确保云环境运行顺畅并能随工作负载扩展的最佳做法之一。

实例家族的作用

AWS 会将其实例类型归类为不同的家族。每个家族都有相似的性能特征,因此更容易为您的任务找到合适选项。

例如:

  • 计算优化型实例 适用于批处理和高性能计算。
  • 内存优化型实例 更适合需要大量内存的作业,如内存数据库或实时分析。
  • 通用型实例 适用于需要在计算、内存和网络资源间取得平衡的场景。
  • 存储优化型实例 针对低延迟 I/O(输入/输出)操作进行了优化。

这种结构让我们可以更快锁定符合特定用例的选项。

EC2 实例命名规则

AWS EC2 实例类型遵循命名规则,可帮助您了解每种实例的能力或优化方向。看看如何解读这些名称,从而更有把握地做出选择。

格式拆解

实例类型由实例家族和 实例大小命名。实例名称的第一部分描述家族,第二部分表示大小,两者以句点 . 分隔。

以 m5.large 为例,它由三个关键部分组成:

  1. 系列(m) 表示实例的通用用途。此处 m 代表通用型。
  2. 代数(5) 表示版本号。数字越大通常意味着硬件更新、性能更好。
  3. 大小(large) 指的是 CPU 和内存等资源规模。

m5.large 表示您将获得一台通用型、第五代、资源适中的实例。

下图对该格式进行了可视化说明:

EC2 实例类型命名规则

          EC2 实例类型命名规则。来源:AWS 文档

       

示例与解读

再看几个示例并进行解读:

  • t4g.micro 是一款可突发实例,采用 Graviton(基于 ARM)处理器,适用于轻量、偶发的工作负载。
  • r6g.xlarge 是第 6 代内存优化型实例,同样基于 Graviton,非常适合内存密集型应用,如内存数据库。
  • c7gn.2xlarge 是第 7 代计算优化型实例,具备增强网络和 EBS 支持,由 Graviton 处理器驱动。

以下列出了一些常见系列及其对应选项与标记说明。

Series

Options

  • c – Compute optimized
  • d – Dense storage
  • hpc – High-performance computing
  • i – Storage optimized
  • g – Graphics-intensive
  • m – General purpose
  • mac – macOS
  • p – GPU accelerated
  • r – Memory optimized
  • a – AMD processors
  • g – AWS Graviton processors
  • i – Intel processors
  • m1 ultra – Apple M1 Ultra chip
  • m2 – Apple M2 chip
  • m2pro – Apple M2 Pro chip
  • b – Block storage optimization
  • z – High CPU frequency
  • n – Network and EBS optimized

完整的系列与选项列表请参阅 AWS 文档。

现在,让我们更详细地了解不同实例类型。

通用型实例

通用型实例在计算、内存和网络能力之间实现平衡。当您的工作负载没有明显单项倾向时,它们是理想选择,适用于 Web 服务器、开发环境和后端系统。

AWS 在此类别提供两大系列:T 系列与 M 系列。下面分别介绍:

T 系列

T 系列实例面向可突发性能。它们提供一个基线 CPU 能力,在需要时可临时提升。该突发机制基于积分系统:当实例低于基线使用 CPU 时会累积积分;当需求上升时,消耗积分以提升性能。

如果启用“无限”模式,实例可在积分用尽后继续突发,但会为额外用量计费。

这些实例非常适合 CPU 使用可变或低至中等的工作负载,如:

  • 低流量 Web 应用
  • 开发与测试环境
  • 小型数据库
  • CI/CD 流水线

假设您运行一个小型 Web 应用。大多数时候 CPU 使用率很低,系统平稳运行。当您发起活动导致流量激增时,它会用已累积的积分来应对额外负载。高峰过后,又回归基线并重新积累积分。

常见类型包括 t4g、t3 和 t2,并提供如 t4g.nano 等不同规格。

M 系列

M 系列实例提供均衡的 CPU 与内比,大约每个 vCPU 配 4GB 内存。适用于无需专项计算或内存配置的一般工作负载,通用性强。

我们可以将其用于:

  • 中小型数据库(如 MySQL、PostgreSQL)
  • 应用服务器
  • 企业应用的后端服务
  • 缓存层
  • 游戏服务器

常见示例包括 m6i、m8g 和 mac,且均提供多种规格,如 m8g.medium。

计算优化型实例

当工作负载计算量大、但对内存需求不高时,计算优化型实例非常合适。它们为 CPU 密集型任务提供高速性能,适用于分析、媒体编码或游戏基础设施。

AWS 通过 C 系列提供这类能力。我们来详细了解:

C 系列

C 系列实例专为高计算性能且较低内存开销而设计。它们提供更高的 CPU/内存比,非常适合对速度要求高、而对存储或内存要求不那么高的应用。

为实现最大吞吐和效率,这些实例采用最新处理器,包括 Intel、AMD 以及 AWS Graviton 芯片。

我们可以将其用于:

  • 高性能 Web 服务器
  • 视频编码与媒体转码
  • 科学模拟与建模
  • 批处理与数据计算
  • 需要低延迟与快速 Tick 率的游戏服务器

您可能会遇到的示例包括 c6g、c7i、c5n 和 c4。每种都有多个规格,便于按需扩缩。

计算优化型实例的优势在于:

  • 低延迟:响应更快,适合流媒体、游戏等实时应用。
  • 高速处理:凭借高主频与优化的 CPU 内核,可每秒处理数百万请求。
  • 具成本效益的扩展:在不为多余内存买单的前提下增加计算能力。

可持续性:许多 C 系列采用 AWS Graviton 处理器,更节能,有助于降低碳足迹。

内存优化型实例

内存优化型实例最适合对内存需求高于 CPU 或存储的工作负载。它们能够处理高性能数据库和内存应用,将大型数据集完全放入内存,从而实现超快响应。

R 系列

R 系列实例专为内存密集型工作负载打造。它们提供更高的内存与 vCPU 比例,非常适用于需要大量 RAM 而非强大计算能力的应用。

我们可以将其用于:

  • 内存缓存:适用于 Redis、Memcached 等需要极速数据访问的工具。
  • 实时大数据分析:在内存中处理与分析数据,延迟更低。
  • 企业应用:适用于需要充足内存以保证稳定运行的大型应用。

常见选项包括 r5、r6a、r8g 和 r4。每种均提供不同规格以满足您的需求。

X 系列与 Z 系列

X 系列实例提供极大的内存容量,专为内存密集型企业工作负载设计。常见场景包括:

  • SAP HANA
  • 内存数据库
  • 实时的大规模分析

常见型号有 x1e、x2gd 和 x8g。

Z 系列实例有所不同。它们兼具高内存与高 CPU 主频,非常适合:

  • 电子设计自动化(EDA)
  • 金融仿真
  • 大型关系型数据库
  • 计算光刻

如果您的工作负载既需要强单线程性能,又需要大量 RAM,Z 系列(如 Z1d)能提供均衡的性能表现。

存储优化型实例

存储优化型实例使用本地直连的高速 SSD(NVMe),非常适合需要极快且可靠存储的工作负载。因此可用于 NoSQL 数据库、数据湖,或需要高 IOPS(每秒输入/输出操作)的规模化数据处理。

来看一些常见的存储优化型实例:

I 系列、D 系列、H 系列

下表展示了各实例系列的细节:

 

I-series

D-series

H-series

Primary use

高 IOPS 的事务型工作负载与低延迟数据访问。

数据密集型应用、大数据处理,以及需要大容量存储的工作负载。

具有存储瓶颈需求的高性能计算(HPC)应用。

Ideal for

NoSQL 数据库(如 Cassandra、MongoDB)、事务型数据库、实时分析与分布式文件系统。

数据湖、Hadoop 分布式计算、日志处理与大规模数据分析。

HPC 仿真、科学计算、地震分析,以及具有大型本地数据集的机器学习。

Storage

高速 NVMe SSD 本地存储(易失)。

大容量本地存储,通常为 HDD 或 SSD(取决于实例类型)。

高吞吐的 NVMe SSD 本地存储(易失)。

Performance

极高 IOPS 与低延迟。

高顺序读/写吞吐量,随机 IOPS 低于 I 系列,但非常适合大文件流式处理。

提供出色吞吐与高 IOPS,面向数据密集型仿真和 HPC 工作负载进行定制。

Examples

I8g, I7ie, I3en

D3, D3en

H1

关于 I 系列、H 系列和 D 系列的完整列表,请参阅文档。

本地存储性能

本地存储采用 NVMe SSD,为应用提供极速性能、极高 IOPS、亚毫秒级延迟和高吞吐。但这类存储是易失性的,实例停止或终止后数据会丢失。

因此,易失性存储主要用于:

  • 临时工作空间(scratch space)
  • 缓冲/缓存存储
  • 高速临时数据库(如 Redis、具备副本的 Cassandra)

相比之下,EBS(弹性块存储)卷为持久化存储,即使实例停止也能保留数据。EBS 通过网络连接,具备高耐久性,并提供如快照等便捷备份与恢复功能。非常适合重视数据持久性的工作负载,如数据库与关键文件。

易失性存储性能惊人,但缺乏数据持久性;EBS 提供出色的耐久性与韧性,适用于既要性能又要数据保护的工作负载。

加速计算型实例

加速计算型实例(又称硬件加速实例)适用于需要专用硬件的场景,如 GPU、FPGA(现场可编程门阵列)或 AWS 自研芯片,用于分担在 CPU 上效率较低或过慢的计算密集型任务。

因此,它们提供更优性能,适合需要大规模并行处理或复杂计算的工作负载。

基于 GPU 的实例(P 与 G 家族)

基于 GPU 的实例非常适合需要强大并行计算的任务。它们基于 NVIDIA GPU,针对重负载工作负载进行优化,如机器学习模型训练、3D 渲染、高端游戏与其他图形密集型任务。

GPU 实例的两个关键家族是:

  • P 家族(如 P4、P5):配备 NVIDIA GPU,面向机器学习(ML)与高性能计算(HPC)。
  • G 家族(如 G4、G5):同样由 NVIDIA GPU 驱动,适合图形工作负载、ML 推理与游戏串流。

专用 AI/ML 实例(Inf 与 Trn 家族)

针对 AI 与机器学习工作负载,Inferentia 优化(Inf)与 Trainium 优化(Trn) 家族采用 AWS 自研芯片,如 AWS Inferentia 与 AWS Trainium。它们可规模化进行深度学习的训练与推理,提供出色的性价比。

  • Inf 家族(如 Inf1、Inf2):基于 AWS Inferentia 芯片,适用于低延迟、高吞吐的推理任务。
  • Trn 家族(如 Trn1、Trn2):为分布式深度学习训练优化,具备高速互联与强大算力,由 AWS Trainium 芯片驱动。

这些实例具备良好扩展性,并支持 TensorFlow、PyTorch 与 Apache MXNet 框架,从而提升效率并保证流畅性能。

我们可以将其用于:

  • 大规模深度学习训练: 使用 Trn1 以更低成本实现高性能的大模型训练。
  • 低成本 AI 推理: 使用 Inf1 实现快速、低成本的模型推理。
  • 大规模 AI 部署: 支持每秒数百万次推理的环境,如推荐引擎、语音识别与自动驾驶。

如何选择合适的 EC2 实例?

实例类型繁多,要想充分利用 AWS,确实不易下手。下面看看您和团队如何在性能、成本与可扩展性之间做出更有把握的权衡。

关键决策因素

先从工作负载的核心需求入手。明确所需的 CPU、内存、存储与网络要求,不同工作负载需要的实例类型不同。

还需要考虑流量特征。是稳定可预期,还是会在特定时段突增?这有助于决定是否选择可按需扩展的方案。

此外我们通常也有成本约束,需要在性能与预算之间权衡。如果不需要持久化存储,使用易失性本地存储相较 EBS 卷可节省不少费用。

AWS 选型工具

好在 AWS 提供了多种工具帮助缩小范围。比如:

基准测试与试验

即便有这些工具,亲自跑测试仍然很有价值。在您的环境中对不同实例进行基准测试,可以了解它们在真实工作负载下的表现。这能让我们更准确地把握性能、延迟与成本,并聚焦对我们真正重要的指标。

成本与采购选项

在 EC2 上,采购方式会直接影响总体成本。AWS 提供多种面向不同工作负载的采购选项,下面看看如何为当前项目选到合适方案,并有效管理云成本。

按需实例

按需实例提供最高灵活性。我们随用随启、按秒计费、随时关闭,无需任何承诺。非常适合:

  • 短期项目
  • 突发或不可预测的工作负载
  • 无需前期规划、快速起步

但这种灵活性价格更高。对于长期运行或可预期的工作负载,其他选项可在长期内节省大量成本。

预留实例与竞价实例

预留实例适用于我们确定会长时间稳定运行的工作负载。承诺 1 年或 3 年期,相比按需定价可节省最高 75%。这是运行稳定、常开型应用的明智之选。

竞价实例则更经济实惠。AWS 会将未使用的容量以大幅折扣(最高 90%)提供,但也可能短时间内被回收。因此更适合可承受中断的作业,例如:

  • 批处理
  • 数据分析
  • CI/CD 工作负载
  • 无状态服务

快速对比:按需 vs. 预留 vs. 竞价实例

下面这张并排表格可帮助您决策:

Option

Best for

Cost

Flexibility

Good to know

On-demand

Short-term or unpredictable work

Highest

Very flexible

Great for testing or unpredictable loads

Reserved

Long-term, steady workloads

Lower (with commitment)

Less flexible

1 or 3-year term saves up to 75%

Spot

Interruptible, fault-tolerant tasks

Lowest

Limited (can be stopped anytime)

Up to 90% savings, but no guarantees

更详细的比较,请参阅AWS 官方网站。

成本优化建议

为更进一步节省预算,我们可以借助以下工具与策略:

  • Savings Plans:跨 EC2 等服务的灵活承诺式定价。通过承诺稳定用量可节省最高 72%。
  • 自动扩展:根据需求自动调整容量,避免过度预置。
  • 规格优化(Right-sizing):定期审查实例类型与规格以确保匹配。小调整也可能带来长期可观节省。

总结

EC2 实例并不存在“一刀切”,这反而是件好事。无论是搭建一个快速的开发环境,还是扩展复杂的机器学习流水线,AWS 都为我们提供了按需取用的灵活性。

关键在于理解工作负载、明确性能目标,并时刻关注成本。借助工具、测试与一定的试错,有意图地做出选择,才能最大化发挥基础设施的价值。

如果您想继续提升 AWS 技能或深入探索 EC2 的能力,以下资源值得一看:

这些资源将以实践示例与真实应用,帮助您将 AWS 技能更进一步。

FAQs

ECS 与 EC2 有何区别?

EC2 是一种虚拟机服务,您需要管理整个虚拟机,包括操作系统和应用程序。相对地,ECS 是托管的容器编排服务,专注于运行与扩展容器化应用。

AWS EC2 是无服务器(Serverless)吗?

EC2 需要您自行管理与配置环境。

什么是 AWS 中的弹性 IP(Elastic IP)?

在 AWS 中,弹性 IP 地址是一种静态的公网 IPv4 地址,您可以将其关联到实例或网络接口,以便即使实例停止、重启,或迁移到其他区域时,也能保持一致的公网 IP。

如何删除一台 EC2 实例?

登录 AWS 管理控制台,进入 EC2 控制台,选择要删除的实例。在“实例状态”下拉菜单中选择“Terminate(终止)”,在提示时确认终止操作。

AWS 中的 AMI 是什么?

Amazon 机器映像(AMI)是一个模板,包含启动一台 Amazon 弹性计算云(EC2)实例所需的信息。

基于 Graviton 的实例与基于 Intel 或 AMD 的实例相比如何?

Graviton 实例采用 ARM 架构,在许多工作负载上具备更好的性价比与能源效率。但需验证与 x86 应用的兼容性。


Laiba Siddiqui's photo
Author
Laiba Siddiqui
LinkedIn
Twitter

我是内容策略专家,热衷于将复杂主题化繁为简。我曾帮助 Splunk、Hackernoon 和 Tiiny Host 等公司为其受众打造兼具吸引力与信息量的内容。

主题
AWS
云计算

通过这些课程进一步学习 AWS!

课程

AWS 概念

2 小时
53.3K
探索 Amazon Web Services (AWS) 的世界,了解它为何处于云计算前沿。
查看详情开始课程

创建您的免费账户

实践并学习路径你的进步。

使用 Google 继续
继续操作即表示您接受我们的《使用条款》和《隐私政策》,并同意您的数据存储在美国。
查看更多