容器化技术Docker和K8S的区别详解
Docker
Docker 是一个开源的平台,主要用于容器化技术,提供了:容器的构建、分发、和运行能力。
Docker容器化,将应用及其依赖,打包到一个轻量级的容器中,就类似生活中的“集装箱”。
如下图所示:
容器化,将应用程序、及其所有依赖(如:库、配置文件...等)打包到一个独立、可移植的单元中,就类似上图的“集装箱”。
容器与主机系统隔离,但共享操作系统内核,从而实现轻量化、和高效运行。
K8s
Kubernetes (K8S),是一个容器编排平台,是“Google”开发的容器编排平台。
K8S,专注于在多节点(分布式集群)环境中管理、调度和编排容器化应用。
如下图所示:
Kubernetes (K8S),容器编排通过自动化部署、调度...等等,解决了容器化应用在大规模分布式环境中的管理复杂性问题。
Docker和K8S区别
Docker主要解决:创建、和运行容器,而 Kubernetes (K8S),是管理这些容器的编排,两者的关注点不一样。
Kubernetes(K8S),除了可以运行Docker容器化,还可以 运行其它容器,比如:containerd、CRI-O...等等。
如果只需管理单机、或少量容器,使用 Docker 即可。
如果需要跨节点的容器编排、和管理,选择 Kubernetes。
Kubernetes(K8S),提供了更强大的容器编排功能,适合大规模应用场景。
来源:
THE END