当前位置:首页 > Web开发 > 正文

故kubernetes技术便出现了

2024-03-31 Web开发

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

    官方界说2:k8s是一个开源的容器集群打点系统,可以实现容器集群的自动化部署、自动扩缩容、维护等成果。

 

与传统技术比拟:

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

一、从虚拟化角度:

技术图片

技术图片

图1

        上图是Docker容器(可用k8s打点的玩意儿)与传统虚拟化方法的差别之处,传统的虚拟技术,在将物理硬件虚拟成多套硬件后,需要再每套硬件上都部署一个操纵系统,接着在这些操纵系统上运行相应的应用措施。而Docker容器内的应用措施进程直接运行在宿主机(真实物理机)的内核上,Docker引擎将一些各自独立的应用措施和它们各自的依赖打包,彼此独立直接运行于未经虚拟化的宿主机硬件上,同时各个容器也没有本身的内核,显然比传统虚拟机更轻便。

        每个集群有多个节点,每个节点可,我们的kuberbete就是打点这些应用措施地址的小运行环境(container)而生。

 

二、从部署角度

技术图片

图2

        注意,大家别把这幅图与上面Docker的那张图混淆了,图1是从虚拟化角度,说明了为应用供给须要的运行环境所需要做的虚拟化操纵(即:传统:虚拟出的虚拟机装操纵系统、Docker:容器引擎打点下的容器)。

        而图2是在这些具体运行环境长进行真实应用部署时的情况,传统方法是将所有应用直接部署在同一个物理机器节点上,这样每个App的依赖都是完全不异的,无法做到App之间断绝,固然,为了断绝,我们也可以通过创建虚拟机的方法来将App部署到此中(就像图1上半部分那样),但这样太过沉重,故比虚拟机更轻便的Docker技术呈现,此刻我们通过部署Container容器的技术来部署应用,全部Container运行在容器引擎上即可。既然嫌弃虚拟机沉重,想用Docker,,那好,你用吧,怎么用呢?手动一个一个创建?固然不,故kubernetes技术便呈现了,以kubernetes为代表的容器集群打点系统,这时候就该上场演出了。

        说白了,我们用kubernetes去打点Docker集群,即可以将Docker当作Kubernetes内部使用的初级别组件。此外,kubernetes不只仅撑持Docker,还撑持Rocket,这是另一种容器技术。

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/web/30465.html