pod应用生命周期(init容器,容器探针)

pod应用生命周期(init容器,容器探针)_第1张图片
pod应用生命周期(init容器,容器探针)_第2张图片
pod应用生命周期(init容器,容器探针)_第3张图片
pod应用生命周期(init容器,容器探针)_第4张图片

init容器:检测功能测试

启动server1的harbor私有仓库:
pod应用生命周期(init容器,容器探针)_第5张图片

pod应用生命周期(init容器,容器探针)_第6张图片
编辑以下的文件,此文件表明在启动主容器之前,首先利用Init容器查看相关服务(在此设置为dns检测服务)有没有开启,服务开启的话,才会启动主容器:
pod应用生命周期(init容器,容器探针)_第7张图片
pod应用生命周期(init容器,容器探针)_第8张图片
以上0/1表明当前处于初始化状态,所以主容器虽然有pod应用,但是并没有启动
可以进入容器查看,发现dns服务解析不了,会一直进行init启动,所以导致主容器无法打开:
pod应用生命周期(init容器,容器探针)_第9张图片
创建dns解析服务:
在这里插入图片描述
pod应用生命周期(init容器,容器探针)_第10张图片
该服务启动成功:
在这里插入图片描述
此时因为init容器可以检测到dns解析服务,所以主容器被开启,变为1/1:
在这里插入图片描述
可以访问该主容器了,Init容器被释放掉了:
在这里插入图片描述
在集群中创建另一个pod应用,可以同样访问到服务ip:
pod应用生命周期(init容器,容器探针)_第11张图片
在这里插入图片描述

容器探针

pod应用生命周期(init容器,容器探针)_第12张图片
pod应用生命周期(init容器,容器探针)_第13张图片
pod应用生命周期(init容器,容器探针)_第14张图片
pod应用生命周期(init容器,容器探针)_第15张图片
例如存活探针livenessprobe检测,基于tcpsocket检测端口:
在这里插入图片描述
服务占用80,我们设置为检测8080:
pod应用生命周期(init容器,容器探针)_第16张图片
在这里插入图片描述
此时该容器会不断的重启:(因为检测失败)
pod应用生命周期(init容器,容器探针)_第17张图片
利用readinessprobe探针进行就绪检测,在此设置为检测nginx发布页面是否存在:
pod应用生命周期(init容器,容器探针)_第18张图片
在这里插入图片描述
此时状态为running,但是前面的0代表该pod应用没有就绪
在这里插入图片描述
查看应用日志:
在这里插入图片描述
日志可以发现在打开nginx发布页面的时候失败:
在这里插入图片描述
因为发布页面test不存在,所以检测一直失败,所以就绪状态一直为0:
在这里插入图片描述
进入pod应用,可以发现test发布页面确实不存在:
在这里插入图片描述
此时创建该发布页面test:
在这里插入图片描述
可以发现就绪检测成功,由0变为1:
在这里插入图片描述
删除该test页面以后,可以发现又由1变为0:
pod应用生命周期(init容器,容器探针)_第19张图片

你可能感兴趣的:(pod应用生命周期(init容器,容器探针))