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

【K8S】K8S基础概念

一、Pod

Pod 是 k8s 中集群部署应用和服务的最小单元,一个 pod 中可以部署多个容器。这些容器共享网络地址与文件系统,可以理解为共享上下文。

1.1 Pod工作负载实现

工作负载资源的控制器通常使用 Pod 模板(Pod Template) 来替你创建 Pod 并管理它们。

1.1.1 Job工作负载

Job 表示一次性任务,运行完成后就会停止。Job 会创建一个或者多个 Pod,并将继续重试 Pod 的执行,直到指定数量的 Pod 成功终止。 随着 Pod 成功结束,Job 跟踪记录成功完成的 Pod 个数。 当数量达到指定的成功个数阈值时,任务(即 Job)结束。 删除 Job 的操作会清除所创建的全部 Pod。 挂起 Job 的操作会删除 Job 的所有活跃 Pod,直到 Job 被再次恢复执行。

1.1.2 StatefulSet工作负载

StatefulSet 运行一组 Pod,并为每个 Pod 保留一个稳定的标识。 这可用于管理需要持久化存储或稳定、唯一网络标识的应用。

1.2 Pod的卷

1.2.1 configMap

configMap以readOnly的模式挂载。

1.2.2 downwardAPI

数据以纯文本格式的只读文件形式存在

1.2.3 emptyDir

在Pod被指派到某节点时此卷会被创建。容器崩溃并不会导致Pod被移除,因此容器崩溃期间emptyDir卷中的数据是安全的。

1.2.4 fc光纤通道

fc卷允许将现有的光纤通道块存储卷挂载到Pod中。

1.3 Pod生命周期

Pod的容器状态:Waiting(等待)、Running(运行中)、Terminated(终止)。
Pod调度就绪态: Pod一旦创建就被认为准备好进行调度。实际情况中,某些Pod可能会长时间处于缺少必要资源的状态,这些Pod实际以一种不必要的方式扰乱调度器,指定schedulingGates控制Pod何时准备好被纳入考量进行调度。

1.4静态Pod

由节点上kubelet守护进程管理,不需要API服务器看到,kubelet直接监控静态Pod,并在其失效时重启之。场景是适用于自托管的控制面。

二、 K8S组件

在这里插入图片描述

2.1 控制平面组件

kube-apiserver:公开 Kubernetes HTTP API 的核心组件服务器。
etcd:具备一致性和高可用性的键值存储,用于所有 API 服务器的数据存储。
kube-scheduler:查找尚未绑定到节点的 Pod,并将每个 Pod 分配给合适的节点。
kube-controller-manager:运行控制器来实现 Kubernetes API 行为。

2.2 Node组件

kubelet:确保 Pod 及其容器正常运行。
kube-proxy:维护节点上的网络规则以实现 Service 的功能。

三、 边车容器

使用initContainers进行标识。

相关文章:

  • 第三届黄河流域网安技能挑战赛复现
  • vscode ssh远程服务端设置
  • 新版Chrome浏览器加载eDrawings 3D Viewer控件网页查看DWG、DXF
  • JSON解析性能优化全攻略:协程调度器选择与线程池饥饿解决方案
  • Baklib赋能企业知识智联体系
  • AD-PCB--AD20软件安装及中英文切换 DAY 2
  • QML之Canvas
  • Bootloader 与 U-Boot 全解析
  • getline()跳过输入
  • 33. 自动化测试开发之使用mysql异步连接池实现mysql数据库操作
  • springBoot项目测试时浏览器返回406问题解决方案
  • uniapp vue3 鸿蒙支持的 HTML5+接口
  • vue + ant-design + xlsx 实现Excel自定义模板导入功能
  • 【排序算法】快速排序详解--附详细流程代码
  • .NET用C#设置Excel单元格和工作表的背景
  • 如何改变this的指向
  • 3.19 国际工程投标报价
  • unity实现wasd键控制汽车漫游
  • 4.2.1、mysql进阶——存储过程基本语法,变量
  • RT Thread 基于N32G457实现UART V2驱动实现
  • 企业内部的网站系统/美国站外推广网站
  • 网站的做网站公司/网络营销推广的基本手段
  • 网站宣传软文/推广营销大的公司
  • 我的电脑做网站服务器/厦门百度seo排名
  • 环保网站可以做哪些内容/企业网站推广效果指标分析
  • wordpress 无法安装/分析网站推广和优化的原因