Skip to content

第二部分 云计算基础

本部分介绍云计算的基本概念、主流云产品以及混合云架构。理解云计算是掌握 Kubernetes 运维的重要基础,因为现代 K8s 集群大多部署在云环境或混合云环境中。


第 5 章 云计算概述与混合云架构

5.1 什么是云计算

云计算(Cloud Computing)是一种按使用量付费的模式,提供可用的、便捷的、按需的网络访问,进入可配置的计算资源共享池(资源包括网络、服务器、存储、应用软件、服务)。

5.2 云计算服务模型

模型全称含义例子
IaaSInfrastructure as a Service基础设施即服务云服务器、云硬盘、VPC
PaaSPlatform as a Service平台即服务数据库服务、消息队列、K8s 托管服务
SaaSSoftware as a Service软件即服务企业邮箱、在线文档、CRM

5.3 云计算部署模型

模型说明适用场景
公有云第三方提供商运营,多租户共享互联网企业、初创公司
私有云企业自建,独占资源金融、政府、大型企业
混合云公有云 + 私有云 + 本地数据中心大多数中大型企业
多云同时使用多个云厂商避免厂商锁定

5.4 混合云架构

混合云(Hybrid Cloud)结合了公有云和私有云的优势,允许数据和应用在两者之间流动。

典型混合云场景:

  • 核心业务数据在私有云
  • 弹性扩展业务在公有云
  • 灾备在公有云
  • 开发和测试在公有云
                    ┌─────────────────────────────────────┐
                    │           企业内部网络               │
                    │  ┌──────────┐     ┌──────────────┐  │
                    │  │ 私有云   │     │ 本地数据中心 │  │
                    │  │ OpenStack│     │ VMware/KVM   │  │
                    │  └────┬─────┘     └──────┬───────┘  │
                    │       │                  │          │
                    │       └────────┬─────────┘          │
                    │                │ VPN/专线            │
                    └────────────────┼─────────────────────┘

                    ┌────────────────┼─────────────────────┐
                    │           公有云                      │
                    │  ┌───────────┐ ┌───────────┐         │
                    │  │ 阿里云    │ │ AWS       │         │
                    │  │ 腾讯云    │ │ Azure     │         │
                    │  │ 华为云    │ │ GCP       │         │
                    │  └───────────┘ └───────────┘         │
                    └─────────────────────────────────────┘

5.5 主流云厂商

云厂商特点
阿里云国内市场份额最大,产品丰富
腾讯云游戏、社交场景强
华为云政企市场强
AWS全球市场份额最大,服务最全
Azure微软生态,企业市场强
Google CloudAI/数据能力强

5.6 本章练习

  1. 解释 IaaS、PaaS、SaaS 的区别,各举一个例子。
  2. 画一个你理解的混合云架构图。
  3. 列举三个使用公有云和私有云的场景。

第 6 章 主流云产品解析

6.1 计算类产品

云服务器(ECS/EC2/CVM)

云服务器是云计算最基础的产品,相当于一台虚拟服务器。

云厂商产品名
阿里云ECS
腾讯云CVM
华为云ECS
AWSEC2
AzureVirtual Machines

常见规格:

  • 通用型:适合 Web 服务、中小型应用
  • 计算型:适合计算密集型任务
  • 内存型:适合数据库、缓存
  • GPU 型:适合 AI 训练、推理

弹性伸缩(Auto Scaling)

根据负载自动增加或减少服务器数量。

负载增加 ──> 自动创建 ECS ──> 加入负载均衡
负载降低 ──> 自动释放 ECS ──> 从负载均衡移除

6.2 网络类产品

VPC(Virtual Private Cloud)

VPC 是用户在云上自定义的隔离私有网络。

核心概念:

  • VPC:虚拟私有云
  • 子网(Subnet):VPC 内的 IP 地址段
  • 路由表(Route Table):控制子网内流量走向
  • 安全组(Security Group):虚拟防火墙,控制实例入站和出站流量
  • 网络 ACL:子网级别的访问控制
VPC: 192.168.0.0/16
├── 子网 A: 192.168.1.0/24  (可用区 1)
├── 子网 B: 192.168.2.0/24  (可用区 2)
└── 子网 C: 192.168.3.0/24  (可用区 3)

负载均衡(SLB/ELB/CLB)

将流量分发到多台后端服务器。

类型:

  • 四层负载均衡(L4):基于 TCP/UDP 端口
  • 七层负载均衡(L7):基于 HTTP/HTTPS URL
云厂商产品名
阿里云SLB
腾讯云CLB
AWSELB/ALB/NLB
AzureLoad Balancer/Application Gateway

6.3 存储类产品

云硬盘(EBS/EVS/云盘)

挂载到云服务器上的块存储设备。

类型:

  • SSD 云盘:高性能,适合数据库
  • 高效云盘:性价比高
  • ESSD:企业级 SSD

对象存储(OSS/S3/COS)

用于存储非结构化数据(图片、视频、日志备份等)。

特点:

  • 海量存储
  • 按需付费
  • 高可靠
  • 支持 CDN 加速
