K8S探针分享

news2025/1/17 13:50:20

一,探针介绍

1 探针类型

livenessProbe:存活探针,用于判断容器是不是健康;如果探测失败,Kubernetes就会重启容器。

readinessProbe:就绪探针,用于判断是否可以将容器加入到Service负载均衡池中,对外提供服务。

startupProbe:启动探针,判断容器内的应用程序是否已启动。

区别:如果提供了启动探测,其他两个探针将会被暂时禁用,直到满足配置,启动探针满足一次探测后,后续不再进行探测。

使用场景:启动探针使用避免容器重启陷入死循环

上图中的配置如果容器启动时间超过20s,就会启动重启策略。如果调高失败次数,服务挂了以后不能及时重启服务。

2 配置参数

initialDelaySeconds

探针初始等待时间,默认是 0 秒

periodSeconds

探测的时间间隔。默认是 10 秒。

timeoutSeconds

探测的超时时间。默认值是 1 秒。

successThreshold

探测的成功数。默认值是 1。

failureThreshold

探测的失败数。默认值是3。

3 探针方式

httpGet

请求接口,类似于curl -I HTTP://podIP:8080/health/liveness接口,返回数值在>=200且<=400代表成功

tcpSocket

连接容器的 80 端口,类似于telnet 80端口

exec

执行 shell 命令

tcpSocket方式:

httpGet方式:

exec方式:

二,spring-boot-starter-actuator

1 K8s探针和spring-boot-starter-actuator联系

2 使用配置

引入依赖:

开启配置:

3 应用测试

存活探针接口:

就绪探针接口:

4 原理分析

健康指标:

org.springframework.boot.actuate.autoconfigure.health.HealthEndpointConfiguration

org.springframework.boot.actuate.jdbc.DataSourceHealthIndicator#doDataSourceHealthCheck

org.springframework.boot.actuate.redis.RedisHealthIndicator

5 自定义健康指标

实现healthIndicator接口:

状态映射:

参考来源:Spring Boot Actuator: Production-ready Features

https://spring.io/blog/2020/03/25/liveness-and-readiness-probes-with-spring-boot

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue 组件分类、局部注册和全局注册

文章目录 背景知识组件分类安装 vue-cli示例设置组件局部注册设置组件全局注册 背景知识 开发 Vue 的两种方式&#xff1a; 核心包传统开发模式&#xff1a;基于 html / css / js 文件&#xff0c;直接引入核心包&#xff0c;开发 Vue。工程化开发模式&#xff1a;基于构建工…

什么是数字化运营?

目录 一、什么是数字化运营&#xff1f; 二、数字化运营的重要性是什么&#xff1f; 三、数字化运营的具体步骤和措施是什么&#xff1f; 四、数据化决策是什么&#xff1f; 一、什么是数字化运营&#xff1f; 数字化运营是利用数字技术和数据分析来优化企业的业务流程和运…

QC8585 封装SOP-7 控制器芯片

QC8585是一款适合于智能手机充电器和其他低功率AC-DC电源适配器的PWM控制器。它因其高效率、高集成度和多种保护功能而受到许多电源制造商的青睐。下面是一些可能的应用案例&#xff1a; 快速充电器&#xff1a;使用QC8585的智能手机充电器可以支持快速充电技术&#xff0c;能…

Vitis HLS 学习笔记--C/C++ static 关键字的作用

目录 1. 简介 2. c/c共有性质 3. c独有性质 4. 示例说明 5. static 对于 HLS 工具的影响 6. 总结 1. 简介 在Vitis HLS中&#xff0c;偶尔会用到 static 关键字。考虑到Vitis HLS同时兼容C和C语言&#xff0c;有必要理解这两种语言中static关键字细微差异。本文旨在梳理…

Compose和Android View相互使用

文章目录 Compose和Android View相互使用在Compose中使用View概述简单控件复杂控件嵌入XML布局 在View中使用Compose概述在Activity中使用Compose在Fragment中使用Compose布局使用多个ComposeView 在布局中使用Compose 组合使用 Compose和Android View相互使用 在Compose中使用…

web自动化系列-selenium的下拉框定位(十三)

在功能操作过程中 &#xff0c;遇到下拉列表是很正常的事 &#xff0c;比如像一些查询条件就都是使用的是下来列表 。所以 &#xff0c;selenium也需要支持对下拉框的操作 。 1.下拉列表 在selenium中&#xff0c;也提供了一个下拉列表操作的类 &#xff1a;Select . 以下为该…

C语言学习/复习35

一、语言文件操作 1.章节重点 注意事项1&#xff1a;可变参数 、

使用NGINX做局域网内 浏览器直接访问链接 拓展外网链接访问本地

达成目的功能&#xff1a; 在本地服务的一个文件路径下&#xff0c;局域网内用ip和路径名访问到对应的地址&#xff1b;如 10.5.9.0/v1 即可访问到 某个固定本地地址目录 V1下&#xff0c;名为index.html的文件。前言 NGINX 是一个非常流行的开源 Web 服务器和反向代理服务器…

【踩坑日记】SpringBoot集成Kafka,消息没有按照顺序消息问题【已解决】

