虚拟化与云计算
虚拟化技术是现代云计算的基础。本章节涵盖从底层硬件虚拟化到上层云平台、再到容器化技术的完整知识体系,帮助您系统性地掌握 Linux 计算资源抽象的全貌。
技术栈概览
┌─────────────────────────────────┐
│ Kubernetes (容器编排) │ ← 应用层编排
├─────────────────────────────────┤
│ Docker (容器引擎) │ ← 应用容器化
├─────────────────────────────────┤
│ OpenStack (IaaS 云平台) │ ← 云资源管理
├─────────────────────────────────┤
│ KVM (虚拟机监控器) │ ← 硬件虚拟化
├─────────────────────────────────┤
│ Linux 操作系统 / 物理硬件 │ ← 基础设施层
└─────────────────────────────────┘KVM 虚拟化
KVM(Kernel-based Virtual Machine)是 Linux 内核内置的虚拟化解决方案,它将 Linux 转变为 Type-1 型虚拟机监控器(Hypervisor)。KVM 是 OpenStack 和众多云平台最底层的虚拟化基石。
核心特性
- 基于内核的硬件辅助虚拟化(需 CPU 支持 VT-x/AMD-V)
- 接近物理机的性能表现
- 与 Linux 内核深度集成,利用现有内核功能(内存管理、调度器、设备驱动)
- 支持热迁移、CPU Pinning、巨页内存、NUMA 亲和等高级特性
- 通过 libvirt 提供统一管理接口
相关文档
知识库建设中…
OpenStack 云平台
OpenStack 是开源的云计算基础设施即服务(IaaS)平台,通过 KVM 等 Hypervisor 提供虚拟化资源管理能力。它由多个组件构成,管理计算、网络、存储等核心资源。
核心组件
- Nova — 计算服务,管理虚拟机生命周期
- Neutron — 网络服务,SDN 虚拟网络
- Cinder — 块存储服务,持久化存储卷
- Glance — 镜像服务,虚拟机镜像管理
- Keystone — 认证服务,统一身份认证
- Swift — 对象存储服务
相关文档
知识库建设中…
Docker
Docker 是最流行的容器引擎,提供了简单易用的工具来创建、运行和管理容器。
核心概念
- 镜像(Image):容器的只读模板,包含应用代码和运行环境
- 容器(Container):镜像的运行实例,可读写
- 仓库(Repository):存储镜像的场所
相关文档
Kubernetes
Kubernetes(K8s)是开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。
核心功能
- 自动化部署和扩缩容
- 服务发现与负载均衡
- 自我修复能力
- 配置和存储管理
- 容器编排与调度
相关文档
入门与概念
Pod与容器
Service服务
存储管理
资源管理
高可用与调度
扩缩容管理
安全认证
集群环境
工作负载案例
故障处理
- [K8s节点镜像GC失败故障](Kubernetes/故障处理/K8s 节点镜像垃圾回收 (GC) 失败故障知识库.md)
- CoreDNS故障分析
- apiserver OOM故障分析
可视化工具
汇总
选型指南
| 技术 | 类型 | 抽象级别 | 适用场景 |
|---|---|---|---|
| KVM | 硬件虚拟化 | 物理机 → 虚拟机 | 需要完整 OS 隔离、高性能计算、传统应用上云 |
| OpenStack | IaaS 云平台 | 虚拟机集群管理 | 私有云建设、大规模虚拟化资源管理 |
| Docker | 容器引擎 | 应用容器化 | 微服务打包、开发测试环境标准化 |
| Kubernetes | 容器编排 | 容器集群管理 | 微服务编排、自动扩缩容、云原生应用 |
- 若需要传统虚拟化和云管理平台 → KVM + OpenStack
- 若只需应用容器化或本地开发测试 → Docker
- 若需要大规模容器集群管理、高可用编排 → Kubernetes
- 企业实际生产中,四者常组合使用:KVM 提供虚拟化底座,OpenStack 管理 VM 资源,Docker 打包应用,K8s 负责编排