云厂商产品名
阿里云OSS
腾讯云COS
AWSS3
AzureBlob Storage

文件存储(NAS/EFS)

提供 NFS 协议访问的共享文件存储。

6.4 数据库与中间件

类型说明例子
关系型数据库RDSMySQL、PostgreSQL、SQL Server
NoSQL 数据库MongoDB、Redis
缓存Redis、Memcached
消息队列Kafka、RabbitMQ、RocketMQ

6.5 云原生与 Kubernetes 服务

云厂商托管 K8s 服务
阿里云ACK
腾讯云TKE
华为云CCE
AWSEKS
AzureAKS
Google CloudGKE

托管 K8s 服务的优势:

  • 控制平面由云厂商托管
  • 自动升级
  • 集成监控、日志、存储
  • 与云网络、负载均衡深度集成

6.6 本章练习

  1. 列出 VPC、子网、安全组、路由表之间的关系。
  2. 比较对象存储和云硬盘的区别。
  3. 解释四层负载均衡和七层负载均衡的区别。
  4. 列举三个使用托管 K8s 服务的优势。

第 7 章 云平台基础操作

7.1 通过控制台创建资源

以阿里云为例:

  1. 登录阿里云控制台
  2. 创建 VPC 和交换机(子网)
  3. 创建安全组,放行 SSH(22)、HTTP(80)、HTTPS(443)
  4. 创建 ECS 实例
  5. 绑定弹性公网 IP(EIP)
  6. 远程连接 ECS

7.2 使用 CLI 管理云资源

阿里云 CLI

bash
# 安装
pip install aliyun-cli

# 配置
aliyun configure

# 查看 ECS 列表
aliyun ecs DescribeInstances --RegionId cn-hangzhou

# 创建实例
aliyun ecs RunInstances \
  --RegionId cn-hangzhou \
  --ImageId ubuntu_22_04_x64_20G_alibase_20230720.vhd \
  --InstanceType ecs.c7.large \
  --SecurityGroupId sg-xxxxxx \
  --VSwitchId vsw-xxxxxx \
  --InternetMaxBandwidthOut 5 \
  --InstanceName k8s-node-1

AWS CLI

bash
# 安装并配置
aws configure

# 查看 EC2 实例
aws ec2 describe-instances

# 创建实例
aws ec2 run-instances \
  --image-id ami-12345678 \
  --instance-type t3.medium \
  --security-group-ids sg-xxxxxx \
  --subnet-id subnet-xxxxxx \
  --key-name my-key

7.3 使用 Terraform 管理基础设施

Terraform 是 Infrastructure as Code(IaC)工具,可以用代码管理云资源。

hcl
# main.tf
terraform {
  required_providers {
    alicloud = {
      source = "aliyun/alicloud"
    }
  }
}

provider "alicloud" {
  region = "cn-hangzhou"
}

resource "alicloud_vpc" "main" {
  vpc_name   = "k8s-vpc"
  cidr_block = "172.16.0.0/16"
}

resource "alicloud_vswitch" "main" {
  vpc_id     = alicloud_vpc.main.id
  cidr_block = "172.16.1.0/24"
  zone_id    = "cn-hangzhou-b"
}
bash
terraform init
terraform plan
terraform apply
terraform destroy

7.4 云资源成本管理

  • 使用按量付费还是包年包月?
  • 合理选择实例规格
  • 释放闲置资源
  • 使用抢占式实例/Spot 实例降低成本
  • 设置预算告警
  • 使用标签(Tag)进行成本分摊

7.5 本章实验

实验 7-1:在云上创建第一个 VPC + ECS

目标:在阿里云/AWS/腾讯云上创建一个 VPC、一个子网、一个安全组,并启动一台 ECS/EC2。

步骤:

  1. 登录云厂商控制台
  2. 创建 VPC(如 192.168.0.0/16)
  3. 创建子网(如 192.168.1.0/24)
  4. 创建安全组,放行 22、80、443
  5. 启动一台 2 核 4GB 的云服务器
  6. 使用 SSH 登录

实验 7-2:使用 Terraform 创建 VPC

bash
# 1. 创建目录
mkdir terraform-demo && cd terraform-demo

# 2. 编写 main.tf(见上方示例)

# 3. 初始化并应用
terraform init
terraform plan
terraform apply

# 4. 销毁
terraform destroy

7.6 本章练习

  1. 在任意云厂商上创建一个 VPC 和一台云服务器。
  2. 使用 CLI 查询你创建的云资源。
  3. 安装 Terraform,创建一个 VPC 资源并销毁。
  4. 查看云账单,了解不同资源的计费方式。

第二阶段总结

完成本阶段学习后,你应该能够:

  • 理解云计算服务模型和部署模型
  • 理解混合云架构
  • 熟悉云服务器、VPC、子网、安全组、负载均衡、云盘、对象存储等产品
  • 能通过控制台和 CLI 管理云资源
  • 了解 Terraform 基础设施即代码

进入下一阶段:容器技术基础