Module 02 · Kubernetes Basics
Introduction to KubernetesKubernetes 简介课程笔记
学习目标
观看完本视频后,你将能够:
- 定义 Kubernetes 💡
- 说明 Kubernetes 不是什么 🚫
- 理解 Kubernetes 的核心概念 🧩
- 描述 Kubernetes 的主要功能 ⚙️
- 概览 Kubernetes 生态系统 🌍
一、Kubernetes 是什么?
官方文档定义:
Kubernetes 是一个开源系统,用于自动化容器化应用程序的部署、扩展和管理。
- 由 Google 开发,现由 Cloud Native Computing Foundation(CNCF) 维护。
- 具有高度的可移植性,可跨云(公有云、私有云)及本地环境运行。
- 已成为容器编排的 事实标准(de facto standard)。
- 拥有快速增长的生态系统,被视为“容器编排的首选方案”。
- Kubernetes as a Service(KaaS)作为“容器即服务(CaaS)”的延伸发展而来。
🌀 Kubernetes 的核心特征:
- 采用声明式管理方式(Declarative Management);
- 自动执行达到目标状态所需的所有操作;
- 实现自动部署、扩缩容与生命周期管理。
二、Kubernetes 不是什么
| ❌ 误区 | ✅ 事实 |
|---|---|
| 不是传统的 PaaS(平台即服务) | 它是一个灵活的模型,支持多种类型工作负载 |
| 不是僵化或带有固定模式的系统 | 可运行无状态、有状态及数据处理类应用 |
| 不提供 CI/CD 流水线 | 不负责源码构建或持续部署 |
| 不规定日志、监控和告警方案 | 可自由选择第三方或开源工具 |
| 不内置中间件、数据库等服务 | 用户可自行整合所需组件 |
✨ 总结:Kubernetes 更像是一个可扩展的框架,而非“一站式平台”。
三、Kubernetes 核心概念
1. Pods(容器组)
- 最小的可部署计算单元。
- 每个 Pod 拥有唯一 IP 地址。
- 多个 Pod 可共享同一个 DNS 名称。
2. Services(服务)
- 用于暴露运行在多个 Pod 上的应用。
- 提供稳定的网络访问方式。
3. Storage(存储)
- 支持 持久性存储(Persistent)与 临时性存储(Ephemeral)。
4. Configuration(配置)
- 资源配置方式,用于定义 Pod 的行为与依赖。
5. Security(安全性)
- 为云原生工作负载提供安全机制;
- 控制 Pod 与 API 的访问权限。
6. Policies(策略)
- 定义资源组的规则;
- 确保 Pod 能正确匹配节点并由 kubelet 运行。
7. Scheduling & Eviction(调度与驱逐)
- 调度器将 Pod 分配到合适节点;
- 资源不足时主动终止部分 Pod。
8. Preemption(抢占)
- 实现优先级控制;
- 允许高优先级 Pod 抢占低优先级 Pod 的资源。
9. Cluster Administration(集群管理)
- 提供创建与维护集群所需的所有配置与操作指令。
四、Kubernetes 功能与能力
1. 自动化部署与回滚
- 自动执行应用或配置的变更;
- 支持健康监测与回滚。
2. 存储编排
- 可自动挂载本地存储、网络存储或公有云存储。
3. 水平扩展(Horizontal Scaling)
- 根据指标或命令自动扩缩容工作负载。
4. 自动化装箱(Bin Packing)
- 自动放置容器以提高资源利用率与成本节约;
- 在保证高可用的前提下,混合运行关键任务与普通任务。
5. 机密与配置管理
- 管理敏感信息(如密码、OAuth Token、SSH Key);
- 可在不重建镜像的情况下更新机密与配置。
6. 双栈网络支持
- 同时支持 IPv4 与 IPv6 地址。
7. 自愈(Self-Healing)
- 自动替换失败的容器;
- 恢复无响应的 Pod。
8. 服务发现与负载均衡
- 通过 IP 地址或 DNS 名称发现 Pod;
- 实现流量负载均衡与高可用。
9. 可扩展性
- 可在不修改源代码的前提下,为集群添加新特性。
五、Kubernetes 生态系统
Kubernetes 拥有庞大且不断扩展的生态系统,涵盖服务、工具与支持体系:
| 类型 | 代表厂商/工具 |
|---|---|
| 公有云提供商 | Prisma、IBM、Google、AWS |
| 开源框架提供商 | Red Hat、VMware、SUSE、Mesosphere、Docker、Cloud Foundry |
| 管理平台提供商 | DigitalOcean、Loodse、SUPERGIANT、CloudSoft、Turbonomic、Techtonic、Weaveworks |
| 工具提供商 | JFrog、Univa、Aspen Mesh、Bitnami、Cloud 66 |
| 监控与日志提供商 | SumoLogic、Datadog、New Relic、Iguazio、Grafana、SignalFX、Sysdig、Dynatrace |
| 安全提供商 | Guardicore、BlackDuck、Yubico、Cilium、Aqua、Twistlock、Alcide |
| 负载均衡提供商 | AVI Networks、VMware、NGINX |
🔄 这些组件共同构成 Kubernetes 运行所需的完整生态体系,从镜像构建、镜像仓库、监控告警到 CI/CD 全流程。
六、总结
✅ Kubernetes 是:
- 一个 高可移植性、水平可扩展 的开源容器编排系统;
- 拥有自动化部署与简化管理能力;
- 具备丰富的核心概念与功能模块(Pods、Services、Scheduling、Security 等);
- 支持自动回滚、扩缩容、自愈与双栈网络等高级特性;
- 建立了庞大的生态系统,涵盖云厂商、工具链、监控、安全与负载均衡等领域。
🎶 Kubernetes——现代云原生架构的中枢引擎。 🚀