飞天使-k8s知识点10-kubernetes资源对象3-controller

本文主要是介绍飞天使-k8s知识点10-kubernetes资源对象3-controller,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • pod
          • 探针
        • 控制器

pod

概述:
1. pod是k8s中的最小单元
2. 一个pod中可以运行一个容器,也可以运行多个容器
3. 运行多个容器的话,这些容器是一起被调度的
4. Pod的生命周期是短暂的,不会自愈,是用完就销毁的实体
5. 一般我们是通过Controller来创建和管理pod的Pod生命周期:
初始化容器、启动前操作、就绪探针、存活探针、删除pod操作Pod 是 Kubernetes 中最小的可调度和可管理单位,它可以包含一个或多个容器。以下是 Pod 的生命周期和各个阶段的描述:Pending(挂起):在此阶段,Kubernetes 正在为 Pod 分配资源,并且正在等待这些资源准备就绪。此时,Pod 还没有运行在任何节点上。Initializing Containers(初始化容器):如果 Pod 中定义了初始化容器(Init Containers),则在此阶段,初始化容器会按照顺序依次运行。初始化容器可以用于执行一些预配置任务,例如加载配置文件、下载数据等。只有当所有初始化容器成功完成后,Pod 才会进入下一个阶段。ContainerCreating(创建容器):在此阶段,Kubernetes 正在创建并启动 Pod 中的容器。它会为每个容器分配网络和存储资源,并将容器的镜像拉取到节点上。Running(运行中):一旦容器创建完成并成功启动,Pod 就会进入 Running 阶段。此时,容器正在运行,并且可以正常处理请求。Ready(就绪):在此阶段,Pod 已经准备好接收请求,并且所有容器都已经启动并且就绪。Kubernetes 可以将流量路由到就绪的 Pod 上。ContainerTerminated(容器终止):如果容器发生故障或被意外终止,Pod 将进入 ContainerTerminated 阶段。此时,Kubernetes 会根据重启策略(Restart Policy)来决定是否重新启动容器。Terminating(终止中):在删除 Pod 或缩容时,Pod 将进入 Terminating 阶段。在此阶段,Kubernetes 会发送信号给 Pod 中的容器,并尝试优雅地终止它们。一旦所有容器都终止完成,Pod 就会被删除。请注意,就绪探针(Readiness Probe)和存活探针(Liveness Probe)是 Kubernetes 用于检测容器健康状态的机制。就绪探针用于确定容器是否准备好接收流量,而存活探针用于确定容器是否仍然处于运行状态。这些探针可以在 Pod 的描述文件中配置,并且可以根据需要进行自定义设置。livenessProbe:存活探针
检测应用发生故障时使用,不能提供服务、超时等
检测失败重启pod
readinessProbe:就绪探针
检测pod启动之后应用是否就绪,是否可以提供服务
检测成功,pod才开始接收流量
探针
ExecAction
#在容器内执行指定命令,如果命令退出时返回码为0则认为诊断成功。 TCPSocketAction
#对指定端口上的容器的IP地址进行TCP检查,如果端口打开,则诊断被认为是成功的。HTTPGetAction
#对指定的端口和路径上的容器的IP地址执行HTTPGet请求,如果响应的状态码大于等于200且小于 400,则诊断被认 为是成功的。
控制器
• Replication Controller #第一代pod副本控制器
• ReplicaSet #第二代pod副本控制器
• Deployment #第三代pod控制器Replication Controller:副本控制器(selector = !=)
• https://kubernetes.io/zh/docs/concepts/workloads/controllers/replicationcontroller/
• https://kubernetes.io/zh/docs/concepts/overview/working-with-objects/labels/
• ReplicaSet:副本控制集,和副本控制器的区别是:对选择器的支持
(selector 还支持in notin)
• https://kubernetes.io/zh/docs/concepts/workloads/controllers/replicaset/
• Deployment:比rs更高一级的控制器,除了有rs的功能之外,还有很多高级
功能,,比如说最重要的:滚动升级、回滚等
• https://kubernetes.io/zh/docs/concepts/workloads/controllers/deployment/

参考资料:
马哥,杰哥

这篇关于飞天使-k8s知识点10-kubernetes资源对象3-controller的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/594205

相关文章

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

SpringMVC高效获取JavaBean对象指南

《SpringMVC高效获取JavaBean对象指南》SpringMVC通过数据绑定自动将请求参数映射到JavaBean,支持表单、URL及JSON数据,需用@ModelAttribute、@Requ... 目录Spring MVC 获取 JavaBean 对象指南核心机制:数据绑定实现步骤1. 定义 Ja

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

C++中RAII资源获取即初始化

《C++中RAII资源获取即初始化》RAII通过构造/析构自动管理资源生命周期,确保安全释放,本文就来介绍一下C++中的RAII技术及其应用,具有一定的参考价值,感兴趣的可以了解一下... 目录一、核心原理与机制二、标准库中的RAII实现三、自定义RAII类设计原则四、常见应用场景1. 内存管理2. 文件操

MySQL JSON 查询中的对象与数组技巧及查询示例

《MySQLJSON查询中的对象与数组技巧及查询示例》MySQL中JSON对象和JSON数组查询的详细介绍及带有WHERE条件的查询示例,本文给大家介绍的非常详细,mysqljson查询示例相关知... 目录jsON 对象查询1. JSON_CONTAINS2. JSON_EXTRACT3. JSON_TA

C#之List集合去重复对象的实现方法

《C#之List集合去重复对象的实现方法》:本文主要介绍C#之List集合去重复对象的实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C# List集合去重复对象方法1、测试数据2、测试数据3、知识点补充总结C# List集合去重复对象方法1、测试数据

Spring中管理bean对象的方式(专业级说明)

《Spring中管理bean对象的方式(专业级说明)》在Spring框架中,Bean的管理是核心功能,主要通过IoC(控制反转)容器实现,下面给大家介绍Spring中管理bean对象的方式,感兴趣的朋... 目录1.Bean的声明与注册1.1 基于XML配置1.2 基于注解(主流方式)1.3 基于Java

C++/类与对象/默认成员函数@构造函数的用法

《C++/类与对象/默认成员函数@构造函数的用法》:本文主要介绍C++/类与对象/默认成员函数@构造函数的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录名词概念默认成员函数构造函数概念函数特征显示构造函数隐式构造函数总结名词概念默认构造函数:不用传参就可以

C++类和对象之默认成员函数的使用解读

《C++类和对象之默认成员函数的使用解读》:本文主要介绍C++类和对象之默认成员函数的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、默认成员函数有哪些二、各默认成员函数详解默认构造函数析构函数拷贝构造函数拷贝赋值运算符三、默认成员函数的注意事项总结一