00:00
下面我们继续来学习K8S集群,刚才我们提到了POD3个细节操作,拉取镜像资源限制,还有一个叫重启机制,那我们最后再来说一个关于pod中的另外一个东西,叫做健康检查,给各位来写一下,就是我们的。第七个。Pod的。健康。检查,那这健康检查什么意思呢?给各位解释一下啊,那各位注意,比如我们之前啊,我们要检查,我们这里边就是KS中集群中的状态,咱们通过什么来检查。通过什么是不是咱们的容器进行检查,就是通过容器检查它是否是一个正常运行,或者是否是一个正常状态,通过它可以做到,但是这个检查中啊,有个特点各位注意,那之前也提到了啊,比如说我们现在用这命令这个库。Ctl。Po,我们看目前状态是不是一个running用状态,就是咱之前我们现在检查是通过容器检查,但我们这个容器啊,虽然它是软定状态,但这容器可能它本身有问题,但是它默认还是这个状态,那我举个例子,比如说Java中一个特点叫这个。
01:19
堆内存溢出。这个我应该知道啊,对应的是溢出,就是当你这个溢出之后,就是现在我这个状态还是一个运行状态,它的进程还存在,但是它目前是不能提供服务了,所以这种情况下,咱只通过容器检查,就并不能准确检查出来你这个容器是否能正常停服,目前是有这个缺点的,这各位知道啊,我再重复一遍,在我们K8S集群中要检查状态,但是根据容器检查。但是容器呢,虽然它是软定状态,但是有的时候它可能已经不能对外提供服务了,比如说这里边出现了Java内存溢出,那这个时候其实它进程还存在,也是运行状态,但是已经不能对外提供服务,所以这个时候通过容器检查就不能准确检查到你这个。
02:14
就是状态是否是一个正常状态,那咱怎么做呢?咱说可以到这个就是应用层面。是不是进行健康检查?用这个可以做到,比如说现在我通过这个127.0.1进行访问或者建立连接,如果它能够进行创建,那表示它是正确的,如果它不能建立连接,表示它就是失败的,所以现在咱要通过这个层面检查,而在我们K8集群中的里边,就给我们提供了两种检查的机制,咱通过它可以做到,那我们来看一下我这里边有张图。在里边,我这里写到在KS中呢,它有两种检查机制,这两个。一个叫live,一个叫这个read,然后live这个pro里边叫做存活检查,它是什么意思呢?比如说现在我检查我这里边的状态,如果说检查失败,那怎么做,它就会杀死容器,然后根据po里边这个restart policy来进行操作,什么意思呢?比如现在我检查里边这个容器包里边这些应用,包括某一个有问题,那怎么做?先用Q命令把它进程先杀掉,然后根据你配置的这个重启策略给它进行下一步操作,比如说咱们刚才讲过重启策略。
03:33
配个always,那他会。进行启动,如果是never,那它不会再启动啊,根据你的策略来决定,所以这个是它的第一种叫做存活检查,当你这个容器出现了问题,那它把它杀掉,然后根据你配置的冲洗策略进行操作。第二个叫RA,它称为叫就绪检查,这是什么意思呢?如果说检查失败,那怎么做?在中会把这pod从这里边给它移除掉,比如现在我这个容器失败了,那把它从里边给它移除掉,然后用其他容器去听服务。所以它有两种情况,一个就是杀掉,根据策略重启,第二把它从当前里边给它剔除掉。
04:15
所以这个啊,是我们在KS中提供这个健康检查的这么两种策略,一个存活检查,一个叫就绪检查,各位。把这知道,然后这里边啊,我下面这里还写到就是这个pro的这种检查,支持三种方法,你可以用HTV方式发送这么一个请求,如果它的状态码是200~400之间,那它就成功,用eec执行shell,如果状态码是零成功,再用tptcp socket,如果能建立连接表示也是成功,所以它里边支持就是以下这三种方式进行这么一个检测,所以这个啊,就是K8S中提供的。
05:01
健康检查的策略,存活还有就绪,各位主要记住两个特点就可以了,一个就是把它杀掉再重启,一个就是从当前里边给它剔除掉,然后再用其他的,这个就是容器提供服务,这个啊是我们提到的,然后我这里边还写了一个简单例子,这例子看一下就是我们要配置该怎么做。很简单啊,就是你在这个容器里边加上你这个策略,然后配置你的相应内容,比如说我现在这里边我是写了一个小例子,这例子我们给大家大概解释一下啊,这例子什么意思呢?就是现在我一个镜像叫busy box,然后在里边就是你看啊这位置,我就是通过touch在这个文件中做操作,然后里边30秒之后把它删掉,这个过程中不断检查它的状态,根据它的返回码,然后进行操作,看它是否是成功,什么意思呢?大概说一下啊,比如我现在在里边用个touch。
06:02
Tou。CH。啊,比如我叫这个PA,然后现在在里边我用个K做一个查看,它叫tpa-A,然后用ech ho。加上这么一个查看,你看啊,目前状态码是不是零啊,表示成功,比如现在我来一个RM把它删掉。Tpa。给他占掉啊,然后这个时候比如说我再查看一下,然后咱用个k tpa。我再做一个查看,大家看状态码是不是零啊,就是根据这个返应状态码看它是成功还是失败,因为你这里边有的话肯定是零,当你删掉之后再查看,肯定它是一根据零和一看它是否成功,就用的就是这种方法。Ec通过shell命令返应状态法是零表示成功,是一表示失败,然后现在在里边加一个live,这么一个就是健康检查策略,如果它里边失败,那咱根据我们配置策略给它做重启,包括做其他操作,然后这里边是我们这个就是相应这个检查的时间啊,比如说我们是五保,这里边SLEEP30,所以这是一个基本的一个例子,然后在例子中呢,主要配置位置其实就是在。
07:26
这个地方加上你这个。检查策略是存活还是就绪,然后加上你用什么方法进行检测,我们用的是exe的方式做这么一个检测。所以这个啊就叫健康检查,也就是说通过这个建程检查,咱能够更准确的检查到你当前容器是否是正常运行的,用它可以做到,所以里边只有两个特点,存活还有就绪啊,这是关于pod中的健康检查的这么一个介绍,给各位做一个说明啊,然后里边就相内容就是这些配置啊,你发现啊也是有很多,不需要各位刻意去记,你真正用到的话,结合我这个笔记或者我这个文档,找到对应内容,给它配置成你实际的效果就可以了。
08:16
这里边咱就完成了啊,所以到这里为止呢,咱就把pod中的基本内容我们就说完了,最终给大家快速总结一下啊,第一个pod基本概念,最小步数单元,包括特点,然后pod存在是为了实现这个多进程设计,让你运行多个应用啊,另外为了我们的亲密性这么一个应用,另外pod的实现机制,共享网络,还有共享存储,它里面有几个系操作,包括拉取镜像的策略,资源限制怎么做到,重启机制有哪些,以及最后咱们说这个健康检查,包括存活检查,就绪检查,它们分别有什么特点。所以这样的话。咱就把这个pod中的基本概念给各位就说完了啊,你把这些给他知道,因为pod是我们学习Co net或者KS中一个很重要的一个概念。
我来说两句