笔记摘自视频章节:第四章-p23
主题
讲述pod中的start和stop概念,并进行测试
笔记
start/stop: 在启动前后指定命令执行
pod 状态
- 挂起(Pending): Pod已被Kubernetes系统接受,但有一个或者多个容器镜像尚未创建。等待时间包括调度Pod的时问和通过网络下载镜像的时间,这可能需要花点时间
- 运行中(Running) :该Pod已经绑定到了一个节点上, Pod中所有的容器都已被创建。至少有一个容器正在运行,或者正处于启动或重启状态
- 成功(Succeeded): Pod中的所有容器都被成功终止,并且不会再重启。在job和 cronjob中比较常见
- 失败(Failed): Pod中的所有容器都已终止了,并且至少有一个容器是因为失败终止。也就是说,容器以非0状态退出或者被系统终止
- 未知(Unknown) :因为某些原因无法取得Pod的状态,通常是因为与Pod所在主机通信失败
start + stop 测试
apiVersion: v1
kind: Pod
metadata:
name: lifecycle-demo
spec:
containers:
- name: lifecycle-demo-container
image: nginx
imagePullPolicy: IfNotPresent
lifecycle:
postStart:
exec:
command: [ "/bin/sh", "-c", "echo Hello from the postStart handler >
/usr/share/message" ]
preStop:
exec:
command: [ "/usr/sbin/nginx","-s", "quit" ]