• k8s pod理论


    一、Pod概述

    1、Pod的定义

    Pod是K8S中创建和管理的最小单位。

    2、一个Pod至少包含多少容器

    1个pause容器(基础容器/父容器/根容器)和 1个或者多个应用容器(业务容器)

    通常一个Pod最好只包含一个应用容器,一个应用容器最好也只运行一个应用进程
    同一个Pod里的容器都是运行在同一个node节点上的,并且共享 net mnt uts pid ipc 命名空间

    3、pause容器的作用

    给Pod容器组做环境初始化

    作为linux命名空间共享的基础,为Pod里的其它容器提供网络、存储资源的共享
    作为pid=1的init管控类进程管理整个Pod容器组的生命周期

    二、Pod的3种类型

    • 控制器管理的Pod:

    由scheduler调度到node节点运行的;被控制器管理的;有自愈能力,一旦Pod挂掉了,会被控制器重新拉起;有副本管理、滚动更新等功能
    创建命令:kubectl create deployment ....     控制器有 deployment  statefulset   deamonset 

    • 自主独立的Pod:

    由scheduler调度到node节点运行的;不被控制器管理的;没有自愈能力,一旦Pod挂掉了,不会被重新拉起;没有副本管理、滚动更新等功能
    创建命令:kubectl run

    • 静态Pod:

    不由scheduler调度到node节点运行的,而是由kubelet自行管理的;始终与kubelet运行在同一个node节点上;通过向apiserver发送请求无法直接删除的
    在node节点的/etc/kubernetes/manifests目录中放置Pod的yaml配置文件,kubelet就会自动根据yaml配置文件创建静态Pod

    三、Pod中的3种容器

    • pause容器(基础容器/父容器/根容器)

    给Pod容器组做环境初始化,作为linux命名空间共享的基础,为Pod里的其它容器提供网络、存储资源的共享,作为pid=1的init管控类进程管理整个Pod容器组的生命周期。pause容器是Pod最先启动的容器。

    • init容器(初始化容器/init container)

    可以在应用容器启动前,为应用容器提供运行依赖环境或工具包;还可以阻塞或延迟应用容器的启动
    init容器是在pause容器之后启动的;如果Pod定义了多个init容器,它们是串行启动的,即要在上一个init容器成功的完成启动退出后才会启动

    • 应用容器(业务容器/main container)

    提供应用程序业务,应用容器是在所有init容器都成功的完成启动退出后才会启动;如果Pod定义了多个应用容器,它们是并行启动

    四、Pod容器的3种镜像拉取策略

    imagePullPolicy(与image字段同一层级)

    IfNotPresent:优先使用node节点本地已存在的镜像,如果本地没有则从仓库拉取镜像。是标签为非latest的镜像的默认拉取策略
    Always:总是从仓库拉取镜像,无论node节点本地是否已存在镜像。是标签为latest或无标签的镜像的默认拉取策略
    Never:仅使用node节点本地镜像,总是不从仓库拉取镜像。

    五、Pod容器的3种重启策略

    restartPolicy(与containers字段同一层级)

    Always:当Pod容器退出时,总是重启容器,无论容器退出状态码如何。是默认的容器重启策略
    OnFailure:当Pod容器异常退出时(容器退出状态码为非0),才会重启容器;正常退出的容器(容器退出状态码为0)不重启
    Never:当Pod容器退出时,总是不重启容器,无论容器退出状态码如何

    deamonset statefulset控制器的Pod容器重启策略只能设置为 Always,自主类型的Pod容器重启策略可选择 Always OnFailure Never

  • 相关阅读:
    【java实战】项目经验_04
    AcWing第80场周赛总结
    1500*C1. Potions (Easy Version)(贪心&优先队列)
    多路分支选择结构—switch语句
    微信小程序毕业设计-无中介租房系统项目开发实战(附源码+论文)
    JavaScript 作用域
    C++ Primer学习笔记-----第四章:表达式
    线性回归大结局(岭(Ridge)、 Lasso回归原理、公式推导),你想要的这里都有
    微服务实战 05 分布式事务 入门
    《软件方法》读后感
  • 原文地址:https://blog.csdn.net/lcy913/article/details/136346714