zoukankan      html  css  js  c++  java
  • kubernets之init容器作用

    一  init容器的作用

      1.1  init容器是在pod的生命周期,保证该pod运行的一些前置条件满足之后才开始运行这个pod,例如需要依赖一些其他的pod,服务等,可以去对这些服务的状态进行检测,等所有前置的pod都好了才开始运行主容器,一个例子如下所示。

    apiVersion: v1
    kind: Pod
    metadata:
      name: init-pod
      labels:
        app: init
    spec:
      containers:
      - name: init-container
        image: busybox
        command: ['sleep','999999']
      initContainers:
      - name: initService
        image: busybox
        command: ['sh','-c','until nslookup myservice;do echo waiting for myservice;sleep 2;done;']
      - name: initMydb
        image: busybox
        command: ['sh','-c','until nslookup mydb;do echo waiting for mydb;sleep 2;done;']

      1.2 创建一下看看这个pod会发生什么

    [root@node01 Chapter17]# k get po
    NAME        READY   STATUS     RESTARTS   AGE
    init-pod1   0/1     Init:0/2   0          2s
    • STATUS这一栏有2个前置容器未就绪,所以主容器也无法ready

      1.3 创建让initContainers就绪的svc

    kind: Service
    apiVersion: v1
    metadata:
      name: initService
    spec:
      ports:
      - protocol: TCP
        port: 80
        targetPort: 6376
    apiVersion: v1
    kind: Service
    metadata:
      name: initMydb
    spec:
      ports:
      - protocol: TCP
        port: 80
        targetPort: 6377

      

      1.4  之后在查看容器的运行状态

    [root@node01 Chapter17]# k get po
    NAME        READY   STATUS     RESTARTS   AGE
    init-pod1   0/1     Init:0/2   0          14s
    
    [root@node01 Chapter17]# k get po
    NAME        READY   STATUS     RESTARTS   AGE
    init-pod1   0/1     Init:0/2   0          15s
    
    [root@node01 Chapter17]# k get po
    NAME        READY   STATUS    RESTARTS   AGE
    init-pod1   1/1     Running   0          75s
    • 在所有的前置容器都运行成功之后
    • 主容器也成功的运行起来了
  • 相关阅读:
    Spring(001)-Hello Spring
    actuator beans不展示
    Java读取property文件
    PostgreSQL 后端存储
    python 中global() 函数
    python项目配置文件格式
    大数据时代,数据成了研究的基石
    10w数据重建索引报错:java.lang.IllegalStateException: Batch statement cannot contain more than 65535 statements
    java学习day15--API-ArrayList--LinkedList
    java学习day14--API-集合(Collection)+List
  • 原文地址:https://www.cnblogs.com/wxm-pythoncoder/p/14334859.html
Copyright © 2011-2022 走看看