当前位置: 首页 > news >正文

磁业 东莞网站建设东莞网站seo推广

磁业 东莞网站建设,东莞网站seo推广,尚海整装官网门店电话,交易网站的建设规划pod的容器健康检查---探针 probe#xff1a;k8s对容器执行的定期检查#xff0c;诊断。 探针的三种规则 所有的探针都是针对容器不是针对pod 1、 存活探针---livenessProbe#xff1a;探测容器是否正常运行。如果发现探测失败#xff0c;会杀掉容器。容器会根据重启策略…pod的容器健康检查---探针 probek8s对容器执行的定期检查诊断。 探针的三种规则 所有的探针都是针对容器不是针对pod 1、 存活探针---livenessProbe探测容器是否正常运行。如果发现探测失败会杀掉容器。容器会根据重启策略来决定是否重启。 2、 流量探针/就绪探针探测容器是否进入ready状态。并做好接受请求的准备。 检测失败Ready 0/1表示没有进入Ready状态。但是status还是Running状态实际上资源是不可用的。service也不会把请求转发到这个pod 3、 启动探针是在容器启动后开始检测。检测容器内的应用是否启动成功。在启动探测成功之前所有的其他探针都会处于禁用状态。一旦启动探针结束后续操作不再受启动探针影响。 在一个容器中可以有1个或多个探针。 启动探针只在容器启动时探测 存活 就绪 probe的检查方法 probe的检测方法三种探针都是通用的 1、 exec探针在容器中执行命令。如果命令返回码是0表示成功。 应用场景适用于在容器内自定义检查容器健康状态的情况。 2、 httpGet对指定IP端口的容器发送1个httpGet的请求。是通过get请求的响应状态码来判断如果get状态码大于等于200且小于400都表示成功。 应用场景适用于检测能否响应http的请求。例如web容器(nginxtomcat) 3、 tcpSocket用于检查端口。对指定端口上的容器IP地址进行tcp检查(三次握手)检查对方服务器端口是否打开。如果端口打开则认为探测成功。 应用场景适用于检查特定容器的端口监听状态。 类似于telnet ip端口 诊断结果 1、 成功 容器通过了正常运行 2、 失败 存活探针会重启 3、 未知状态 也是诊断失败。也是根据策略 存活探针 exec方式 实验举例 apiVersion: apps/v1 kind: Deployment metadata:labels:app: centosname: centos spec:replicas: 1selector:matchLabels:app: centostemplate:metadata:labels:app: centosspec:containers:- image: centos:7name: centosimagePullPolicy: Nevercommand: [/bin/bash, -c, touch /opt/123.txt ; sleep 3600]livenessProbe:exec:command: [/usr/bin/test, -e, /opt/123.txt] #添加检测策略initialDelaySeconds: 3 #表示容器启动之后多少秒进行探测。数值建议不要设置太短。因为容器有启动时间可能会导致无效探测 #3表示3秒periodSeconds: 2 #表示探针探测的间隔时间。每隔多少秒进行一次检查。根据需求自定义。看应用的延迟敏感度。 #如果应用非常重要是核心组件。可以间隔设置小一点failureThreshold: 2 #表示如果探测失败。失败几次之后把容器标记为不健康。 #2表示2次successThreshold: 1 #表示只要成功1次就标记为就绪。数值固定是1不能修改。根据需求自定义添加。可以不加。timeoutSecond: 1 #表示每一次探测的超时时间。每次探测必须在多少秒之内必须完成探测。 #设置时间必须要小于periodSeconds探测间隔时间。 #根据需求自定义添加可以不加kubectl describe pod 容器名称 #查看容器的详细信息必要的核心指标initialDelaySeconds: 3 #表示容器启动之后多少秒进行探测。数值建议不要设置太短。因为容器有启动时间可能会导致无效探测 #3表示3秒periodSeconds: 2 #表示探针探测的间隔时间。每隔多少秒进行一次检查。根据需求自定义。看应用的延迟敏感度。 #如果应用非常重要是核心组件。可以间隔设置小一点failureThreshold: 2 #表示如果探测失败。失败几次之后把容器标记为不健康。 #2表示2次 liveness杀死容器重启。 所有探针策略会伴随整个pod的生命周期除了启动探针。 httpGet方式 实验举例 apiVersion: v1 kind: Pod metadata:labels:run: nginx1name: nginx1 spec:containers:- image: nginx:1.22name: nginx1livenessProbe:httpGet:scheme: HTTP #如果是默认http则可以不加port: 80initialDelaySeconds: 4periodSeconds: 2 #表示容器启动之后4秒进行探测 #表示每隔2秒检测一次 杀掉容器开始重启 正确示范 apiVersion: v1 kind: Pod metadata:labels:run: nginx1name: nginx1 spec:containers:- image: tomcat:8.0.52name: nginx1livenessProbe:httpGet:scheme: HTTPport: 8080path: /index.jspinitialDelaySeconds: 4periodSeconds: 2 修改为jsp格式测试 tcpSocket方式 实验举例 apiVersion: v1 kind: Pod metadata:labels:run: nginx1name: nginx1 spec:containers:- image: tomcat:8.0.52name: nginx1livenessProbe:tcpSocket:port: 8080initialDelaySeconds: 4periodSeconds: 2 错误示范 apiVersion: v1 kind: Pod metadata:labels:run: nginx1name: nginx1 spec:containers:- image: tomcat:8.0.52name: nginx1livenessProbe:tcpSocket:port: 8081initialDelaySeconds: 4periodSeconds: 2 总结 存活探针检测失败后会杀死容器然后重启。探针将伴随整个容器的生命周期 1、 exec相当于执行了一个shell命令。在容器里面执行 shell命令执行成功返回码是0表示成功。成功1次就是探测成功 2、 httpGet对web容器发起了一次get请求。可以添加path指定访问的资源。返回码在大于等于200且小于400的范围之内都算成功。 3、 tcpSocket相当于telnet指定的容器监听端口是否打开。是否能和指定的容器监听端口进行通信。 就绪探针 exec方式 实验举例 apiVersion: v1 kind: Pod metadata:labels:run: centosname: centos spec:containers:- image: centos:7name: centoscommand: [/bin/bash, -c, sleep 3600]readinessProbe:exec:command: [/usr/bin/test, -e, /etc/passwd]initialDelaySeconds: 4periodSeconds: 2故障模拟 这里删除探测的/etc/passwd路径测试 httpGet方式 实验举例 apiVersion: v1 kind: Pod metadata:labels:run: tomcat3name: tomcat3 spec:containers:- image: tomcat:8.0.52name: tomcat3readinessProbe:httpGet:scheme: HTTPport: 8080path: /index.jspinitialDelaySeconds: 4periodSeconds: 2 故障模拟 这里修改tomcat容器的端口测试 tcpSocket方式 实验举例 apiVersion: v1 kind: Pod metadata:labels:run: nginx1name: nginx1 spec:containers:- image: tomcat:8.0.52name: nginx1readinessProbe:tcpSocket:port: 8080initialDelaySeconds: 4periodSeconds: 2 故障模拟 这里修改tomcat容器的端口测试 总结 就绪探针(readinessProbe)pod的状态是Running但是pod的状态是notready。这个状态下容器无法提供正常的业务访问。就绪探针不会重启容器。 tcpSocket指示监听容器上的业务端口能否正常通信。如果更改了容器的启动端口。 mysql 3306 33066 tcpSocket----33066 tcpSocket用于监听指定端口。如果在业务中修改了默认端口。会使用tcpSocket监听业务端口能否正常通信。 存活探针和就绪探针会伴随整个pod的生命周期 apiVersion: v1 kind: Pod metadata:labels:run: nginx1name: nginx1 spec:containers:- image: tomcat:8.0.52name: nginx1readinessProbe:tcpSocket:port: 8080initialDelaySeconds: 4periodSeconds: 2 启动探针 exec方式 apiVersion: v1 kind: Pod metadata:labels:run: tomcat3name: tomcat3 spec:containers:- image: tomcat:8.0.52name: tomcat3startupProbe:exec:command: [/usr/bin/test, -e, /etc/passwd]initialDelaySeconds: 4periodSeconds: 2 故障模拟 这里删除/etc/passwd heepGet方式 apiVersion: v1 kind: Pod metadata:labels:run: tomcat3name: tomcat3 spec:containers:- image: tomcat:8.0.52name: tomcat3startupProbe:httpGet:scheme: HTTPport: 8080path: /index.jspinitialDelaySeconds: 4periodSeconds: 2故障模拟 这里修改tomcat容器的端口为8081测试 启动探针(startupProbe)如果探测失败。pod的状态是notready状态。启动探针会重启。 总结 启动探针(startupProbe)如果探测失败。pod的状态是notready状态。启动探针会重启。 1、 在1个yaml文件中可以有多个探针。启动、存活、就绪都针对1个容器。 2、 启动探针的优先级是最高的。只有启动探针成功。后续的探针才会执行。 3、 启动探针成功之后。后续除非重启pod。否则不会再触发重启探针。 4、 在pod的生命周期中。伴随pod的一直存在、一直探测的是存活探针和就绪探针。 5、 在pod的生命周期当中后续的条件满足哪个探针的条件就会触发哪个探针。 6、 就绪探针如果不影响容器运行。status是running状态。这个时候不会重启。但是一旦容器退出就绪探针也会重启。 容器启动和退出时的动作 postStart postStart容器启动钩子。容器启动之后触发的条件 preStop preStop容器退出钩子。容器退出之后触发的条件 实验举例 apiVersion: v1 kind: Pod metadata:name: nginx2 spec:containers:- name: nginx2image: centos:7command: [/bin/bash, -c, sleep 3600]volumeMounts: #声明容器的挂载卷- name: test1 #定义挂载卷名称 #不同挂载卷的名称不能重复mountPath: /opt #定义挂载卷位置readOnly: false #设置当前目录是否可读写 #false表示可读可写lifecycle:postStart:exec:command: [/bin/bash, -c, echo hello from start /opt/123.txt ; sleep 10]preStop:exec:command: [/bin/bash, -c, echo hello from stop /opt/123.txt]volumes: #声明node节点上和容器内的挂载目录- name: test1 #挂载卷的名称要和挂载的容器内挂载卷名称保持一致hostPath: #指定和容器的挂载目录path: /opt/test #声明node节点上和容器内的/opt的挂载目录type: DirectoryOrCreate #如果在节点上目录不存在则自动创建该目录 启动和退出的作用 1、 启动可以自定义配置容器内的环境变量。 2、 通知机制。告诉用户容器启动完毕 3、 退出时可以执行自定义命令。删除或者生成一些必要的程序。自定义销毁方式以及自定义资源回收的方式。以及容器的退出等待时间。
http://www.hkea.cn/news/14438183/

