Kubernetes-StorageClass实践2
前提
你需要提前了解,hwameistor的组件生命周期管理:
1. LocalDiskManager
作用: LocalDiskManager
负责管理节点上的物理磁盘资源。它发现、监控和维护节点的本地磁盘信息,确保系统对可用磁盘资源的了解是最新的。
生命周期管理:
- 启动: 当
LocalDiskManager
启动时,它扫描节点上的所有可用磁盘,收集磁盘的元数据(例如大小、型号、状态等)。 - 运行中: 持续监控磁盘状态变化,更新磁盘元数据信息,并根据需要调整磁盘的可用性状态。
- 停止: 在组件停止时,需要确保停止对磁盘的监控,并正确释放资源。
2. LocalStorage
作用: LocalStorage
提供节点级别的存储资源管理。它负责将物理磁盘抽象为可用的存储卷,并执行卷的创建、删除、扩展等操作。
生命周期管理:
- 启动: 初始化本地存储卷的管理逻辑,确保节点上的物理磁盘可以被正确识别和使用。
- 运行中: 管理存储卷的生命周期,包括创建、删除、扩展、快照等操作,监控卷的健康状态。
- 停止: 停止管理存储卷,确保所有资源被安全释放。
3. Scheduler
作用: Scheduler
是一个自定义调度器插件,用于优化工作负载调度到具有特定存储要求的节点上。
生命周期管理:
- 启动: 注册自定义调度逻辑,将其集成到 Kubernetes 调度流程中。
- 运行中: 根据工作负载的存储需求和节点的存储资源情况,执行优化调度。
- 停止: 取消注册自定义调度逻辑,从 Kubernetes 调度器中安全移除。
4. AdmissionController
作用: AdmissionController
在工作负载被提交到 Kubernetes 集群时,对其进行预处理,确保其符合存储策略和要求。
生命周期管理:
- 启动: 注册到 Kubernetes 的准入控制器链中,准备对即将创建的资源进行预处理。
- 运行中: 拦截工作负载请求,根据存储策略进行验证和调整。
- 停止: 从准入控制器链中移除,停止对新请求的拦截和处理。
5. VolumeEvictor
作用: VolumeEvictor
负责在节点维护或失败时,将存储卷从受影响的节点上安全地迁移到其他节点。
生命周期管理:
- 启动: 初始化卷迁移逻辑,确保在节点发生问题时,卷可以被安全转移。
- 运行中: 持续监控节点状态和卷的健康状况,执行必要的迁移操作。
- 停止: 停止监控和迁移操作,确保当前迁移过程安全完成。
6. Exporter
作用: Exporter
收集和导出存储系统的监控指标,供外部监控系统(如 Prometheus)使用。
生命周期管理:
- 启动: 初始化监控指标的收集和导出逻辑。
- 运行中: 持续收集系统指标,提供给监控系统进行实时监控和分析。
- 停止: 停止指标的收集和导出,释放相关资源。
7. Apiserver
作用: Apiserver
提供对 HwameiStor 的管理接口,使用户能够通过 RESTful API 进行操作。
生命周期管理:
- 启动: 初始化 API 服务,注册可用的接口端点。
- 运行中: 处理用户请求,执行存储管理操作。
- 停止: 停止 API 服务,确保当前请求被正确处理完成。
目标
手速StorageClass用hwameistor的方式进行pvc申领动态制备PV
简要步骤
- 保证helm存在
- 添加 hwameistor-operator Helm Repo
- 通过hwameistor-operator部署HwameiStor
@&^%!*&@$实战开始
检查是否有空盘,至于hwameistor是否能再无空盘情况下中断安装后续再尝试
添加源
其实这个步骤是挺简单的,全都是自动创建,所以建议就是最后需要了解一下改csi驱动的特点。比如分布式以及自动搜盘。
helm repo add hwameistor-operator https://hwameistor.io/hwameistor-operator |
通过hwameistor-operator进行部署HwameiStor
helm install hwameistor-operator hwameistor-operator/hwameistor-operator -n hwameistor --create-namespace |
ps:HwameiStor默认会把所有干净的磁盘纳入到LSD的存储池里面,但是也可以预留,通过helm的values来设置
--set diskReserve\[0\].nodeName=node1 \ |
# -f diskReserve.yaml |
结束
理论来说,镜像拉取没有问题的话,就基本都可以了,HwameiStor就是这么的nb,可以自己做完所有事情。
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Kalyan的小书房!
評論