news 2026/6/15 16:44:51

容器编排 - 了解K8s(pod, deployment,service,lable等概念)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
容器编排 - 了解K8s(pod, deployment,service,lable等概念)

文章目录

  • 1. K8s
    • 核心概念
    • pod介绍:
      • Side car模式:
    • deployment - 监控pod状态
      • 健康检查机制 - 探针(Liveness+Readness)
    • service - 网络请求配置
      • Lable - 标签 (k8s调度策略)
      • 容器编排体系介绍
  • 总结

✨✨✨学习的道路很枯燥,希望我们能并肩走下来!

编程真是一件很奇妙的东西。你只是浅尝辄止,那么只会觉得枯燥乏味,像对待任务似的应付它。但你如果深入探索,就会发现其中的奇妙,了解许多所不知道的原理。知识的力量让你沉醉,甘愿深陷其中并发现宝藏。



本文开始

1. K8s

对测试人员来说:当公司实际业务,足够大时,测试或部署需要操作多台机器,这时候涉及管理多个容器,就可以使用到k8s技术;

K8s: 可以看作一个容器集群
容器编排技术:简化对容器集群的操作

核心概念

管理容器需要了解其中的pod, deployment,service,lable,探针等概念;

pod介绍:

  1. pod: k8s最小调度单元-pod(k8s无法直接调度单个容器);K8S 中最基本的资源类型-POD;
  2. pod: 将一组业务相关的容器组合到一起的pod, 使用的container模式连接,使用的是共享同一个网络和目录;(pod中多个容器都挂载到共享目录上)
  3. 一个 POD 提供了多种机制,包括但不限于共享和限制目录,网络,进程,资源等机制来让容器之间的协作更加顺畅。

Side car模式:

  1. Side car模式:pod 里包含多个容器,pod中多个容器都挂载到共享目录上,一个业务主容器,其他是辅助容器;(一个pod中一般定义一个容器,也可以定义多个容器)

  2. SANBOX(pause):默认容器,提供基础pod网络环境,无法直接查看该容器,是一个空容器;

  3. 使用场景:side car模式,日志收集;故障注入测试,在pod中重新注入一个容器;

deployment - 监控pod状态

  1. deployment 是pod上层,用来管理和操作pod;

  2. deployment监控pod状态和维护指定数量(如:自动重建故障pod)

  3. deployment根据配置文件,维护pod状态;
    实现负载均衡和高可用模式的维护;

一个节点启动一个容器使用DeploySet类型

健康检查机制 - 探针(Liveness+Readness)

deployment如何判断pod健康状态?
使用健康检查机制-探针(Liveness + Readness)

  • Liveness:存活探针
    • 机制:每隔一段时间探查服务接口,如果探查失败,证明服务不健康,会杀掉pod,Deployment会在杀死pod并重建一个新的pod。service会把老pod的IP地址移除掉,把新pod的ipd地址加到ip池中。
    • 简述存活探针:定期检查服务端口,失败时直接杀死pod并重建,service会更新IP池(移除旧IP,添加新IP)
  • Readness:可读探针
    • 机制:每隔一段时间探查服务接口,如果探查失败,证明服务不健康,不会杀掉pod,只是service会把这个pod的ip地址移除掉,以便之后的流量不会再打入到这个不健康pod中。 之后探针会继续运行,一旦探针判断这个pod重新恢复了健康状态,就会把这个pod的ip加回来,继续发送流量
    • 简述可读探针:定期检查服务接口,失败时仅从Service IP池移除该Pod IP, 恢复健康后重新加入IP池;

service - 网络请求配置

  1. service:统一管理所有pod的网络请求,再进行分发网络请求给pod;

  2. 配置文件中会配置端口映射,是docker端口映射的扩展
    port: 集群内部访问端口
    targetPort - 容器端口
    nodePort: 外部访问端口

Lable - 标签 (k8s调度策略)

标签作用:

  1. 实现Service到Pod的请求分发
  2. Service通过Selector根据Label选择目标Pod
    【注】任何都能添加标签

容器编排体系介绍

简述:
1.当流量来临通过Service管理所有网络请求,通过Lable分发到Pod
2.通过deployment监控pod状态,使用的是探针liveness或readness进行


总结

✨✨✨各位读友,本篇分享到内容是否更好的帮助你理解,如果对你有帮助给个👍赞鼓励一下吧!!
🎉🎉🎉世上没有绝望的处境,只有对处境绝望的人。
🎉🎉🎉一遇挫折就灰心丧气的人,永远是个失败者。而一向努力奋斗,坚韧不拔的人会走向成功。
感谢每一位一起走到这的伙伴,我们可以一起交流进步!!!一起加油吧!!!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 10:36:15

vue 插槽详解

在 Vue.js 中,插槽(Slots) 是一种极为强大且灵活的内容分发机制。它允许父组件向子组件“注入”模板片段,从而实现组件的高度可复用性和布局的动态定制。通过插槽,我们可以将组件的结构与内容解耦,让子组件…

作者头像 李华
网站建设 2026/6/15 11:39:44

当15岁成为“红线”,法国社交平台新规落地

欧洲互联网监管的网口正在进一步收紧。当地时间2026年1月27日,法国国民议会正式批准了一项针对未成年人使用社交平台的严格禁令。根据《世界报》及相关媒体报道,该法规明确将“数字成年年龄”划定为15岁,旨在通过立法手段限制青少年对社交平台…

作者头像 李华
网站建设 2026/6/15 7:37:04

IDEA 提示“未配置SpringBoot配置注解处理器“的解决方案

在Spring Boot项目中引入Redis配置类时,出现以下警告提示: 原因分析 坦白说,这个警告 不是代码错误,并不会影响程序的运行。 Spring Boot 提供了一个名为 spring-boot-configuration-processor 的工具。 它的作用是在编译时扫…

作者头像 李华