声明:本文乃“运维家”原创,转载请注明出处,更多内容请关注公众号“运维家”。

图片

主旨

要上手k8s,那么他的核心概念是重中之重,否则的话云里雾里的,连概念都不清楚,学的也是一团乱麻,我们先来梳理下,不要着急,心急吃不了热豆腐。

慢慢来

每一步都会引入图片,一步一步来看,到底每一个概念对于整个k8s服务,有什么影响。

Container

container 是一个容器,因为docker的底层就是container,每个容器底层是一个镜像,比如说我们通过“ywj-image:v1”镜像,运行了一个容器,如下图:

图片

POD

POD:pod是k8s中的一个概念,一个pod里面呢,可以有一个或者多个容器,有什么特征呢?

一个pod里面所有的容器运行在一台服务器上
一个pod里面所有的容器,共享网络
有一个唯一的IP地址
必须有一个特定的容器:pause,且该容器有一个固定的镜像,这个pause相当于根容器,将一个pod里面的所有container连到一块儿来
负责整个pod的健康检查并上报给k8s,比如或你的项目中有两个或者多个服务的联系非常紧密,这个时候我们就可以选择把他们放到同一个pod里面来
根据以上的信息,我们引出下图:  

图片

RS

RS,全称ReplicaSet,副本集,就是指运行多个pod,如果一旦某个pod出现异常,我们可以有另一个pod来持续对外提供服务,如下图:

图片

Deployment

deployment顾名思义,就是部署,那么我们如果部署上去如何更新呢,这个时候我们就需要用到它了,比如哈,我们已经部署了如上图的服务,这个时候我们想更新“ywj-image:v1”的镜像版本到“ywj-image:v2”,是怎么回事儿呢?

首先,会再新建一个RS,并启动一个POD,这个时候新的POD里面的容器的镜像,就是新的镜像了,相当于有了3个容器,如下图:

图片

这个时候,当新RS的新POD,健康检查通过之后,deployment会控制原来的RS,删除一个POD,如下图:
剩余内容请关注微信公众号 “运维家” ,回复 “109” 查看。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