就绪探针存活探针钩子

存活探针 livenessprobe

杀死容器,重启。

就绪探针 readinessProbe

pod的状态是running

ready状态是notready

容器不可以提供正常的业务访问,就绪探针不会重启容器

tcpSocket只是监听荣亲上的业务端口能否正常通信。8081没有,8080还在,也就是正常的端口还是可以访问

如果更改了容器的启动端口,

mysql 3306 33066

tcp----->33066

*存活探针和就绪探针会伴随整个pod的生命周期*

启动探针 statrupProbe

如果启动失败,pod的状态是notready(0/1)

启动探针探测容器启动失败,会重启pod

启动探针没有成功之前,后续的探针都不会执行

启动探针成功之后,在pod的生命周期内不会再检测启动探针

重启了pod之后,相当于重新部署了一个初始版的新的容器

重启的还是pod

总结:

1、在一个yml文件中可以有多个探针。启动、存活、就绪都针对一个容器

2、启动探针的优先级是最高的。只有启动探针成功,后续的探针才会执行

3、启动探针成功之后,后续除非重启pod,否则不会再触发启动探针

4、在pod的生命周期中,一直存在,一直探测的是存活探针和就绪探针

5、在pod的生命周期当中,后续的条件满足哪个探针的条件,触发哪个探针的条件

6、就绪探针,如果不影响容器运行,status;runing,这个时候不会重启,但是,容器退出的话,就绪探针也会重启。

容器启动和退出时的动作:

postStart 容器启动钩子

容器启动之后触发的条件

preStop 容器退出钩子

容器退出之后触发的条件

volumeMounts:

      - name: test1

        mountPath: /opt

        readOnly: false

      lifecycle:

        postStart:

          exec:

            command: ["/bin/bash","-c","echo hello >> /opt/123.txt ; sleep 10"]

        prestop:

          exec:

            command: ["/bin/bash", "-c","echo hi >> /opt/123.txt"]

声明容器内部的挂载目录

要给这个挂载卷取名字,不同的挂载卷的名字不能重复

readonly: false: 可读写

 volumes:

    - name: test1

      hostPath:

        path: /opt/test

        type: DirectoryOrCreate

声明的是node节点上和容器内的/opt的挂载目录

挂载卷的名称和要挂载卷的容器内挂载卷名称要一一对应

hostPath:指定和容器的挂载目录

type: DirectoryOrCreate: 如果节点上的目录不存在,自动创建该目录

#pod会经常被重启或者销毁。一旦容器和node节点做了挂载卷,数据不会丢失

启动和退出的作用:

1、启动可以自定义配置容器的内的环境变量

2、通知机制,告诉用户容器启动完毕

3、退出时,可以执行自定义命令,删除或者生成一些必要的程序,自定义销毁方式以及自定义资源回收方式以及容器的退出等待时间

pod重启策略:在K8S中,都是重启pod

Always(默认策略)  当pod内的容器退出,不论一个还是n个容器退出,整个pod都会重启

Never   当pod内的容器退出,不论一个还是n个容器退出,整个pod都不会重启

onFailure   当pod内的容器退出,状态码是0,不论一个还是两个容器退出,整个pod都不会重启。只有一个或者n个容器非正常退出,状态码非0,整个pod才会重启

K8S就是集群化管理容器。K8S管理对象是封装容器的pod

pod和容器到底是什么

cd /opt

ls

vim 11.yml

apiVersion: v1

kind: Pod

metadata:

  name: nginx2

spec:

  containers:

    - name: nginx2

      image: centos:7

      command: ["bin/bash","-c","sleep 3600"]

      volumeMounts:

      - name: test1

        mountPath: /opt

        readOnly: false

      lifecycle:

        postStart:

          exec:

            command: ["/bin/bash","-c","echo hello >> /opt/123.txt ; sleep 10"]

        preStop:

          exec:

            command: ["/bin/bash", "-c","echo hi >> /opt/123.txt"]

  volumes:

    - name: test1

      hostPath:

        path: /opt/test

        type: DirectoryOrCreate

:wq!

kubectl apply -f 11.yml

kubectl get pod

kubectl get pod -o wide

