背景
前不久公司领导跟我聊天,
K8S
是什么? 它能干什么?
二话不说,直接搬出概念,它的本质是工业级编排平台,负责容器的弹性、管理和编排。
我之前没有怎么接触
K8S
相关的概念,啥是容器?怎么弹性?如何管理和编排?
容器是利用了集装箱的思想,把可运行程序打包成可运行、自包含、标准化的镜像。通过K8S
能够管理和编排我们打的镜像,举例来说,如果你想运行两个副本,直接在编排文件中配置replicas
为2
即可,你也可以使用HPA
通过检测CPU
、内存使用率实现自动扩缩容。
又是镜像,又是编排,引入这么多新概念,能
hold
住?你就给我说说,它和SpringCloud
、dubbo
...等微服务框架有什么不同?
SpringCloud、dubbo
等框架和K8S
切入点不同,K8S
能够支撑所有框架和语言,并提供了平台级别的服务;而SpringCloud
仅仅是整合了Java
库以及各种运行时概念,是通过JVM
级别来管理的。
到此结束吧,说到底,还是没有讲清楚它的本质、不能用通俗易懂的语言说清楚
K8S
到底是什么!
对于一个没有接触到云原生概念的人,如何讲清楚云原生时代的操作系统K8S
到底是什么?和普通微服务框架有什么区别?如果问我K8S
中的核心组件的功能,又该如何解答?
后来仔细想了想, 可以把K8S
比喻成一栋精装修大楼,每间都是统一的标准,拎包入住即可;而其它的一些微服务框架则可以看作毛坯房,需要各种定制化,无法做到开箱即用,至于精装修是否适合自己,还要看自己房子的数量。
就本人而言是不喜欢拿IT
技术打比方的,因为IT
技术是一门严谨的科学,通过打比方的方式,虽然能够对一门技术有个大致的了解,但是不能从根本上搞明白核心技术点,从而不能起到关键性帮助,有时还会造成曲解。所