CSI 插件如何注册到 kubelet 的

2024-08-27 10:28
文章标签 注册 插件 csi kubelet

本文主要是介绍CSI 插件如何注册到 kubelet 的,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、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 协议。

这篇关于CSI 插件如何注册到 kubelet 的的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1111402

相关文章

Spring Boot Maven 插件如何构建可执行 JAR 的核心配置

《SpringBootMaven插件如何构建可执行JAR的核心配置》SpringBoot核心Maven插件,用于生成可执行JAR/WAR,内置服务器简化部署,支持热部署、多环境配置及依赖管理... 目录前言一、插件的核心功能与目标1.1 插件的定位1.2 插件的 Goals(目标)1.3 插件定位1.4 核

SpringBoot整合Dubbo+ZK注册失败的坑及解决

《SpringBoot整合Dubbo+ZK注册失败的坑及解决》使用Dubbo框架时,需在公共pom添加依赖,启动类加@EnableDubbo,实现类用@DubboService替代@Service,配... 目录1.先看下公共的pom(maven创建的pom工程)2.启动类上加@EnableDubbo3.实

java使用protobuf-maven-plugin的插件编译proto文件详解

《java使用protobuf-maven-plugin的插件编译proto文件详解》:本文主要介绍java使用protobuf-maven-plugin的插件编译proto文件,具有很好的参考价... 目录protobuf文件作为数据传输和存储的协议主要介绍在Java使用maven编译proto文件的插件

一文详解SpringBoot中控制器的动态注册与卸载

《一文详解SpringBoot中控制器的动态注册与卸载》在项目开发中,通过动态注册和卸载控制器功能,可以根据业务场景和项目需要实现功能的动态增加、删除,提高系统的灵活性和可扩展性,下面我们就来看看Sp... 目录项目结构1. 创建 Spring Boot 启动类2. 创建一个测试控制器3. 创建动态控制器注

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

CnPlugin是PL/SQL Developer工具插件使用教程

《CnPlugin是PL/SQLDeveloper工具插件使用教程》:本文主要介绍CnPlugin是PL/SQLDeveloper工具插件使用教程,具有很好的参考价值,希望对大家有所帮助,如有错... 目录PL/SQL Developer工具插件使用安装拷贝文件配置总结PL/SQL Developer工具插

Nacos注册中心和配置中心的底层原理全面解读

《Nacos注册中心和配置中心的底层原理全面解读》:本文主要介绍Nacos注册中心和配置中心的底层原理的全面解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录临时实例和永久实例为什么 Nacos 要将服务实例分为临时实例和永久实例?1.x 版本和2.x版本的区别

maven中的maven-antrun-plugin插件示例详解

《maven中的maven-antrun-plugin插件示例详解》maven-antrun-plugin是Maven生态中一个强大的工具,尤其适合需要复用Ant脚本或实现复杂构建逻辑的场景... 目录1. 核心功能2. 典型使用场景3. 配置示例4. 关键配置项5. 优缺点分析6. 最佳实践7. 常见问题

MyBatis分页插件PageHelper深度解析与实践指南

《MyBatis分页插件PageHelper深度解析与实践指南》在数据库操作中,分页查询是最常见的需求之一,传统的分页方式通常有两种内存分页和SQL分页,MyBatis作为优秀的ORM框架,本身并未提... 目录1. 为什么需要分页插件?2. PageHelper简介3. PageHelper集成与配置3.

Maven 插件配置分层架构深度解析

《Maven插件配置分层架构深度解析》:本文主要介绍Maven插件配置分层架构深度解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Maven 插件配置分层架构深度解析引言:当构建逻辑遇上复杂配置第一章 Maven插件配置的三重境界1.1 插件配置的拓扑