Amazon Elastic Compute Cloud(Amazon EC2)是Amazon Web Services(AWS)提供的一项基于云的可伸缩性、弹性、安全性和监控的计算服务,它允许用户租用虚拟服务器(称为EC2实例)来运行应用程序。我们从主要特点,工作方式以及计价模式来介绍下EC2
主要特点
可伸缩性 (Scalability)
EC2 允许用户根据需要快速扩展或缩减实例数量。这种可伸缩性使您能够适应不断变化的工作负载,确保您的应用程序始终具备所需的计算资源。
多样性的实例类型 (Diverse Instance Types)
AWS 提供多种不同类型的 EC2 实例,以满足各种计算需求。这些类型包括计算优化、内存优化、存储优化、GPU 实例等,每种类型都针对不同类型的工作负载进行了优化。
弹性IP地址 (Elastic IP Addresses)
您可以分配弹性 IP 地址给 EC2 实例,确保即使实例停止和重新启动,IP 地址也能保持不变。这有助于确保应用程序的连通性。
安全组和网络 ACL (Security Groups and Network ACLs)
EC2 允许您配置安全组和网络 ACL,以控制实例的入站和出站流量。这提供了一层网络安全性,以确保只有授权的流量可以访问实例。
Amazon Machine Images (AMIs)
AMIs 是虚拟机镜像,包含了操作系统、应用程序和配置信息。您可以使用标准 AMIs 或创建自定义 AMIs 来启动 EC2 实例,从而简化部署。
多个操作系统支持 (Multiple OS Support)
EC2 支持多种操作系统,包括各种 Linux 发行版、Windows Server 和其他操作系统。这使您可以选择适合您应用程序的操作系统。
自动化和托管选项 (Automation and Managed Options)
EC2 实例可以与其他 AWS 服务集成,如 AWS Auto Scaling、Elastic Load Balancing 和 AWS Elastic Beanstalk,以实现自动化部署和托管。
监控和警报 (Monitoring and Alerts)
EC2 实例集成了 Amazon CloudWatch,可监控实例的性能和状态,并配置警报以及自动响应性能问题。
可靠性和容错性 (Reliability and Fault Tolerance)
EC2 提供高可用性和容错性,实例可以在不同的可用性区域和可用性域中运行,以确保服务的连续性。
身份和访问管理 (Identity and Access Management)
EC2 实例可以与 AWS Identity and Access Management (IAM) 集成,以进行身份验证和授权,使您能够控制对实例和资源的访问权限。
多种定价选项 (Pricing Options)
EC2 提供多种不同的定价选项,包括按需实例、预留实例、定期实例、Spot 实例等,以满足不同的预算和使用需求。
工作方式:
选择实例类型
在使用 EC2 之前,您首先需要选择适合您工作负载需求的 EC2 实例类型。不同类型的实例提供不同的计算、内存、存储和网络性能。您可以根据您的需求来选择。
启动实例
一旦选择了实例类型,您可以使用 Amazon Machine Image(AMI)启动 EC2 实例。AMI 是一个预配置的虚拟机镜像,它包含了操作系统、应用程序和配置信息。您可以选择 AWS 提供的标准 AMI,也可以创建自己的自定义 AMI。
安全组和密钥对
在启动实例时,您可以选择一个或多个安全组,这些安全组定义了实例的入站和出站流量规则,以确保安全性。您还可以选择密钥对,以便安全地访问您的 EC2 实例。
运行实例
一旦实例启动,它将在 AWS 的数据中心中的物理服务器上运行。您可以通过 SSH(对于 Linux 实例)或 RDP(对于 Windows 实例)等远程协议连接到实例。
管理实例
一旦运行,您可以随时管理 EC2 实例。这包括启动、停止、重启、终止实例,以及更改实例的配置,如调整实例大小、添加存储卷等。
存储和快照
EC2 实例通常附带 Elastic Block Store(EBS)卷,您可以使用这些卷来存储数据。您还可以创建 EBS 快照,以备份数据或复制数据到其他地方。
监控和伸缩
AWS 提供了 Amazon CloudWatch,它可以用于监视 EC2 实例的性能指标,如 CPU 使用率、网络流量等。您可以设置警报以响应性能问题,并根据需要配置自动伸缩策略,以自动调整实例数量。
安全性和身份验证
EC2 实例可以与 AWS Identity and Access Management(IAM)集成,以实现身份验证和授权。您可以为实例分配 IAM 角色,以便它们可以访问其他 AWS 服务或资源,而无需硬编码的凭据。
计费模式
按需实例 (On-Demand Instances)
按需实例是一种灵活的计费方式,您只需为您实际使用的计算资源付费,没有长期合同或预付费。这意味着您可以随时启动或停止实例,只支付实际的运行时间。
适用于需要灵活性的工作负载,如开发和测试、临时工作负载、突发性工作负载。
预留实例 (Reserved Instances)
预留实例是一种合同制度,您提前支付一定费用,获得对特定实例类型的一定时期内的折扣,通常为1年或3年。这通常比按需实例更经济。
适用于长期工作负载,可以预测的、稳定的使用情况,例如生产服务器。
可用性区域保留实例 (Reserved Instances for Availability Zones)
这是预留实例的一种变种,允许您为特定的可用性区域(AZ)购买预留容量。这对于需要在特定区域内保留容量的应用程序非常有用。
适用于需要确保在特定可用性区域内拥有计算资源的工作负载。
可调整实例 (Convertible Reserved Instances)
这是一种预留实例,允许在合同期内更改实例类型,以适应不同的工作负载需求。
适用于工作负载需求可能会变化的情况,但仍然希望获得折扣。
定期实例 (Scheduled Instances)
定期实例允许您按预定的时间启动 EC2 实例。您可以在每天的特定时间、每周某个时间或其他预定时间启动实例。
适用于周期性的、预定的工作负载,如每天备份、批处理处理等。
批量实例 (Spot Instances)
Spot 实例基于竞价定价模式,您可以设定愿意支付的价格,当市场价格低于您的出价时,您可以获得实例。但它们可能随时被终止。
适用于可以容忍实例随时中断的工作负载,如大规模数据分析和渲染任务。
Dedicated Hosts(专用主机)
专用主机允许您在 AWS 的物理服务器上运行 EC2 实例,这些服务器专门为您的账户保留。这提供了硬件级别的隔离,适用于具有特殊合规性要求的工作负载。
适用于需要硬件隔离的工作负载,例如合规性要求非常高的应用程序,或者需要将许多实例部署到同一物理服务器上的场景。
Dedicated Instances(专用实例)
专用实例是 EC2 实例,它们在共享的物理服务器上运行,但只与您的账户中的其他实例共享。这提供了实例级别的隔离。
适用于需要实例级别隔离的工作负载,但不需要物理主机级别的隔离的场景。
Free Tier(免费层级)
AWS 提供了一定程度的免费使用,即免费层级,对于新用户以及AWS账户中的某些服务和资源,提供有限的免费额度,通常为12个月。这是用于学习、试验和小型项目的好方法,以降低成本。
适用于学习 AWS、开发和测试小型应用程序,或者初期的小规模项目。
这些计费模式为不同的使用情况提供了各种选择。您可以根据您的需求和预算来选择适合您的模式。请注意,AWS定期更新其价格和计费模式,因此建议查看官方文档以获取最新的信息。