山东网站制作推荐,wordpress注册未发邮件,优秀的网页,网页布局设计图片Pod是k8s中最小限额资源管理组件#xff0c;也是最小化运行容器化的应用的资源管理对象。
Pod是一个抽象的概念#xff0c;可以理解为一个或者多个容器化应用的集合。
在一个pod当中运行一个容器是最常用的方式。
在一个pod当中同时运行多个容器#xff0c;在一个pod当中…Pod是k8s中最小限额资源管理组件也是最小化运行容器化的应用的资源管理对象。
Pod是一个抽象的概念可以理解为一个或者多个容器化应用的集合。
在一个pod当中运行一个容器是最常用的方式。
在一个pod当中同时运行多个容器在一个pod当中可以同时封装几个需要耦合的相互协作的容器。这些多个容器共享资源也可以互相协作组成一个service单位。
不论运行一个容器还是多个容器。k8s管理的都是pod而不是容器。
一个pod内的容器必须都运行在同一个节点上。基于现代容器技术的要求一个pod运行一个容器一个容器只运行一个进程。
横向扩展方便扩缩容
解耦一个pod内运行多个容器耦合度太高一但一个进程失败整个pod将全部失败实现解耦。基于pod可以创建多个副本实现高可用和负载均衡。管理方便简单直观。 Pod内的容器共享资源。共享机制pause底层基础容器来提供共享资源的机制。
Pause容器是基础容器也可以称为父容器管理pod内容器的共享操作。
Pause还可以管理容器的生命周期 k8s提供了pause容器两大功能
为pod内的所有容器提供一个命名空间启动容器的pid进程号命名空间每个pod中都作为pid唯一的进程init进程。回收僵尸进程。创建pod时先创建pause容器然后拉取镜像形成pod。 第一步master节点发出指令pod使用的镜像nginx。Pod的副本数
第二部kube-scheduler来分配执行的node节点
第三部node节点的kubelet收到master指令。拉pause拉nginx1.22 pod1
第四部pause容器先启动提供命名空间进程管理pid1 来为pod内的容器提供共享服务以及 容器的进程管理。 Pause容器共享两种资源
网络每个pod都会被分配一个集群内部的唯一IP地址pod内的容器共享网络。Pod在集群内部的ip地址和端口。
Pod内部的容器可以使用localhost互通通信。Pod的中容器与外部通信时从共享的资源当中进行分配宿主机的端口映射。 Pause容器共享两种资源
网络每个pod都会被分配一个集群内部的唯一IP地址pod内的容器共享网络。Pod在集群内部的ip地址和端口。
Pod内部的容器可以使用localhost互通通信。Pod的中容器与外部通信时从共享的资源当中进行分配宿主机的端口映射。 总结
每个pod都有一个基础容器pause容器。
Pause容器对应的镜像属于k8s集群的一部分。创建集群就会有pause这个基础镜像。
Pod里面包含看一个或者多个相关的容器应用
Pod外再设置一个基础镜像
pod内部有一组容器挂了一个就算这个pod失效了吗 引入pause禁止代表整个容器的组的状态。可以解决对pod内部容器整体状态的判断。Pod内的容器共享ip 共享volume解决了容器内网络通信的问题解决了容器内部文件共享问题。 Pod的生命周期状态
pending 挂起 pod已被创建但是尚未被分配到运行的node节点节点上资源不够需要等待其他pod的调度running运行中。Pod已经被分配到了node节点pod内部的所有容器都已经启动运行状态正常稳定。complete容器内部的进程运行完毕正常退出。没有发生错误。faildpod中的容器非正常退出。发生错误需要通过查看详情和日志来定位问题。UNkown由于某些原因k8s集群无法获取pod的状态。APIserver出了问题。terminating终止中 ,pod正在被删除里面的容器正在终止。终止过程中资源回收垃圾清理以及终止过程中需要执行的命令。 创建pod的容器分类
基础容器pauseInit容器初始化容器init c 1和2这个过程中。Pod的状态就是init: 0/3
业务容器 init容器的作用
环境变量
可以在创建的过程中为业务容器定制好相关的代码和工具
Init容器独立与业务容器他是单独构建的一个镜像对业务容器不产生任何安全影响。
Init容器能以不同于pod内应用容器的文件系统视图运行。Secrets的权限。应用容器无法访问sercerts的权限。 总结init容器提供了应用容器运行之前的先决条件提供了一种阻塞或者延迟机制来控制应用容器的启动只有前置条件满足才会创建pod的应用容器。 在pod的启动过程中容器按照初始化容器先启动每个容器必须在下一个容器启动之前要成功退出。如果运行失败会按照容器的重启策略进行指定动作。RestartPolicy Always never onFailure非正常退出才会重启所有的init容器没有成功之前pod是不会进入ready状态。
Init容器与service无法。不能对外提供访问。
如果重启pod所有的init容器一定会重新执行如果修改init容器的spec参数只限于image其他的修改字段 都不生效基于deploment。每个容的名称都要唯一不能重复。 Pod的重启策略 总结
Pause容器底层容器/基础容器
提供pod内容器的网络和存储共享以及pod内容器退出之后的资源回收。、
Init容器人为设定的业务容器启动之间的必要条件。
Pod的生命周期
pause基础容器Init容器----全部成功退出-------业务容器Poststart prestop 容器的钩子
启动时命令和退出时的命令
探针探测容器的健康状态。伴随pod的整个生命周期除了启动探针 总结pod就是用来封装容器的业务是容器。服务也是容器端口也是容器