kubernetes不支持docker (kubernetes docker区别)

为什么k8s不支持docker了?

为什么k8s不支持docker了?来听听这节课的内容。在这节课里我来给各位讲解一下为什么k8s不再支持docker了。

在前面给各位讲到容器和k8s之间关系的时候,docker是需要在这些节点上去安装一个代理的,也就是docker。docker使用dog d或者是使用content d来作为让time。不过从k8s1.24开始,docker就不再使用doctor d作为让他们了。

在那里面举一个例子,比如在很久以前有一个笔记本厂商,比如这个是syncpad。syncpad现在研究出来这个笔记本之后,但是它自己是不带存储的,所以它很苦恼。因为没有存储,笔记本就没法正常去使用。

syncpad看到其实市场上已经有了一种外置的硬盘,比如叫金士顿。所以在生产这个笔记本的时候就领加了一根线子,外置的线子是连接到笔记本上面的。这个线子用来连接到金士顿的硬盘上面来。

kubernetes与dockercompose的关系,kubernetes解决不了的问题

这个时候其他的厂商,比如西部数据,一看有你这个笔记本,能连接金士顿,能不能也给我留一根线子用来连接西部数据的硬盘。所以single one在生产的时候就有也留了一根线子用来连接西部数据的硬盘。当然了,其他的厂商也希望能够连接到笔记本上面来。

所以对于single one的笔记本上面,在生产的时候就留了很多的线的线头用来连接不同的厂商的硬盘。这个时候对于笔记本一看这样不行,为什么?笔记本生产出来的时候留了很多的外置线头用来连接不同的设备,现在是不是就变成了一个大蜈蚣了?太丑了。

kubernetes与dockercompose的关系,kubernetes解决不了的问题

要解决这个问题,而且维护起来其实比较麻烦,线头太多了。所以这个时候笔记本在生产的时候就找剪刀把所有的线头全部给剪掉了。剪掉了之后是不是就是这些硬盘就没法使用了?这个时候笔记本就说了,我开发了一个标准接口,统一的接口。这个接口叫的是usb。

这些厂商要是想连接到笔记本上面来,请自己去修改一下自己的接口,只要遵照usb的标准就可以了。所以这些厂商磁盘的硬盘的秒杀就改变了自己的接口,都有usb接口,然后就可以通过usb来连接到笔记本上面来了。

kubernetes与dockercompose的关系,kubernetes解决不了的问题

但是对于金士顿来说,当时是一家独大,市场做的最大的。当然,只是举例来说的,他说就研究不出来,这是小弟,为什么要按照标准来?所以对于笔记本来说只能妥协,继续留了一根线子用来连接坚持到硬盘。

随着时间的发展,这个时候各位来看笔记本发展的更强大了,而且这个时候能够使用到的产品已经不只是坚持动用了,像西部数据、闪碟等等,有很多品牌的设备都可以使用了,所以就不一定非得使用了,就咔的一下把线子也剪断了。

如果要是想连接到笔记本上面来,就得要去自己去改变接口,遵照标准。这个例子其实还是比较好理解的。

开始来看下一个例子,在一开始的时候讲了k8s自己是不启动,自己是不创建容器的,要使用long time,所以在k8s初期的时候,当时市场上只有一个long time叫做darker,所以k8s开发的时候就留了一个线头用来对接到刀口上面了,这个线头把它称之为叫做shine,叫垫片,shine叫垫片,叫doctoring,用来连接到doctor上面的。

kubernetes与dockercompose的关系,kubernetes解决不了的问题

其他的roundtime也有,像其他的品牌儿,移动硬盘是不是也有其他的品牌儿?后来的时候roundtime也有其他品牌儿了,比如有crio,也想连接到k8s平台上面来,所以这个时候k8s在代码里面也加了一个线头,也加了一个摄影,用来连接到crio这个状态。

后来的时候让它们的类型是越来越多了,它们也都想加入到k8s阵营站里面来,想让k8s来管理它们,所以这个时候k8s在开发的时候就加了很多个线头,也就是加了很多个time用来连接不同的这些让time,今天添加了很多的shim用来连接不同的这些让time。

kubernetes与dockercompose的关系,kubernetes解决不了的问题

这个时候看八s一看这不行,这样现在有很多的让time都得要加上一个线头,都加上一个sim,也就是代码就变得很繁琐,以后管理起来、维护起来就非常的麻烦,所以这个时候k8s就减,以后要把这些线头全部拿掉,不再加这些线头了,不加这些线头,这个时候这些乱探母是不是就不能再使用开发,在连接到开发词上面来了?

也不是kms,现在开放了开发了一个标准叫做cri,叫容器运行式接口,就和前面所说的usb是一样的,只要来遵照,这个接口就可以来连接过来了,也就是说就可以让我的开盘s使用你们作为让他们了。

kubernetes与dockercompose的关系,kubernetes解决不了的问题

所以说他们都开发出来了这样的一个接口,遵照什么?遵照cr i标准的这样的一个接口连接过来。但是docker太强大了,他说不行,我开发不出来,我就没有cri标准开发不出来。这个时候k8s也只能妥协,所以说在k8s里面仍然留了一个代码,留了这样的一个线头,而就是留了doctor sim用来对接到doctor上面来比较特殊。

又过了一段时间,过了很久,这个时候k8s已经发展的足够强大了,而且它所能够使用到的让time又不只是刀客一个了,我能使用到的刀round time有很多,所以说这个时候就直接把这个线头给剪掉。

kubernetes与dockercompose的关系,kubernetes解决不了的问题

也就是说从k8s里面把docsim的代码给它取出掉了,就是把这个箭头给它剪掉了,坏了,doctor就怎么样?doctor就不能再连接到使用,连接到k8s,让k8s作为让thatm来使用,要是想再来连接到k8s,想让我k8s做让你作为一个让tim,那么必须得要加上一个接口才可以。

虽然说后来就有一个东西叫做是什么?叫cii doctor,这个东西就是什么?它就是你理解为这是一个转接头,可以连接到doctor上面,这样k8s也能够继续使用什么?也能够继续使用doctor。当然了darker依然非常有用,比如说去搭建仓库,构建镜下等等,这些功能也是非常有用的。

这就是我给各位介绍的为什么开发s不再支持darker了。