69

Kubernetes:一张图、一句话帮你开始

 4 years ago
source link: https://www.tuicool.com/articles/zEjmyaF
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

常言道:“一千个读者眼里有一千个哈姆雷特”。同样的话也适用于 Kubernetes ,同样的系统在不同的开发人员眼中也是不同的,甚至在不同阶段对于它的理解也截然不同。

在尚未开始学习 Kubernetes 之前,我认为它是一套非常复杂的系统,各种抽象概念以及复杂的安装过程。差点因为安装不顺,打算就此放弃。理由很简单: 既然有了 Docker,为什么还要 Kubernetes

之所以觉得 Kubernetes 系统复杂、难,关键是不知道它到底是干啥的?再加上老版本繁琐的安装过程,愿意啃它是需要一点毅力的。现在,就通过一张简单的对比图告诉你,它到底干了啥!

nemAraY.png!web

单看图示上部分,发生的变化仅仅是 HOST 换成了 POD ,底层网络由真实网络换成了覆盖网络,即虚拟网络。对于 APP 应用开发者而言, 即使你完全不懂容器技术也没关系.这是 Kubernetes 的厉害之处,它提供的抽象层对于 APP 应用开发者而言是完全透明的。应用在 POD 中和在 HOST 主机上并没有本质区别。

还是老问题: 既然有了 Docker,为什么还要 Kubernetes

回答这个问题,得从为什么需要引入 Docker 这个问题先开始。你会说,因为需要 容器化部署 。那为什么需要 容器化部署 呢?就这个问题还可以走得更远一点。这里我就偷懒了,先打住。看看 容器化部署 后出现的新问题,即容器实例越来越多。因为容器实例越来越多,就像鸡蛋太多需要一个篮子来装一样, Kubernetes 就是那个篮子。当然这不是一个简单的篮子,此处也不扩展了。

标准答案就是: 因为有了 Docker,所以才要Kubernetes 。是不是感觉进入一个 loop ,我也这感觉。

从图中也可以看出, Docker 容器技术是 Kubernetes 平台的基础。容器技术主要作用是 隔离 ,通过对系统的关键资源的隔离,实现了 主机抽象Kubernetes 平台则是在 抽象主机 的基础上,实现了 集群抽象

如果用一句话做个总结,就是:

容器,提供应用级的系统抽象;Kubernetes,提供应用级的集群抽象。

小结

一篇短文,因为写另外一篇文章触发的简单总结。希望可以帮到还徘徊在 Kubernetes 大门之外的初学者。当然,新版本 Kubernetes 已经非常容易安装了。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK