Skip to content

云计算

模块 1:云概念概览

第一部分:云计算简介

  • 云计算定义:云计算是通过互联网提供按需、按实际使用量收费的计算能力、数据库、存储、应用程序等 IT 资源。
  • 传统计算模型云计算模型对比:传统计算依赖于硬件,需大量初期投资与硬件维护,而云计算通过软件解决方案提供灵活、可扩展且高效的资源管理。
  • 云服务模型
  • IaaS(基础设施即服务):提供更多的 IT 资源控制。
  • PaaS(平台即服务):提供平台但较少的资源控制。
  • SaaS(软件即服务):完全由服务提供商控制,用户只使用软件功能。
  • 云计算部署模式
  • 公有云:成本较低,适合大规模经济。
  • 私有云:灵活性和安全性更高,但成本较高。
  • 混合云:结合公有云和私有云的优势,具备更高的灵活性和成本效益。

第二部分:云计算的优势

  • 成本效益:将资本支出转为可变支出,无需投资于硬件,按需付费。
  • 规模经济:AWS 通过大规模运营,为客户提供更低的服务费用。
  • 灵活扩展:按需扩展,无需预测和预设容量。
  • 全球化部署:AWS 可在几分钟内实现全球服务部署,提高业务的速度与灵活性。

第三部分:Amazon Web Services (AWS) 简介

  • AWS 定义:AWS 是一个安全的云平台,提供多种全球服务,支持按需访问计算、存储、网络、数据库等 IT 资源。
  • AWS 服务分类:包括开发工具、安全性、存储、数据库、计算服务、机器学习等,涵盖广泛的云计算需求。
  • 与 AWS 的交互方式:AWS 可以通过管理控制台、命令行界面 (CLI)、以及开发工具包 (SDK) 进行操作,满足不同技术需求。

第四部分:迁移到 AWS 云——AWS 云采用框架(AWS CAF)

  • AWS CAF:AWS 云采用框架(CAF)提供了指导和最佳实践,帮助组织成功迁移到云环境,支持整个 IT 生命周期。
  • 六大视角
  • 业务视角:确保 IT 投资与业务目标一致。
  • 人员视角:优先考虑培训、人员配置及组织变革。
  • 监管视角:确保 IT 策略与业务策略的对齐。
  • 平台视角:关注 IT 系统的架构与资源配置。
  • 安全性视角:确保组织能够实现其安全性目标。
  • 运营视角:与业务运营紧密结合,确保日常服务支持。

总结

本模块深入介绍了云计算的基本概念、优势以及 AWS 的核心服务,并探讨了如何通过 AWS 云采用框架来有效地迁移到 AWS 云平台。


### 模块 2:云经济学和账单

第一部分:定价基础知识

  • AWS 定价模型
  • 计算:按小时或秒收费(仅限 Linux),费用因实例类型而异。
  • 存储:按 GB 收费。
  • 数据传输:出站数据传输有费用,入站数据免费(有些例外)。

  • 如何支付 AWS 费用?

  • 按实际使用量付费:按需付费,无需预先投入。
  • 预留实例(RI):通过预留容量支付更少,最大折扣高达 75%。

    • AURI(全部预付预留实例):最大折扣。
    • PURI(部分预付预留实例):较低折扣。
    • NURI(无预付预留实例):折扣最小。
  • 自定义定价:根据项目需求定制价格。

  • AWS 免费套餐:新客户免费使用 1 年。

第二部分:总拥有成本 (TCO)

  • TCO 概念:用于评估系统的直接和间接成本,帮助比较本地基础设施和云环境的成本。
  • 本地与云的比较:AWS 云的总拥有成本(TCO)能显著降低,例如,迁移到 AWS 可以节省高达 96%的费用。

  • TCO 的考虑因素

  • 硬件、存储和网络成本:包括服务器、存储、网络设备的费用。
  • 运营成本:如电力、空间、散热等。
  • 人力资源成本:如 IT 人员和管理费用。

  • AWS 简单月度成本结算器:估算每月成本并寻找降低成本的机会。

  • AWS TCO 计算器:提供详细报告,帮助估算迁移到 AWS 的成本节省。

第三部分:账单和 AWS Organizations

  • AWS Organizations:通过 AWS Organizations 管理多个 AWS 账户。
  • 主要功能:集中账单管理、策略性账户管理、自动化 API 管理等。

  • 账单管理工具

  • AWS 预算:设置预算并追踪费用。
  • AWS Cost Explorer:分析和预测 AWS 费用。
  • AWS 成本和使用情况报告:生成详细的使用报告。

第四部分:AWS 技术支持

  • AWS Support 计划:四种支持计划,根据客户需求提供不同级别的支持。
  • 基本支持:提供资源中心和运行状况监控。
  • 开发者支持:适合早期开发阶段。
  • 商业支持:面向生产工作负载。
  • 企业支持:针对任务关键型工作负载提供全天候支持。

  • AWS Support 的工具和专业知识

  • 技术客户经理 (TAM):提供个性化支持。
  • AWS Trusted Advisor:提供最佳实践和优化建议。

总结

本模块介绍了 AWS 的定价模型、总拥有成本(TCO)的计算方法、AWS 的账单和费用管理工具,并详细解释了 AWS 支持计划及其不同层级。通过学习这些内容,能够更好地理解 AWS 的成本结构、管理费用,并根据实际需求选择合适的支持计划。


模块 3:AWS 全球基础设施概览

第一部分:AWS 全球基础设施

  • AWS 全球基础设施:AWS 的全球基础设施设计旨在提供灵活、可靠和可扩展的云计算环境,保证高质量的全球网络性能。它由多个区域可用区边缘站点组成,以确保覆盖全球并优化网络性能。

  • AWS 区域:AWS 区域是指全球地理位置中的一个区域。每个区域内部具有完全冗余的网络连接,并且通常包含多个可用区。选择区域时要考虑的数据控制、法律要求、延迟、服务可用性和成本等因素。

  • 可用区:每个区域包含多个物理隔离的可用区。每个可用区包含多个数据中心,使用高速网络互联。AWS 建议在多个可用区间进行数据复制,增强容错和高可用性。

  • 边缘站点:AWS 提供的全球内容分发网络(CDN),通过Amazon CloudFront等服务,在离用户更近的地方缓存和分发内容,减少延迟,提升服务的响应速度。边缘站点还包括区域边缘缓存,用于存储不常访问的内容。

