k8s CSI 插件注册原理

news/2024/11/15 7:35:17/文章来源:https://www.cnblogs.com/misakivv/p/18391756

目录
  • 一、CSI Driver 如何注册到 kubelet 的
    • 1、启动 CSI Node Server
    • 2、启动 Node Driver Registrar
    • 3、Node Driver Registrar 获取 CSI Plugin 信息
    • 4、Kubelet 发现 Node Driver Registrar
    • 5、Kubelet 获取 Node Server 信息
    • 6、更新 Node 和 CSINode 对象
    • 7、通知注册状态

一、CSI Driver 如何注册到 kubelet 的

img

1、启动 CSI Node Server

  • CSI Node Server 启动,CSI plugin(CSI driver)创建 Unix Domain Socket (csi-driver.sock)。

  • 位置 : 通常位于 /var/lib/kubelet/plugins/<drivername.example.com>/csi.sock

  • 用途 : 用于后续 kubelet 与 CSI Node Server 之间的通信。

2、启动 Node Driver Registrar

  • Node Driver Registrar 启动,并创建 Unix Domain Socket (reg.sock)。

  • 位置 : 通常位于 /var/lib/kubelet/plugins_registry/<drivername.example.com>-reg.sock

  • 用途 : 用于 kubelet 与 Node Driver Registrar 之间的通信。

  • 实现逻辑 : Node Driver Registrar 实现 GetInfo 和 NotifyRegistrationStatus 方法。

3、Node Driver Registrar 获取 CSI Plugin 信息

  • Node Driver Registrar 连接到 CSI plugin(CSI driver) 的 Unix Domain Socket (csi-driver.sock)。

  • Node Driver Registrar 调用 Identity Server 的 GetPluginInfo 方法以获取 获取 CSI plugin 的 driver 名称。

  • 通信方式 : Unix Domain Socket 通过 gRPC 协议。

4、Kubelet 发现 Node Driver Registrar

  • Kubelet 的pluginManager 模块通过 Watcher 监控 /var/lib/kubelet/plugins_registry/ 目录。

  • Kubelet 发现 Node Driver Registrar 的 Unix Domain Socket (reg.sock)。

  • Kubelet 通过 Unix Domain Socket (reg.sock) 调用 GetInfo 方法以获取 csi plugin 类型、csi plugin 的 driver 名称、csi plugin 暴露的 grpc 服务 socket 地址以及 csi plugin 支持的版本。

  • 通信方式 : Unix Domain Socket 通过 gRPC 协议。

5、Kubelet 获取 Node Server 信息

  • Kubelet 使用从 Node Driver Registrar 获取的 socket 地址 (csi-driver.sock) 连接到 CSI Node Server。

  • Kubelet 调用 Node Server 的 NodeGetInfo 方法以获取 Node Server 的详细信息,如nodeID、存储卷最大挂载数、拓扑信息。

  • 通信方式 : Unix Domain Socket 通过 gRPC 协议。

6、更新 Node 和 CSINode 对象

  • Kubelet 根据从 Node Server 获取的信息更新 Node 节点的 Annotations。

  • Kubelet 创建或更新 CSINode 对象以记录 Node Server 支持的 CSI Plugin 信息。

7、通知注册状态

  • Kubelet 通过 Unix Domain Socket (reg.sock) 调用 Node-Driver-Registrar 的 NotifyRegistrationStatus 方法以通知 Node-driver-registrar 注册是否成功。

  • 通信方式 : Unix Domain Socket 通过 gRPC 协议。

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

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

相关文章

Switch 塞尔达传说旷野之息:中文本体+1.6.0+2DLC整合版+林可儿3.0.1 增强整合MOD

整合包复制到SD卡,同时解压MOD复制到atmosphere/contents,使用DBI安装成功。 安装后原来版本的存档还在。 本体+1.6.0+2DLC整合版XCI塞尔达传说:狂野之息/旷野之息 游戏变成了完全的开放地图,沙盒式的玩法拓展出了更多的内容,林克可以爬山、游泳, 而且游戏对应外观变化,玩…

冠军荣耀,角逐赛道,“移动云杯”等你来战!

因为热爱山海不远愿乘“移动云杯”之风滚烫筑梦选择站在斑斓之外鲜活在程序世界之内第三届“移动云杯”算力网络应用创新大赛目前已集结超3000位参赛伙伴冠军荣耀,角逐赛道,“移动云杯”等你来战!百万奖励荣耀角逐在不设限的思考中解锁万种新想象梦想前路已然开启怀抱创造与…

记录一次被拒cnvd

看这个各个大佬cnvd拿到手软,自己也想搞一个,记录一次被拒。 1:信息收集 访问网站地址2:通过页面观察信息收集发下登录入口3:查看登录界面js (app.bb916d00.js)4:进行js代码审计,发现对应代码5:继续向下审计,发现多个路径6:尝试拼接路径发现点击交投所示可以看见后…

vs查看当前项目的目录(./)

1.选中项目,右击点击属性 2.选中调试界面,然后查看工作目录

工地安全帽识别系统

工地安全帽识别系统运用智能视频采集和认真贯彻神经元网络技术性,根据分布在工地各处的监控终端传回的视频即时解析和预警信息,工地安全帽识别系统将 完成施工工地、石油化工、电力工程等高风险行业生产制造地区工作人员活动的即时解析和识别,判断施工作业人员是不是配戴帽子…

安全帽佩戴识别系统

安全帽佩戴识别系统的机理是应用人工智能技术即时剖析工作中現场的监控视频画面。假如现场作业人员无法依照规定佩戴安全帽或进行抽烟,安全帽佩戴识别系统将全自动传出报警。在提示管理负责人与此同时,系统全自动将时长、地址和相对应相片储存为违规依据。在人工智能的形势下…

vs的解决方案另存为

1.选中解决方案 2.选中文件,另存为

安全帽检测识别系统

安全帽检测识别系统是运用多感知融合多流水线处理技术对监控画面进行实时剖析识别。假如安全帽检测识别系统发觉施工作业现场工作人员未按要求配戴安全帽,系统将全自动发出预警声响。在提示管理者的与此同时,系统将全自动储存违规视频、现场地址和监控画面截图。在人工智能化…

工地安全帽智能识别检测系统

工地安全帽智能识别检测系统可以在大部分工程施工损害中充分发挥保障功效。但在具体运用中,不戴安全帽、临时性摘帽子等违纪行为常常产生,安全性工作人员不可以即时查验施工队伍是不是戴安全帽,多次开展工作人员查验,提升经济成本和用工成本费。工地安全帽智能识别检测系统…

安全帽ai自动识别算法

安全帽ai自动识别算法是人工智能与视觉系统算法技术性的结合。通过10年的工艺累积,SuiJi vision具备深层次的人工智能自主学习、图像识别、行为分析、发展趋势认知、风险预警等工作能力,安全帽ai自动识别算法可以根据认知情景动态性、即时解析和管理方法情景个人行为来预知未…

iptables 命令使用帮助总结

本文为博主原创,转载请注明出处: 1.iptables 命令帮助参数root@controller1:~# iptables --help iptables v1.6.1Usage: iptables -[ACD] chain rule-specification [options]iptables -I chain [rulenum] rule-specification [options]iptables -R chain rulenum rule-speci…