先创建pause
InitC(Init Container)
初始化。创建容器运行所需文件等。InitC之间串行。初始化完退出
- pod里可能有一个或多个先于应用容器启动的Init容器
- Init容器总是运行到成功完成为止
- 每个Init容器都必须在下一个Init容器启动之前成功完成
- 如果Pod的 Init容器失败,Kubernetes会不断地重启该Pod直到Init容器成功为止。然而如果Pod对应的restartPolicy为Never,它不会重新启动
- I nit容器优势:![image.png](https://cdn.nlark.com/yuque/0/2020/png/1874322/1603975058602-8dd698dd-426a-4164-aa58-d613360f0bf7.png#align=left&display=inline&height=231&margin=%5Bobject%20Object%5D&name=image.png&originHeight=461&originWidth=1119&size=783281&status=done&style=none&width=559.5)
- ![image.png](https://cdn.nlark.com/yuque/0/2020/png/1874322/1603976818429-e6046316-e4b5-4397-8f53-97c9c5af28d3.png#align=left&display=inline&height=287&margin=%5Bobject%20Object%5D&name=image.png&originHeight=573&originWidth=1335&size=945397&status=done&style=none&width=667.5)
- ![image.png](https://cdn.nlark.com/yuque/0/2020/png/1874322/1603978751886-7b24d3e5-6cd2-40fc-a3dc-1ae9601dbd50.png#align=left&display=inline&height=123&margin=%5Bobject%20Object%5D&name=image.png&originHeight=245&originWidth=1192&size=320209&status=done&style=none&width=596)
一个含有initContainers的yaml文件:
箭头指的两个init容器,一个不断的从dns解析myservice(看看myservice运行没有),另一个不断解析mydb。
探针
探测方式:
含探针的yaml:
readness
就绪检测。readness检测到容器成功启动,pod才能running