Kubernetes 入门到进阶实战,系统性掌握 K8s 生产实践

449 阅读2分钟

Kubernetes 入门到进阶实战,系统性掌握 K8s 生产实践

最近项目用到kubernetes(以下简称k8s,k和s之间有8个字母),虽然之前也有简单使用过,但认识也不是很全面。也看到很多老铁对Kubernetes和Docker之间的关系搞不清楚,所以我收集整理了两者之间的相关说明,供大家参考学习。

简要介绍:

官方定义1:Docker是一个开源的应用容器引擎,开发者可以打包他们的应用及依赖到一个可移植的容器中,发布到流行的Linux机器上,也可实现虚拟化。

官方定义2:k8s是一个开源的容器集群管理系统,可以实现容器集群的自动化部署、自动扩缩容、维护等功能。

与传统技术对比:

接下来我们看两张经典的图:

一、从虚拟化角度:

Docker容器与传统虚拟化方式的不同之处,传统的虚拟技术,在将物理硬件虚拟成多套硬件后,需要再每套硬件上都部署一个操作系统,接着在这些操作系统上运行相应的应用程序。而Docker容器内的应用程序进程直接运行在宿主机(真实物理机)的内核上,Docker引擎将一些各自独立的应用程序和它们各自的依赖打包,相互独立直接运行于未经虚拟化的宿主机硬件上,同时各个容器也没有自己的内核,显然比传统虚拟机更轻便。

每个集群有多个节点,每个节点可创建多个容器,kuberbete就是管理这些应用程序所在的小运行环境(container)而生。

作者-\/: itspcool