第二部分:AWS 服务和服务类别概览

  • AWS 服务:AWS 提供了多种服务,可以分为以下几类:

  • 计算服务:包括 Amazon EC 2、Lambda、Elastic Beanstalk 等,提供虚拟计算实例、自动扩展、负载均衡等功能。

  • 存储服务:如 Amazon S 3、EBS、EFS 等,支持对象存储、块存储和文件系统服务。

  • 数据库服务:包括 Amazon RDS、DynamoDB、Redshift 等,提供关系型数据库、NoSQL 数据库和数据仓库服务。

  • 网络和内容分发:提供如 VPC、Elastic Load Balancing、CloudFront 等服务,用于配置虚拟私有网络、流量分配和内容缓存。

  • 安全性、身份与合规性:包括 IAM、AWS Shield、KMS 等服务,确保数据的安全性、访问控制和加密。

  • 开发和运维工具:提供如 AWS CloudFormation、AWS CodeDeploy 等工具,帮助自动化基础设施管理和应用部署。

  • 分析与机器学习:包括 Amazon Athena、Amazon SageMaker 等,支持大数据分析和机器学习模型训练。

总结

本模块帮助你理解了 AWS 全球基础设施的结构与组件,尤其是 AWS 的区域可用区边缘站点,并介绍了 AWS 提供的多种服务及其分类。通过这些服务,AWS 能够提供高可用、高容错、可扩展的基础设施来支持全球范围的计算需求。

完成本模块后,你应该能够: 1. 明确 AWS 的区域、可用区与边缘站点的定义与区别。 2. 理解 AWS 服务的分类与各类服务的功能。


模块 4:AWS 云安全性

第一部分:AWS 责任共担模式

  • AWS 的安全责任
  • AWS 负责基础设施的安全性,包括数据中心的物理安全、硬件、网络、虚拟化基础设施等。

  • 客户的安全责任

  • 客户负责保护云中的数据,包括操作系统、应用程序、网络配置、IAM 配置等。

  • 服务责任模型

  • IaaS(基础设施即服务):客户负责操作系统和应用程序的安全配置。
  • PaaS(平台即服务):AWS 负责操作系统和数据库的维护,客户主要管理代码或数据。
  • SaaS(软件即服务):客户使用预先配置的软件,无需管理基础设施。

第二部分:AWS Identity and Access Management (IAM)

  • IAM 基本组件
  • 用户、组和角色:用户代表人员或应用程序,组是用户集合,角色允许指定的用户或服务临时获取权限。
  • IAM 策略:控制访问权限的文档,定义哪些资源可以被访问及其权限。

  • 权限管理

  • 最低权限原则:只给予用户执行任务所需的最低权限。
  • MFA(多因素认证):增加额外的身份验证层级。

第三部分:确保新 AWS 账户的安全性

  • 账户根用户的管理
  • 根用户禁用:根用户具有无限权限,避免常规使用,创建 IAM 用户并分配权限。
  • 启用 MFA:增强账户安全性,要求额外的身份验证。
  • 使用 AWS CloudTrail 跟踪活动:记录和监控 AWS 账户活动。

第四部分:确保 AWS 数据的安全性

  • 数据加密
  • 静态数据加密:通过 AWS KMS 对存储的数据进行加密。
  • 传输数据加密:使用 TLS 或 SSL 对传输中的数据进行加密。

第五部分:合规性与合规性计划

  • AWS 合规性计划:AWS 提供认证、法律协议和行业特定的合规支持,确保客户的数据处理符合各类法规要求。

模块 5:联网和内容分发

第一部分:联网基础知识

  • 网络模型
  • OSI 模型:包括从物理层到应用层的多个层次,支持不同协议和功能。
  • IP 地址和 CIDR:IPv 4 和 IPv 6 地址管理,CIDR 用于分配网络地址。

第二部分:Amazon VPC(虚拟私有云)

  • VPC 概述
  • VPC 让您在 AWS 云中建立自定义的虚拟网络,控制 IP 地址范围、子网配置和路由规则。
  • 子网划分:VPC 可以分为多个子网,每个子网位于一个可用区,并设置 CIDR 块。

  • VPC 配置

  • 路由表和网关:VPC 使用路由表来控制流量,支持互联网网关和 NAT 网关。

第三部分:VPC 联网

  • 互联网网关:连接 VPC 和外部网络,支持互联网流量。
  • NAT 网关:允许私有子网中的实例访问互联网。
  • VPC 对等连接:在同一区域或不同区域之间连接两个 VPC。

第四部分:VPC 安全性

  • 安全组和网络 ACL
  • 安全组:实例级别的防火墙,默认情况下允许所有出站流量,拒绝所有入站流量。
  • 网络 ACL:子网级别的防火墙,允许或拒绝流量。

第五部分:Amazon Route 53

  • DNS 服务
  • Amazon Route 53 提供高可用性和可扩展性的 DNS 服务,支持多种路由策略(如地理位置路由、故障转移路由等)。

第六部分:Amazon CloudFront

  • 内容分发网络(CDN)
  • CloudFront 用于加速内容的全球分发,提供边缘站点缓存和高效的传输服务,减少延迟并提升性能。

模块 6:计算

第 1 部分:计算服务概览

1. 主要 AWS 计算服务

AWS 提供了多种计算服务,主要可分为以下几类:

  • 基础设施即服务 (IaaS)Amazon EC2
  • 平台即服务 (PaaS)AWS Elastic Beanstalk
  • 无服务器计算 (Serverless)AWS Lambda
  • 容器服务Amazon ECSAmazon EKSAWS FargateAmazon ECR
  • 其他Amazon LightsailAWS BatchVMware Cloud on AWS 等。
2. 计算服务分类与特性
服务类别 代表服务 核心概念 关键特性 易用性
IaaS Amazon EC2 基于实例、虚拟机 完全控制虚拟机、操作系统和配置。IT 人员熟悉。 需要较多管理。
PaaS AWS Elastic Beanstalk 平台即服务、Web 应用 专注于代码开发,自动处理部署、扩展、监控等底层基础设施。 快速上手,易于使用。
容器 Amazon ECS/EKS/Fargate 基于容器、编排 快速启动,高效利用资源。Fargate 无需管理服务器。 需要学习容器和编排概念。
无服务器 AWS Lambda 函数即服务 (FaaS)、事件驱动 按执行时间付费,自动扩展,免运维。 概念较新,但掌握后易用。
3. 如何选择最佳计算服务?

选择服务没有绝对的“最佳”,取决于您的具体使用案例。需要考虑:

  • 应用程序设计: 是传统单体应用、微服务还是事件驱动?
  • 使用模式: 是稳态工作负载、突发性负载还是对时间不敏感的批处理?
  • 管理需求: 您希望对底层基础设施有多少控制权?是否有能力管理服务器?
  • 成本考量: 不同服务的定价模型差异巨大。

关键点: 选择错误的计算解决方案可能导致性能低下或成本过高。理想切入点是先了解所有可用选项。

第 2 部分:Amazon EC2

1. Amazon EC2 概览
  • 定义: Amazon Elastic Compute Cloud (EC2) 在云端提供可调整大小的虚拟机,称为 EC2 实例
  • 核心能力:
    • 对实例的来宾操作系统 (Windows/Linux) 有完全控制权。
    • 从全球任何区域的可用区中启动实例。
    • 通过 AWS 管理控制台或 CLI 在几分钟内启动实例。
    • 使用安全组控制进出实例的流量。
2. 启动 EC2 实例的 9 个关键决策