kubectl describe pod nginx2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/322850.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

crontab 创建定时任务

1、创建crontab任务 crontab -ecrontab内容 */59 * * * * sh /home/restartAllSlave.sh >> /home/my-restartAllSlave.log 2>&12、创建执行脚本(restartAllSlave.sh) docker重启如下: docker restart slave_zllrp_gb_1 slav…

MessageBox:拓宽业务边界,HubSpot与WhatsApp的完美融合

在当今竞争激烈的商业环境中,企业必须迎合客户的多元化需求,通过创新的数字化工具实现全球化经营。今天运营坛将深度剖析MessageBox在连接HubSpot与WhatsApp上的独特价值,它在拓宽社交媒体界限、提升客户关系和实现国际化目标方面起着关键作用…

EasyRecovery2024操作安全、价格便宜的电脑数据恢复软件

EasyRecovery是一款操作安全、价格便宜、用户自主操作的非破坏性的只读应用程序,它不会往源驱上写任何东西,也不会对源驱做任何改变。它支持从各种各样的存储介质恢复删除或者丢失的文件,其支持的媒体介质包括:硬盘驱动器、光驱、…

迅为RK3588开发板编译 Buildroot单独编译图形化界面

编译 Buildroot Buildroot 是一款集成的编译集合包,解决了以前交叉编译麻烦的问题,本小节将介绍buildroot 镜像的编译流程,分为单独编译和完整全自动编译。 1 单独编译 1.1 图形化界面 本小节单独编译镜像的顺序如下所示: 单…

基于ssm的订餐管理系统论文

基于JSP的订餐管理系统的设计与实现 摘要 当下,正处于信息化的时代,许多行业顺应时代的变化,结合使用计算机技术向数字化、信息化建设迈进。传统的订餐信息管理模式,采用人工登记的方式保存相关数据,这种以人力为主的…

富文本BraftEditor引起的bug

1、BraftEditor踩坑1 #基于之前写的一篇BraftEditor的使用# 1. 问题起源: 打开编辑弹窗--> 下面页面所示--> 当进行分类选择时候,就会报错,并且这个报错还不是一直都有,6次选择出现一次报错吧 2. 解决: 2.1 起…

智慧农庄电商小程序(商城系统)

文章目录 项目简介商城功能项目结构技术选型后端使用的技术前端使用的技术 程序体验 项目简介 基于当前流行技术组合的前后端分离商城系统: SpringBoot2JpaMybatisPlusSpringSecurityjwtredisVue的前后端分离的商城系统, 包含商城、拼团、砍价、商户管理…

基于ssm学生档案管理系统论文

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 JSP技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

开箱秘籍,一招鲜吃遍天的Object.prototype.toString.call

在前端开发中,精准的数据类型判断是每一位开发者都必不可少的技能。就像熟知的 typeof 操作符,但在面对复杂数据类型时,仍然存在着局限性。 本文将深入剖析各类数据类型判断方法,特别聚焦于 Object.prototype.toString.call 这一…

python毕设选题 - flink大数据淘宝用户行为数据实时分析与可视化

文章目录 0 前言1、环境准备1.1 flink 下载相关 jar 包1.2 生成 kafka 数据1.3 开发前的三个小 tip 2、flink-sql 客户端编写运行 sql2.1 创建 kafka 数据源表2.2 指标统计:每小时成交量2.2.1 创建 es 结果表, 存放每小时的成交量2.2.2 执行 sql &#x…

redis中bitmap应用

原理介绍 Redis Bitmap 是 Redis 中的一种数据结构,它类似于位图,可以用来表示一组二进制位,每个二进制位只能是 0 或 1。Redis Bitmap 提供了一些操作命令,如 SETBIT、GETBIT、BITCOUNT 等,可以对位图进行设置、…

SwiftUI之深入解析如何使用新地图框架MapKit

一、前言 一旦将 App 目标更新到 iOS 17,Xcode 会将任何使用旧的 Map 初始化器的用法标记为已弃用: 会有警告提示:init coordinate region 已在 iOS 17 中弃用。请改用带有 MapContentBuilder 参数的地图初始化器。在 iOS 17 中,…