Init 容器

init 模板

apiVersion: v1 
kind: Pod 
metadata:
  name: myapp-pod 
  labels:
    app: myapp 
spec:
  containers:
  -	name: myapp-container 
    image: busybox
    command: ['sh', '-c', 'echo The app is running! && sleep 3600'] 
  initContainers:
  -	name: init-myservice 
  image: busybox
   command: ['sh', '-c', 'until nslookup myservice; do echo waiting for myservice; sleep 2; done;']
  -	name: init-mydb 
    image: busybox
    command: ['sh', '-c', 'until nslookup mydb; do echo waiting for mydb; sleep 2; done;']

检测探针 - 就绪检测

readinessProbe-httpget

apiVersion: v1 
kind: Pod 
metadata:
  name: readiness-httpget-pod 
  namespace: default
spec:
  containers:
  - name: readiness-httpget-container 
     image: wangyanglinux/myapp:v1          
     imagePullPolicy: IfNotPresent 
     readinessProbe:
        httpGet:
         port: 80
          path: /index1.html 
          initialDelaySeconds: 1
          periodSeconds: 3

检测探针 - 存活检测

livenessProbe-exec

apiVersion: v1 
kind: Pod 
metadata:
name: liveness-exec-pod 
namespace: default
spec:
  containers:
  - name: liveness-exec-container
    image: hub.atguigu.com/library/busybox 
    imagePullPolicy: IfNotPresent
    command: ["/bin/sh","-c","touch /tmp/live ; sleep 60; rm -rf /tmp/live; sleep 3600"]
    livenessProbe:
      exec:
        command: ["test","-e","/tmp/live"] 
        initialDelaySeconds: 1
        periodSeconds: 3

livenessProbe-httpget


apiVersion: v1 
kind: Pod 
metadata:
    name: liveness-httpget-pod 
    namespace: default
spec:
    containers:
    - name: liveness-httpget-container
      image: hub.atguigu.com/library/myapp:v1 
      imagePullPolicy: IfNotPresent
     ports:
      - name: http container
       Port: 80
livenessProbe: httpGet:
port: http
path: /index.html 
initialDelaySeconds: 1
periodSeconds: 3
timeoutSeconds: 10

livenessProbe-tcp

apiVersion: v1 
kind: Pod 
metadata:
  name: probe-tcp 
spec:
  containers:
   - name: nginx
   image: hub.atguigu.com/library/myapp:v1 
    livenessProbe:
    initialDelaySeconds: 5
    timeoutSeconds: 1 tcpSocket:
     port: 80



启动、退出动作

apiVersion: v1 kind: Pod metadata:
name: lifecycle-demo spec:
containers:
- name: lifecycle-demo-container image: nginx
lifecycle:
postStart:
exec:
   command: ["/bin/sh", "-c", "echo Hello from the postStart handler >
/usr/share/message"] 
   preStop:
exec:
    command: ["/bin/sh", "-c", "echo Hello from the poststop handler >
/usr/share/message"]

Logo

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

更多推荐