阿里云 K8S 技术图谱

https://developer.aliyun.com/graph/Kubernetes?spm=a2c6h.21110250.J_3487140370.4.7c76760fby9XXN

00-K8S 学习路径 - 图1

Linux Namespace && CGroup

容器的核心技术

  • Namespace 隔离资源
  • CGroup 控制资源使用限制

二者共同奠定了容器技术的基础。

https://zhuanlan.zhihu.com/p/73248894

  1. 目前Linux中提供了六类系统资源的隔离机制,分别是:
  2. Mount: 隔离文件系统挂载点
  3. UTS: 隔离主机名和域名信息
  4. IPC: 隔离进程间通信
  5. PID: 隔离进程的ID
  6. Network: 隔离网络资源
  7. User: 隔离用户和用户组的ID

https://www.cnblogs.com/wjoyxt/p/9935098.html
image.png
Cgroups(Control Groups) 是Linux内核提供的一种可以限制、记录、隔离进程组(process groups)所使用的物理资源(如:cpu,memory,IO等等)的机制。可以对一组进程及将来的子进程的资源的限制、控制和统计的能力,这些资源包括CPU,内存,存储,网络等。通过Cgroups,可以方便的限制某个进程的资源占用,并且可以实时的监控进程的监控和统计信息。最初由google的工程师提出,后来被整合进Linux内核。Cgroups也是LXC为实现虚拟化所使用的资源管理手段,可以说没有cgroups就没有LXC (Linux Container)。

Borg

Kubernetes 的鼻祖。
https://zhuanlan.zhihu.com/p/367770514
image.png
这个图和 K8S 的架构图何其相似。