本题为开放题,无标准答案
云原生与弹性计算探索指南
欢迎开启云原生技术的学习之旅!本指南将帮助你通过自主探究理解核心概念。请先阅读以下学习建议:
- 善用搜索引擎(推荐 Google)
- 对复杂概念可向 AI 工具提问
- 所有答案请用自己的语言总结
💬 请将你的答案整理成Markdown文档,包含:
- 概念定义(标注参考资料)
- 对比分析的图表
- 实际操作的心得体会
- 尚未理解的疑难问题
第一阶段:认识容器化技术
📚 核心概念
容器化(Containerization)利用 Linux 内核的命名空间 (Namespace)、控制组 (Cgroups) 等特性实现进程隔离,使多个应用共享操作系统内核却能独立运行。就像货轮上的集装箱,每个"容器"都是标准化的运行环境。
🔍 研究关键词
- 容器化 Containerization
- Docker | Kubernetes
- 裸金属 Bare Metal
- Linux内核特性(Namespaces/Cgroups/seccomp)
💡 思考题
- 为什么说容器是"轻量级"虚拟化?它与Linux内核的哪些机制直接相关?(提示:对比虚拟机启动过程)
- 容器化相比传统虚拟化有哪些显著优势?又会带来什么潜在风险?(建议用表格对比)
- 举例说明哪些场景特别适合容器化技术?(如:持续集成、微服务部署...)
- 共享内核可能引发什么问题?业界如何解决?(调研:gVisor/Kata Containers 方案)
- 容器访问GPU等特殊设备的实现原理?(关键词:NVIDIA Container Toolkit)
第二阶段:理解虚拟化技术
📚 核心概念
虚拟化通过 Hypervisor(虚拟机监控器)将物理资源抽象为虚拟资源,允许在单台机器上运行多个独立操作系统。就像用软件"伪造"出多台计算机。
🔍 研究关键词
- 虚拟化 Virtualization
- Hypervisor(Type-1/Type-2)
- KVM | Xen | VMware
- PCIe 透传(PCI Passthrough)
💡 思考题
- Hypervisor 如何协调多个虚拟机对硬件的访问?(对比 Type-1/Type-2 架构差异)
- 什么场景下虚拟化比容器化更合适?(考虑:安全隔离、遗留系统兼容...)
- 调研主流虚拟化方案,尝试在个人电脑安装 VirtualBox 创建虚拟机
- 如何优化虚拟机的启动速度?(探索:模板克隆、内存快照技术)
- 虚拟机如何直接控制GPU?(研究:SR-IOV 和 VFIO 机制)
✨ 进阶挑战
- 用 Docker 部署一个 Python 网站,对比虚拟机部署的耗时差异
- 尝试自己构建一个容器
- 设计一个混合使用容器和虚拟机的系统架构
Changelogs:
- 2025-8-3: 合并“容器化”、“虚拟化”两题,并优化内容
- 2024-10-8: first version