背景 作为一个合格的码农&#xff0c;当然要学会CV大法了&#xff0c;可是CV也是有风险的&#xff0c;别以为前任写的已经上线那么久了没有问题… 我们需要将埋点信息上报到一个三方平台&#xff08;S2S&#xff09;接口&#xff0c;三方平台对时间有要求&#xff0c;同一个用…

【工具】-根源上解决VScode打印输出乱码的问题

目录 1 第一步&#xff1a; 改编译命令&#xff0c;保持一致2 第二步&#xff1a; 更改VScode的编码格式-保持一致 1 第一步&#xff1a; 改编译命令&#xff0c;保持一致 看一下你的控制台的编译的命名后缀&#xff0c;有两个关键的参数&#xff0c;如下图&#xff1a; “-f…

预测性营销在业务经营中的实践:开源AI名片商城系统小程序的应用与实例

在数字化浪潮中&#xff0c;预测性营销已经成为企业获取市场竞争优势、推动业务增长的关键手段。而开源AI名片商城系统小程序&#xff0c;作为一种融合了先进技术和智能分析能力的工具&#xff0c;为企业在业务经营中实现预测性营销提供了有力支持。 首先&#xff0c;让我们通过…

神经网络中多层卷积的作用

在神经网络中采用多层卷积的目的是为了逐步提取和组合图像的抽象特征&#xff0c;从而更有效地学习数据的表示并执行复杂的任务。不同层的卷积具有不同的作用&#xff0c;从较低层次的特征&#xff08;例如边缘、纹理&#xff09;到较高层次的抽象特征&#xff08;例如物体部件…

怎么做视频二维码更方便?在线一键生成视频活码二维码

现在经常会发现很多的二维码可以用来展示视频内容&#xff0c;通过这种方式来实现视频的快速分享与传播。二维码是一种成本低传播快的内容传播方式&#xff0c;很多的内容都可以通过生成二维码的方式来分享给其他人&#xff0c;可以同时扫描相同的二维码来获取内容&#xff0c;…

企业进行数字化转型需要具备哪些基础条件?

蚓链实践——企业进行数字化转型通常需要具备以下基础条件&#xff1a; 1. 管理层的支持&#xff1a;高层管理者对数字化转型的理解和支持至关重要。 2. 明确的战略目标&#xff1a;确定数字化转型的目标&#xff0c;以指导决策和资源分配。 3. 数据基础&#xff1a;拥有良好…

【MySQL】MySQL中MVCC多版本并发控制的概念

MySQL中MVCC多版本并发控制的概念 锁相关的知识我们已经学习完了&#xff0c;在其中我们提到过一个概念&#xff0c;那就是 MVCC 。这又是个什么东西呢&#xff1f;今天我们就来好好看看 MVCC 到底是干嘛的。 MVCC 多版本并发控制&#xff0c;它主要是控制 读 操作&#xff0c;…

【Java系列】SpringCloudAlibaba 实现在不修改配置文件情况下适配不同环境部署

本文将向大家介绍在SpringCloudAlibaba微服务架构中&#xff0c;如何实现多个微服务在不修改各自配置文件的情况下适配不同环境进行部署。 作者&#xff1a;后端小肥肠 1. 前言 在现代软件开发过程中&#xff0c;随着敏捷开发和持续集成的普及&#xff0c;开发团队越来越需要在…

Linux c++ onvif客户端开发(8):GetServices

本文是Linux c onvif客户端开发系列文章之一&#xff1a; Linux c onvif客户端开发(1): 根据wsdl生成cpp源文件Linux c onvif客户端开发(2): 获取摄像头H264/H265 RTSP地址Linux c onvif客户端开发(3): 扫描设备Linux c onvif客户端开发(4): 扫描某个设备是否支持onvifLinux c…

2021 年全国职业院校技能大赛高职组“信息安全管理与评估”赛项 A 卷 第二阶段任务书

第二阶段任务书 一、赛项第二阶段时间180 分钟。 信息安全管理与评估 网络系统管理 网络搭建与应用 云计算 软件测试 移动应用开发 任务书&#xff0c;赛题&#xff0c;解析等资料&#xff0c;知识点培训服务 添加博主wx&#xff1a;liuliu5488233 三、注意事项 赛题第二阶段请…

BUUCTF--web(1)

1、[极客大挑战 2019]Http1 1.http报文请求&#xff1a; 1、请求行&#xff1a; 第一部分是请求方法&#xff0c;常见包括GET、POST、OPTIONS&#xff08;我目前还没有见过我是菜鸡&#xff09; 第二部分是url 第三部分是HTTP协议(http(Hypertext transfer protocol)超文本传…

CMakeLists.txt中如何添加编译选项?

1. 引子 编译器有多种可供选择&#xff0c;如g、c、clang等&#xff0c;如下以c作为示例。 2. 使用CMAKE_CXX_FLAGS添加编译选项 在Makefile中可能用类似如下的指令来添加编译选项&#xff1a; /usr/bin/c -Wall -Wextra -Wno-sign-compare -Wno-unused-variable -Wno-unuse…