使用“启动实例向导”时需做出以下选择:

  1. 选择 AMI (Amazon 系统映像):

    • AMI: 是启动 EC2 实例的模板,包含操作系统和预装软件。
    • 选项:
      • Quick Start: AWS 提供的标准 Linux/Windows 镜像。
      • My AMIs: 您自己创建的自定义镜像。
      • AWS Marketplace: 第三方提供的预配置镜像。
      • Community AMIs: 社区共享的镜像(使用需谨慎)。
    • 创建自定义 AMI: 可以从标准 AMI 启动实例 -> 修改配置/安装软件 -> 创建新 AMI -> 在多个区域复制使用。
    • 选择实例类型:

    • 决定实例的 vCPU内存 (RAM)存储 和 网络性能

    • 实例类型类别:
      • 通用型 (e.g., t3, m5): 均衡的计算、内存和网络。
      • 计算优化型 (e.g., c5): 高性能计算。
      • 内存优化型 (e.g., r5, x1): 内存数据库、大数据分析。
      • 存储优化型 (e.g., i3, d2): 高频 I/O、分布式文件系统。
      • 加速计算型 (e.g., p3, g4): 机器学习、图形处理 (GPU)。
    • 命名规则: 如 t3.large -> t(系列) 3(世代) large(大小)。
    • 指定网络设置:

    • 选择实例要部署的 VPC (虚拟私有云) 和 子网

    • 决定是否为实例自动分配公有 IP 地址(使其可通过互联网访问)。
    • 附加 IAM 角色 (可选):

    • 为 EC2 实例上的应用程序提供访问其他 AWS 服务(如 S3)的权限。

    • 是一种安全的授权方式,无需在代码中存储密钥。
    • 用户数据脚本 (可选):

    • 在实例首次启动时自动执行的脚本(如 #!/bin/bash)。

    • 用于自动化配置,例如 yum update -y、安装软件等,可减少自定义 AMI 的数量。
    • 指定存储 (根卷和附加卷):

    • 根卷: 安装操作系统的磁盘。

    • 存储选项:
      • Amazon EBS (Elastic Block Store)持久性块存储。实例停止/重启后数据保留。可加密。
      • 实例存储 (Instance Store): 临时块存储,附着在实例的物理主机上。实例停止或终止后数据丢失
    • 需配置大小、类型 (SSD/HDD)、删除策略和加密。
    • 添加标签:

    • 为资源(如 EC2 实例)添加键-值对的元数据。

    • 好处: 成本分配、资源过滤、自动化管理、访问控制。
    • 安全组设置:

    • 作为防火墙,控制进出实例的流量。

    • 通过创建入站出站规则来指定:协议 (TCP/UDP/ICMP)、端口、源/目标 (IP 或其他安全组)。
    • 指定或创建密钥对:

    • 用于安全连接到实例。

    • 包含公有密钥 (AWS 保管) 和私有密钥文件 (您保管)。
    • Linux: 使用私钥通过 SSH 连接。
    • Windows: 使用私钥获取管理员密码进行登录。
3. EC2 实例生命周期
  • 状态待处理 -> 运行中 -> 停止/终止
  • 停止: 仅支持由 EBS 支持的实例。停止后实例不运行,不收费,但 EBS 卷仍收费。重启后 IP 可能改变。
  • 终止: 实例被永久删除。
  • 休眠 (Hibernate): 保存内存 (RAM) 状态,重启后恢复进程。节省成本(类似停止状态),但有前提(特定 AMI、实例系列、加密根卷、启动时启用)。
4. 关键概念与服务
  • 弹性 IP 地址 (EIP): 与您的账户关联的静态公有 IP。关联到实例后,即使实例重启,IP 也不会改变。停止实例时 EIP 会自动释放,需手动重新关联。
  • 实例元数据: 有关实例本身的只读数据。可通过 http://169.254.169.254/latest/meta-data/ 访问,包含实例 ID、IP、区域、安全组等信息,可用于自动化配置。
  • Amazon CloudWatch: 用于监控 EC2 实例。
    • 基本监控: 每 5 分钟发送一次指标(免费)。
    • 详细监控: 每 1 分钟发送一次指标(需付费)。
第 2 部分要点总结
  • EC2 提供对虚拟机的完全控制。
  • 启动实例需通过 AMI 模板,并在 VPC 内进行。
  • 实例类型决定了 CPU、内存、存储和网络性能。
  • 安全组是控制访问的防火墙。
  • 用户数据脚本可自动化首次启动的配置。
  • EBS 存储是持久的,实例存储是临时的
  • 只能停止由 EBS 支持的实例。
  • CloudWatch 用于监控实例性能。

第 3 部分:Amazon EC2 成本优化

1. EC2 定价模型
定价模型 说明 优势 典型使用案例
按需实例 (On-Demand) 按小时/秒付费,无长期承诺。 灵活性高,适合短期、突发性工作负载。 开发/测试、不可预测的流量。
预留实例 (Reserved Instances) 预付 1 年或 3 年费用,获得大幅折扣。 成本可预测,长期使用可节省 75%+。 稳态、可预测的工作负载(如生产数据库)。
Spot 实例 购买 AWS 闲置容量,价格极低(可达按需价的 90% 折扣),但可能被提前 2 分钟通知中断。 成本最低,适合容错和可中断任务。 批处理作业、数据分析、CI/CD、HPC。
专用实例 (Dedicated Instances) 在单租户硬件上运行,与其他 AWS 客户物理隔离。 满足合规性要求。 有严格安全/合规需求的应用。
专用主机 (Dedicated Hosts) 租用整个物理服务器,完全控制实例的放置。 自带许可 (BYOL),精确控制。 需要 BYOL 或特定硬件放置的应用。

注意: 对于运行 Amazon Linux 或 Ubuntu 的实例,支持按秒计费

2. 成本优化的四大支柱
  1. 合理调整大小 (Rightsize):

    • 根据实际 CPU、内存、存储和网络需求选择实例类型。
    • 使用 CloudWatch 监控指标,识别空闲实例并缩小其大小。
    • 停止或休眠未使用的 EBS 支持实例(如非生产环境)。
    • 提升弹性 (Increase Elasticity):

    • 使用 Auto Scaling 组根据负载自动增加或减少实例数量。

    • 实现自动化、基于时间的弹性伸缩。
    • 选择最佳定价模式 (Choose Optimal Pricing Model):

    • 稳态工作负载: 使用 预留实例

    • 可变/突发工作负载: 结合使用 按需实例 和 Spot 实例
    • 对时间不敏感的批处理: 优先使用 Spot 实例
    • 考虑 无服务器 (Lambda) 作为替代方案。
    • 优化存储选项 (Optimize Storage):

    • 调整 EBS 卷的大小和类型(如从 gp2 SSD 切换到更便宜的 st1 HDD 用于吞吐量优化场景)。

    • 删除不再需要的 EBS 快照(快照收费)。
    • 评估数据是否必须存储在 EBS 上,或可使用更便宜的 S3。

重要: 成本优化是一个持续的过程,需要定义指标、实施标签、定期审查。

第 4 部分:容器服务

1. 容器基础
  • 容器: 一种操作系统级虚拟化技术,将应用及其所有依赖(库、配置、代码)打包在一起。
  • 优势可移植性(在不同环境行为一致)、轻量级快速启动/停止
  • 与虚拟机 (VM) 对比:
    • VM: 每个 VM 包含完整的操作系统、系统文件和应用。资源开销大,启动慢。
    • 容器: 多个容器共享宿主操作系统的内核,仅包含应用和依赖。资源利用率高,启动快。
2. Docker
  • 最流行的容器化平台。
  • 使用 Dockerfile 定义容器镜像。
  • 镜像是只读模板,容器是镜像的运行实例
3. AWS 容器服务
  • Amazon ECS (Elastic Container Service):

    • AWS 原生的容器编排服务。
    • 管理 Docker 容器的部署、扩展和生命周期。
    • 集群选项:
      • EC2 启动类型: 您管理 EC2 实例,ECS 在其上运行容器。提供更多控制。
      • Fargate 启动类型: AWS 为您管理服务器基础设施,您只需定义容器需求。无服务器,更简单。
    • Amazon EKS (Elastic Kubernetes Service):

    • AWS 上的托管 Kubernetes 服务。

    • Kubernetes 是开源的容器编排系统,用于管理大规模容器化应用集群。
    • 选择 EKS 适用于需要使用 Kubernetes 生态系统工具的场景。
    • Amazon ECR (Elastic Container Registry):

    • 完全托管的 Docker 容器镜像注册表。

    • 用于存储、管理和部署 Docker 镜像。
第 4 部分要点总结
  • 容器包含应用运行所需的一切,启动快。
  • Docker 是构建和运行容器的平台。
  • ECS 是 AWS 的容器编排服务。
  • EKS 是 AWS 上的托管 Kubernetes 服务。
  • ECR 用于存储 Docker 镜像。
  • Fargate 提供无服务器的容器运行方式。

第 5 部分:AWS Lambda 简介

1. AWS Lambda 概览
  • 无服务器计算服务,您无需管理服务器。
  • 函数即服务 (FaaS): 您上传代码(称为 Lambda 函数),AWS 负责运行、扩展和维护。
  • 按执行时间付费,精确到毫秒。无请求时无费用。
2. 核心概念
  • 事件驱动: 函数在被触发时才执行。
  • 事件源 (Event Sources): 触发 Lambda 函数的 AWS 服务或应用,例如:
    • Amazon S3 (文件上传)
    • Amazon DynamoDB (数据变更)
    • Amazon API Gateway (HTTP 请求)
    • Amazon CloudWatch Events (定时任务)
    • SQS, SNS 等。
3. Lambda 函数配置
  • 函数代码: 您编写的业务逻辑。
  • 依赖项: 代码所需的库或包。
  • 执行角色 (IAM Role): 定义函数可以访问哪些 AWS 资源。
4. 优势
  • 完全自动化管理(无服务器)。
  • 内置容错和自动扩展。
  • 按实际用量付费。
  • 支持多种语言(Python, Node.js, Java, .NET, Go 等)。
5. 限制
  • 最大执行时间15 分钟
  • 最大内存3008 MB
  • 部署包大小: 解压后250 MB
  • 并发执行: 默认软限制为 1000。

第 5 部分要点总结

  • Lambda 是无服务器,按执行付费。
  • 代码在被事件触发时运行。
  • 最大运行时间为 15 分钟,最大内存为 3008 MB。

第 6 部分:AWS Elastic Beanstalk 简介

1. AWS Elastic Beanstalk 概览
  • 一项托管服务,用于快速部署和扩展 Web 应用程序。
  • 核心价值: 开发人员只需上传代码,Elastic Beanstalk 自动处理:
    • 基础设施预置(EC2, RDS, ELB, Auto Scaling 等)
    • 部署
    • 负载均衡
    • 自动扩展
    • 健康监控
    • 日志记录
2. 优势与特点
  • 入门快速,使用简单
  • 提高开发人员工作效率,减少管理复杂性。
  • 支持多种平台: Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker。
  • 不收取额外费用,您只需为您使用的底层 AWS 资源(如 EC2 实例)付费。

模块总结

本模块全面介绍了 AWS 的核心计算服务:

  • Amazon EC2 提供对虚拟机的完全控制,是 IaaS 的基石。
  • 成本优化 的关键在于选择合适的实例类型和定价模型(按需、预留、Spot)。
  • 容器服务 (ECS, EKS, Fargate, ECR) 用于高效、可扩展地运行容器化应用。
  • AWS Lambda 是无服务器计算,适合事件驱动和短时任务。
  • AWS Elastic Beanstalk 是 PaaS,让 Web 应用的部署变得简单快捷。

模块 7:存储(Module 7: Storage)

  1. Amazon Elastic Block Store (Amazon EBS)
  2. 定义:EBS 提供块级存储,可以附加到 Amazon EC 2 实例,支持持久化存储。
  3. 功能:支持 SSD 和 HDD 类型的存储卷,适用于不同的应用需求,如数据库、大数据处理等。
  4. 快照:支持快照备份,确保数据的持久性和恢复能力。

  5. Amazon Simple Storage Service (Amazon S 3)

  6. 定义:S 3 是对象存储服务,设计为几乎无限的存储空间,适用于大规模数据存储。
  7. 存储类:提供多种存储类,如标准、低频访问、Glacier 等,适合不同的使用场景。
  8. 功能:高持久性(11 个 9),支持数据备份、应用托管、媒体存储等。

  9. Amazon Elastic File System (Amazon EFS)

  10. 定义:EFS 是一个共享文件存储服务,适用于需要共享存储的应用场景。
  11. 特点:支持 NFS 协议,具备弹性容量,适合大数据分析、媒体处理等场景。

  12. Amazon S 3 Glacier

  13. 定义:S 3 Glacier 是用于数据归档的低成本存储服务,适合长期存储。
  14. 功能:提供不同的检索选项(标准、批量、加速),确保高数据持久性和低成本存储。

模块 8:数据库(Module 8: Databases)

  1. Amazon Relational Database Service (Amazon RDS)
  2. 定义:Amazon RDS 是一个托管的关系数据库服务,支持多种数据库引擎,如 MySQL、PostgreSQL、Oracle 等。
  3. 功能:自动化的数据库管理,支持扩展、备份、容错等功能,用户只需要关注应用程序的优化。
  4. 高可用性:通过多可用区部署和只读副本提升系统的可用性和数据容错能力。
  5. 用途:适用于需要处理复杂事务或复杂查询的应用程序。

  6. Amazon DynamoDB

  7. 定义:DynamoDB 是一个完全托管的 NoSQL 数据库,支持键值和文档存储模型。
  8. 特点:低延迟、高吞吐量,支持水平扩展,适用于移动、Web、IoT 等应用。
  9. 功能:表、项目和属性是其核心组成部分,支持自动跨区复制,适合快速灵活的数据存储需求。

  10. Amazon Redshift

  11. 定义:Redshift 是一个数据仓库服务,采用列式存储和并行处理架构。
  12. 功能:适合大数据分析和商业智能应用,支持高效的数据存储和查询。
  13. 使用场景:适用于数据仓库、SaaS 应用等,能够快速响应业务需求并扩展。

  14. Amazon Aurora

  15. 定义:Aurora 是一个兼容 MySQL 和 PostgreSQL 的关系数据库,提供高性能和可扩展性。
  16. 功能:自动化处理预置、修补、备份等任务,具有企业级的高可用性和耐久性。

模块 9:云架构

第 1 部分:AWS 架构完善的框架 (AWS Well-Architected Framework)

1. 框架概述
  • 定义: 一个用于设计、评估和优化云架构的指南和最佳实践集合
  • 目的:
    • 帮助客户以一致的方法构建安全、高效、可靠的云基础设施。
    • 提供基于 AWS 客户实践经验的评估标准。
    • 通过一系列问题,帮助您判断架构是否符合云最佳实践。
2. 五大支柱 (Five Pillars)

框架围绕五个核心领域构建,每个支柱都包含设计原则和最佳实践问题。

支柱 关注点 关键主题 核心设计原则
卓越运营 (Operational Excellence) 交付商业价值:运行和监控系统,持续改进流程。 管理和自动化变更、响应事件、管理日常运营。 以代码形式运营、注释文档、进行频繁可逆的微小更改、预见故障、从故障中吸取教训。
安全性 (Security) 保护和监控系统:保护信息、系统和资产。 身份和访问管理、检测性控制、基础设施保护、数据保护、事件响应。 实施强有力的身份管理基础、启用可追踪性、在所有层应用安全性、自动化安全最佳实践、保护传输中和静态数据。
可靠性 (Reliability) 从故障中恢复并减少中断:预防故障,快速恢复。 设置、跨项目要求、恢复规划、处理变更。 测试恢复流程、自动从故障中恢复、横向扩展、无需猜测容量、管理自动化变更。
性能效率 (Performance Efficiency) 谨慎使用资源:高效利用 IT 资源满足系统要求。 选择合适的资源、监控性能、随着需求变化做出明智决策。 普及先进技术、数分钟内实现全球化部署、使用无服务器架构、选择最合适的技术。
成本优化 (Cost Optimization) 消除不必要的支出:以最低成本交付商业价值。 了解和控制支出、选择合适的资源、分析支出、供需平衡。 采用消费模型、衡量总体效率、无需为数据中心运营投入资金、分析支出并确定归属。
3. 使用框架的方法
  • 以问题为导向: 框架通过一系列问题(如“如何管理凭证?”、“如何备份数据?”)来引导您审视架构。
  • 评估现状与未来: 针对每个问题,思考当前架构的状况(当前如何做)和理想的未来状况(应该怎么做)。
  • 持续改进: 没有完美的架构,目标是通过框架持续发现改进点。
4. AWS Well-Architected Tool (工具)
  • 一个在线工具,帮助您根据框架的五大支柱自动评估您的工作负载。
  • 提供行动计划,包含改进架构的分步指南。
  • 使您可以随时访问 AWS 架构师的知识和最佳实践。

第 2 部分:可靠性和可用性

1. 可靠性 (Reliability)
  • 定义: 系统在用户需要时提供功能的能力
  • 衡量指标:
    • 平均无故障时间 (MTBF)MTBF = MTTF + MTTR
      • MTTF (平均故障时间): 系统正常运行的平均时间。
      • MTTR (平均修复时间): 系统发生故障后修复的平均时间。
    • MTBF 越长,系统越可靠。
2. 可用性 (Availability)
  • 定义: 系统正常运行时间占总时间的百分比。
  • 衡量指标:
    • 可用性 = 正常运行时间 / 总时间
    • 通常用“9 的个数”来表示,例如:
      • 99.9% 可用性 = 3 个 9 (每年约 8.76 小时停机)
      • 99.999% 可用性 = 5 个 9 (每年约 5.26 分钟停机)
3. 影响可用性的三大因素
  • 容错能力 (Fault Tolerance): 系统组件内置冗余,部分组件故障时,系统仍能保持可用。
  • 可扩展性 (Scalability): 系统能够适应容量需求的增长而不改变设计。
  • 可恢复性 (Recoverability): 灾难性事件发生后,恢复服务的流程、策略和程序。

关键点: 设计高可用性系统需要在性能、成本和复杂性之间做出权衡。


第 3 部分:AWS Trusted Advisor

1. 概述

  • 定义: 一个提供实时指导的在线工具,帮助您按照 AWS 最佳实践配置资源。
  • 作用: 查看您的整个 AWS 环境,并提供五个类别的建议。
2. 五大建议类别
  1. 成本优化 (Cost Optimization)
  2. 性能 (Performance)
  3. 安全性 (Security)
  4. 容错能力 (Fault Tolerance)
  5. 服务限制 (Service Limits)
3. 解释 Trusted Advisor 建议
建议 描述 警报条件 建议操作
根账户上的 MFA 为根账户启用多重验证,增加安全性。 根账户未启用 MFA。 登录根账户,激活 MFA 设备。
IAM 密码策略 强制执行强密码策略。 密码策略未启用,或未启用所有内容要求(如长度、复杂度)。 启用密码策略并设置所有要求。
安全组 - 不受限制的访问 安全组规则允许从任何 IP (/0) 访问非标准端口,增加安全风险。 安全组规则的源 IP 为 /0,且端口不是 25, 80, 443。 限制源 IP 为特定 IP (/32) 或 IP 段,然后删除宽松规则。
Amazon EBS 快照 检查 EBS 卷的快照创建时间。 黄色: 快照超过 7 天但少于 30 天。
红色: 快照超过 30 天或没有快照。
定期(如每周)创建 EBS 卷快照。
Amazon S3 存储桶日志记录 检查 S3 存储桶是否启用了服务器访问日志记录。 黄色: 未启用日志记录。 为需要审计或分析的存储桶启用日志记录。

关键点: Trusted Advisor 是优化 AWS 环境的绝佳起点,可以在架构设计过程中持续使用。

模块 9 总结

  • AWS 架构完善的框架是设计云架构的黄金标准,包含卓越运营、安全性、可靠性、性能效率、成本优化五大支柱。
  • 可靠性关注系统提供功能的能力,用 MTBF 衡量。
  • 可用性关注系统正常运行的时间百分比,受容错能力、可扩展性、可恢复性影响。
  • AWS Trusted Advisor 是一个实时指导工具,提供成本、性能、安全、容错、服务限制五个类别的优化建议,是实践框架的有力助手。

模块 10:自动扩展和监控 复习总结

模块概览与目标

本模块深入探讨了如何实现应用的弹性、高可用和可观测性。完成本模块后,您应能:

  • 说明如何使用 Elastic Load Balancing 分配流量。
  • 了解如何使用 Amazon CloudWatch 监控资源和应用。
  • 解释 Amazon EC2 Auto Scaling 如何响应负载变化。
  • 执行扩展和负载均衡任务来改善架构。

第 1 部分:Elastic Load Balancing (ELB)

1. 概述
  • 定义: 在一个或多个可用区中的多个目标(EC2 实例、容器、Lambda 函数等)之间分配传入的流量
  • 目的: 实现高可用性、容错能力、弹性和可扩展性
2. 工作原理
  • 侦听器 (Listener): 检查来自客户端的连接请求。
  • 运行状况检查 (Health Checks): 负载均衡器定期检查注册目标的健康状况。
  • 流量路由仅将流量路由到运行状况良好的目标。如果目标故障,流量会被自动重定向。
3. 负载均衡器类型
  • Application Load Balancer (ALB):
    • 作用于 7 层 (应用层)
    • 基于内容(如 URL 路径、主机名)路由流量。
    • 支持 HTTP/HTTPS,可与 Lambda、容器集成。
  • Network Load Balancer (NLB):
    • 作用于 4 层 (传输层)
    • 基于IP 地址和端口路由流量。
    • 性能极高(每秒数百万请求),延迟极低,支持静态 IP。
  • Classic Load Balancer (CLB):
    • 旧版负载均衡器,支持 4 层和 7 层。
    • 功能较少,新项目推荐使用 ALB 或 NLB
4. 使用场景
  • ALB: 微服务、容器化应用、基于内容的路由、HTTPS 卸载。
  • NLB: TCP 流量极高、需要极低延迟、需要静态 IP、处理数百万请求/秒。
  • CLB: 简单的负载均衡需求(不推荐新项目使用)。
5. 监控
  • Amazon CloudWatch 指标: 监控负载均衡器性能(如请求速率、健康主机数)。
  • 访问日志: 记录每个请求的详细信息(源 IP、时间、目标等)。
  • AWS CloudTrail 日志: 记录对 ELB API 的调用。

第 2 部分:Amazon CloudWatch

1. 概述
  • 定义: AWS 的监控和可观察性服务,用于监控 AWS 资源和在 AWS 上运行的应用程序。
2. 核心功能
  • 收集和跟踪指标 (Metrics):
    • 标准指标: AWS 服务自动发送的指标(如 EC2 CPU 利用率)。
    • 自定义指标: 您可以发送应用程序或业务的自定义指标。
  • 创建警报 (Alarms):
    • 当指标超过或低于静态阈值时触发。
    • 可配置操作,如发送通知到 SNS、执行 Auto Scaling 操作。
  • 事件 (Events):
    • 定义规则来响应 AWS 环境中的状态变化(如 EC2 实例启动)。
    • 将事件路由到目标(如 Lambda 函数、SNS)进行处理。
3. 创建 CloudWatch 警报的要素
  • 命名空间 (Namespace): 指定 AWS 服务(如 AWS/EC2)。
  • 指标 (Metric): 具体要监控的度量(如 CPUUtilization)。
  • 统计数据 (Statistic): 指标的聚合方式(如 AverageMaximum)。
  • 时间段 (Period): 数据聚合的时间间隔(如 5 分钟)。
  • 条件 (Condition): 阈值条件(如 >>=<<=)。
  • 操作 (Actions): 触发警报时要执行的操作。

关键点: 警报条件必须是明确的比较(>、>=、<、<=),不能是“大约”。

第 3 部分:Amazon EC2 Auto Scaling

1. 为什么需要扩展?
  • 问题: 预置固定容量会导致资源浪费(低峰期)或性能下降(高峰期)。
  • 解决方案Auto Scaling 根据负载自动调整计算资源。
2. Amazon EC2 Auto Scaling 概述
  • 定义: 一组服务,用于自动添加或删除 EC2 实例以响应负载变化。
  • 核心功能:
    • 保持应用程序可用性
    • 自动检测和替换不健康的实例。
    • 支持多种扩展模式。
3. Auto Scaling 组 (Auto Scaling Group)
  • 一组被视为逻辑单元的 EC2 实例,用于扩展和管理。
  • 配置包含:
    • 最小容量: 组中始终运行的最少实例数。
    • 所需容量: 当前希望运行的实例数。
    • 最大容量: 组中允许运行的最多实例数。
4. 扩展选项
  • 手动扩展: 手动调整所需容量。
  • 计划扩展: 在预知的高峰时间(如促销活动)前自动扩展。
  • 动态扩展 (Dynamic Scaling):
    • 基于 CloudWatch 警报(如 CPU 利用率 > 60%)自动扩展。
    • 是最常用的模式,实现弹性
  • 预测性扩展: 使用机器学习预测未来负载并提前扩展。
5. 工作原理 (动态扩展)
  1. CloudWatch 监控 EC2 实例的 CPU 利用率。
  2. 当利用率持续高于阈值(如 60% 持续 5 分钟),CloudWatch 警报被触发。
  3. 警报通知 EC2 Auto Scaling 执行扩展策略。
  4. Auto Scaling 组根据启动配置(包含 AMI、实例类型、安全组等)启动新实例
  5. 新实例通过运行状况检查后,被添加到负载均衡器的目标组中,开始接收流量。
6. 启动配置 (Launch Configuration)
  • 一个模板,定义了 Auto Scaling 组启动新实例时使用的配置,包括:
    • AMI ID
    • 实例类型
    • IAM 角色
    • 安全组
    • 存储 (EBS 卷)
    • VPC 和子网
    • 用户数据脚本
7. AWS Auto Scaling (独立服务)
  • 一个更高级的服务,可以为多种资源(EC2、ECS 任务、DynamoDB 表、Aurora 副本)统一管理扩展策略。
  • 与 EC2 Auto Scaling 是独立的服务

模块 10 总结

  • Elastic Load Balancing (ELB) 将流量分发到多个实例,实现高可用和容错。ALB 用于应用层路由,NLB 用于高性能传输层路由。
  • Amazon CloudWatch 是核心监控服务,用于收集指标、创建警报(可触发 Auto Scaling)和处理事件。
  • Amazon EC2 Auto Scaling 通过自动增减 EC2 实例来应对负载变化,确保应用可用性。其核心是 Auto Scaling 组 和 启动配置
  • 动态扩展 是最常用的模式,由 CloudWatch 警报 触发 Auto Scaling 操作,最终由 ELB 将流量分发给新实例,三者协同工作,构成了 AWS 弹性架构的基石。

云计算资源技术应用 - 第一讲 复习总结

第一部分:什么是云计算

1. 云计算定义
  • 核心定义:云计算是一种通过互联网按需提供计算能力、数据库、存储、应用程序和其他 IT 资源的模式。
  • 关键特征
    • 按实际使用量付费:采用类似水电的“消费模型”定价,用户只为实际使用的资源付费。
    • 基础设施即软件:用户不再需要将基础设施视为物理硬件,而是可以像使用软件一样灵活地获取和管理。
  • 生活化类比:云盘、网络电视、抖音等都是云计算的日常应用。学校的办事大厅(如健康填报、企业微信)也是云计算服务的具体体现。
2. 云服务模型 (Service Models)

云计算服务根据提供的抽象层次和用户控制程度,分为三种主要模型,从下到上控制权递减。

模型 全称 用户控制程度 核心内容 代表服务/组件
IaaS 基础设施即服务 (Infrastructure as a Service) 较高 提供最基础的 IT 资源。 出租计算、存储、网络、DNS 等基本服务。
PaaS 平台即服务 (Platform as a Service) 中等 在 IaaS 之上提供应用开发和运行环境。 应用服务器、编程语言、开发框架、数据库服务、消息/支付/计费等组件。
SaaS 软件即服务 (Software as a Service) 较低 直接提供可使用的应用程序。 互联网 Web 应用、企业应用 (ERP/CRM)、云盘、邮件等。

理解层级:可以想象为一个金字塔。

  • 底层 (IaaS): 硬件基础设施(网络、计算、存储)。
  • 中层 (PaaS): 操作系统、中间件、数据库等平台。
  • 顶层 (SaaS): 最终用户使用的软件应用。
3. 云计算部署模式 (Deployment Models)

根据云资源的拥有者和访问范围,分为三种部署模式。

  • 公有云 (Public Cloud): 由第三方云服务商(如 AWS, 阿里云)拥有和运营,资源通过互联网提供给公众使用。成本低,规模大
  • 私有云 (Private Cloud / 本地): 云基础设施专供一个组织使用,可以部署在企业内部数据中心(本地),也可以由第三方托管。安全性高,控制力强
  • 混合云 (Hybrid Cloud): 结合了公有云和私有云的特点,允许数据和应用在两者之间共享和移动。兼顾了灵活性与安全性。

第二部分:为什么需要云计算

企业 IT 基础设施面临的痛点

传统自建 IT 基础设施存在诸多问题,而云计算正是为解决这些问题而生。

痛点 传统模式 云计算解决方案
资源利用率低 服务器资源利用率低,外置存储昂贵。 资源池化,按需分配,提高整体利用率。
资本支出高 (CapEx) 需要大量前期投资购买硬件、建设数据中心。 转变为可变支出 (OpEx):仅按实际使用量付费,无需大规模前期投资。
业务上线慢 采购硬件、安装软件、调试业务,周期长(数周)。 提高速度和敏捷性:数分钟内即可获取资源,快速部署应用。
容量规划困难 容量估计过高造成浪费,估计不足导致业务卡顿。 无需猜测容量:按需扩展,弹性伸缩,应对流量高峰。
运维复杂 需要投入资金和人力维护数据中心(电力、散热、安全)。 无需再为数据中心的运行和维护投入资金:云服务商负责底层硬件维护。
全球化部署难 将业务部署到全球多个地区非常困难。 数分钟内实现全球化部署:利用云服务商遍布全球的数据中心。
TCO 居高不下 总体拥有成本 (TCO) 高。 大型规模经济:云服务商通过大规模采购降低成本,并将节省让利给客户。

核心价值总结:云计算帮助企业将资本支出 (CapEx) 转变为可变支出 (OpEx),实现降本增效,并获得前所未有的敏捷性和弹性

第三部分:云计算能做什么

1. 丰富的云服务

现代云平台提供了数千种服务,覆盖了 IT 的方方面面,主要包括:

  • 计算 (Compute): 如弹性云服务器 (ECS/EC2)。
  • 存储 (Storage): 如对象存储服务 (OBS/S3)。
  • 数据库 (Database): 各种关系型和非关系型数据库服务。
  • 网络 (Networking): VPC、负载均衡、CDN 等。
  • 安全 (Security): 身份认证、防火墙、加密等。
  • 人工智能/机器学习 (AI/ML): 提供机器学习模型训练和推理服务。
  • 物联网 (IoT): 设备连接、数据采集与分析。
  • 分析 (Analytics): 大数据处理和分析服务。
  • 开发人员工具 (Developer Tools): 代码托管、持续集成/持续部署 (CI/CD) 等。
2. 典型应用场景与解决方案

云计算已深入各行各业,提供了超过 50 种解决方案,例如:

  • 通用场景:

    • 云上办公: 企业邮箱、协作平台。
    • 企业云盘: 文件存储与共享。
    • 备份与归档: 数据安全备份,长期存储。
    • 上云迁移: 将传统应用迁移到云上。
    • 高性能计算 (HPC): 科学计算、基因工程、生物制药等。
    • 行业解决方案:

    • 金融行业: 等保合规安全、风控系统。

    • 零售/电商: 电商双交付、广告精准营销。
    • 智能制造/车联网: 工业物联网、车辆数据管理。
    • 医疗: 医疗影像存储与分析。
    • 游戏: 游戏开发、游戏安全、云游戏。
    • 移动互联/IoT: 移动应用后端、物联网平台。

第四部分:核心服务详解

1. 计算服务 - 弹性云服务器 (ECS/EC2)
  • 定义: 一种可随时自助获取、计算能力可弹性伸缩的云服务器。

  • 核心优势: 可靠、安全、灵活、高效,提升运维效率。

  • 关键概念:

    • 地域 (Region): 地理位置概念,如华北、华东。
    • 可用区 (Availability Zone): 同一地域内,独立的物理机房,通过低延迟网络连接。用于实现高可用。
    • GPU 加速云服务器:

    • 原理: 通过虚拟化技术将物理 GPU 分割为多个 vGPU,供虚拟机使用。

    • 适用场景: 图形渲染、工程制图、远程桌面、桌面云。
    • 服务器类型:

    • 通用计算型/增强型/入门型

    • 内存优化型/超大内存型
    • 磁盘增强型
    • 超高 I/O 型
    • 高性能计算型/超高性能计算型
    • GPU 加速型/FPGA 加速型
    • 应用场景示例:

    • 企业官网/小型数据库: 推荐 s3.large.2 + 普通 IO 云硬盘。

    • 电商/广告精准营销: 推荐 m3.2xlarge.8 + 超高 IO 云硬盘。
    • 高清视频/图形渲染: 推荐 g1.2xlarge + 高 IO 云硬盘。
    • 科学计算/HPC: 推荐 h3.4xlarge.4 + 超高 IO 云硬盘。
2. 存储服务 - 对象存储服务 (OBS/S3)
  • 定义: 一个基于对象的海量、低成本、高可靠、安全的数据存储服务。
  • 核心优势:
    • 高可用: 数据持久性高达 11 个 9 (99.999999999%),可用性 99.99%。
    • 低成本: 成本低廉,支持海量扩展。
    • 易使用: 提供 Web 控制台、客户端、SDK 和 S3 原生接口。
  • 适用场景:
    • 海量存储资源池
    • 静态网站托管
    • 大数据存储
    • 备份与归档
    • 网盘类业务

与传统存储对比: - 块存储 (Block Storage): 像硬盘,直接挂载给服务器使用 (如 EBS)。 - 文件存储 (File Storage): 支持文件系统协议 (NFS/CIFS),多台服务器共享 (如 EFS)。 - 对象存储 (Object Storage): 通过 HTTP/REST API 访问,以“桶 (Bucket)”和“对象 (Object)”组织数据,适合非结构化数据。