相关文章:

  • 网站定位与功能分析wordpress固定连接404错误
  • 临沂手机建站模板大气网站背景图
  • 运城市做网站公司做网站一般用什么配置的电脑
  • wordpress的开发框架济南优化网站关键词
  • 建站一条龙北京国互网网站建设价格
  • 单页网站建站足球比赛直播回放
  • 上海营销网站建站公司汽修厂做网站有什么好处
  • 梁山专业网站建设长沙 外贸网站建设公司
  • 网站建设和seo是什么关系php源码怎么搭建网站
  • 网站建设 2015年11月wordpress后台登陆logo
  • 可免费投放广告的平台百度搜索关键词排名优化技术
  • 网站设计中的div是什么做金属的网站
  • 长沙住房建设部网站求做外宣图网站
  • wordpress防止盗链百度seo关键词优化电话
  • 邢台建设局网站上中标公示查询wordpress备案号修改
  • 仙居网站制作做网站在线支付系统多少钱?
  • 建设企业品牌网站免费建站系统开源
  • 福建省建设监理网官方网站郑州商务网站建设
  • php网站开发案例pdf做网站比较好的
  • 苏州做网站优化的公司php做原生直播网站
  • 网站收录服务为什么我的网站备案通过还是显示未备案
  • 国外推广网站有哪些张掖做网站
  • 什么网站的地图上海网站建设设计公司排名
  • 哈尔滨教育云平台网站建设一般网站空间多大
  • 网站管理助手4.1wordpress中的全站链接怎么改
  • 温州专业营销网站建设免费外网服务器ip地址
  • 北京建设公司的网站wordpress 图像滑块插件
  • 国内大型php网站建设南京营销型网站制作
  • dw怎么做网站跳转北京制作网站主页
  • 网站小视频怎么做hexo wordpress主题