您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
K8S和Docker到底啥关系?为什么K8S彻底放弃Docker底层?
容器,包工头,工人K8S和Docker到底啥关系?为什么K8S彻底放弃Docker底层?
发布时间:2016-12-08加入收藏来源:互联网点击:
K8S和Docker到底啥关系?为什么K8S彻底放弃Docker底层?
回答于 2019-09-11 08:43:50
回答于 2019-09-11 08:43:50
什么是docker? docker可以理解成装修的工人,每个工人都有不同的技能(dockerfile),有的会砌墙、有的会和泥、有的会做木工等,当不同工种的工人开始干活时,容器(container)就产生,各司其职提供各自的服务能力。什么是k8s? k8s就可以理解为包工头,它可以去管理不同的工人,让他们各自工作,正常提供自己的服务能力(容器编排)。同时,在某些工种的工人不足时,可以新增一些;某些工人生病了,可以找新的工人替换掉,这就是容器的弹性扩缩容和健康检查。多个包工头就对应着多个k8s集群为什么k8s要放弃docker底层?这个可以这么理解,工人的理想比较远大,他也想做包工头,所以在工作中,除了干自己的事情以外,还想抢包工头的一些事情,安排这个处理那个。包工头发现不对呀,你这是想造反呀,敢抢我的活儿!同时发现这个工人因为干了一部分包工头的活儿,自己本该一天干完的事情,拖成了一天半干完,那包工头还能容你?果断找理由干掉你[耶]
回答于 2019-09-11 08:43:50
K8S在Docker上层,是利用Docker做容器管理的。而K8S目标是做分布式的容器集群,叫servicemesh。Docker本身只支持单机,集群工具叫Swarm,没有K8S流行。
K8S是最开始是谷歌主导的开源项目,现在在CNCF基金会运作。Docker是另一家同名商业公司运作。从上面描述得知,CNCF的K8S和Docker公司的Swarm是有竞争关系的。可能影响了K8S继续依赖Docker的信心。
但是Docker公司把容器核心containerd开源出来了。K8S本来就是只想要个核心容器管理工具而已,这样一来,就只需要依赖containerd,不需要Docker了。
回答于 2019-09-11 08:43:50
取消中间环节
回答于 2019-09-11 08:43:50
Docker做了很多k8s不需要的事情,让他烦了!
回答于 2019-09-11 08:43:50
Docker是容器虚拟化技术,用于运行用户的服务,例如,用户写了一个订单的增删改查服务,可以用Docker来运行;K8S是容器编排技术,例如:订单高峰期,K8S自动启动多个订单服务实例,当流量变低时,K8S自动停止多余的订单服务实例。
容器虚拟化技术有很多实现,且用户在使用K8S时,是看不到使用的是什么容器虚拟化技术的,因此Google就把Docker替换成自家的容器虚拟化技术了,以打击Docker。
Docker也推出了自己的容器编排技术,不过在与K8S的PK中,败下阵来。
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |