美文网首页
k8s Pod Init 容器

k8s Pod Init 容器

作者: quanCN | 来源:发表于2021-10-06 23:06 被阅读0次

简介

Init 容器是一种特殊容器,在Pod内的应用容器启动之前运行。Init容器可以包括一些应用镜像中不存在的实用工具和安装脚本。

Init容器启动流程

如图可以看到Pod中的Init容器启动流程



Init容器一个接一个地运行,并且必须在pod的主容器启动之前全部成功完成。

Init容器使用场景

  • 初始化 pod 主容器使用的卷中的文件。包括从安全证书存储中检索主容器使用的证书和私钥、生成配置文件、下载数据等
  • 初始化 pod 的网络系统。因为 pod 的所有容器共享相同的网络命名空间,因此网络接口和配置,init 容器对其所做的任何更改也会影响主容器
  • 延迟 Pod 的主容器的启动,直到满足前提条件。例如,如果主容器在容器启动之前依赖于另一个可用的服务,则 init 容器可以阻塞,直到该服务准备就绪
  • 通知外部服务 pod 即将开始运行。在启动应用程序的新实例时必须通知外部系统的特殊情况下,可以使用 init 容器来传递此通知

使用Init容器

在 pod 清单中,init 容器定义非常简单,initContainers在 spec 部分的字段中定义,就像在其containers字段中定义常规容器一样

  • demo
apiVersion: v1
kind: Pod
metadata:
  name: kubia-init
spec:
  initContainers:
  - name: init-demo
    image: luksa/init-demo:1.0
  - name: network-check
    image: luksa/network-connectivity-checker:1.0
  containers:
  - name: kubia
    image: luksa/kubia:1.0
    ports:
    - name: http
      containerPort: 8080
  - name: envoy
    image: luksa/kubia-ssl-proxy:1.0
    ports:
    - name: https
      containerPort: 8443
    - name: admin
      containerPort: 9901

相关文章

  • k8s家族Pod辅助小能手Init容器认知答疑?

    k8s家族Pod辅助小能手Init容器认知答疑? k8s集群Init 容器是一种特殊容器,职责是在Pod的生命周期...

  • k8s Pod Init 容器

    简介 Init 容器是一种特殊容器,在Pod内的应用容器启动之前运行。Init容器可以包括一些应用镜像中不存在的实...

  • k8s的网络发现

    k8s网络场景 容器与容器之间的通信 pod与pod之间的通信 pod到service之间的通信 集群外部与集群内...

  • Kubernetes 0-1 了解Pod

    Pod介绍 Pod,是K8S对象模型中的最小单元,Pod里面包含着一组容器(单个容器或多个紧密耦合的容器),这时候...

  • 创建一个最简单的pod

    pod为k8s内最小的管理资源,每个pod会分配一个系统容器,一个pod内可能存在多个用户容器,所有用户容器通过系...

  • K8S资源对象简介

    一、资源简介 1.1 Pod pod是k8s中的最小单元。 一个pod中可以运行一个容器,也可以运行多个容器。 运...

  • Kubernetes进阶

    1. k8s的网络模型是什么? 容器与容器之间要能相互通信 pod和pod之间要能相互通信 任意pod和任意ser...

  • k8s中pod的相关操作

    k8s 是不能直接运行程序的,k8s集群中最小的调度单元为pod,Pod是容器的封装。因此我们需要使用Pod来运行...

  • 14.Kubernetes——Pod详解

    一、Pod的介绍 Pod是k8s最小部署单元,一个Pod中可以有一个或者多个容器也就是一组容器的集合,Pod又称为...

  • Kubernetes(三)之资源对象POD和JOB

    Kubernetes POD和JOB pod Pod是K8S的最小操作单元,一个Pod可以由一个或多个容器组成;整...

网友评论

      本文标题:k8s Pod Init 容器

      本文链接:https://www.haomeiwen.com/subject/ynhanltx.html