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

第十九章: Kubernetes - Rook Ceph 云原生存储

第十九章: Kubernetes - Rook Ceph 云原生存储

19.1 搭建 Rook Ceph 集群

1. 部署 Rook

rook git 点击链接进行下载,上传到 k8s master 节点

root@k8s-master:/opt/rook-master# ll -d */drwxr-xr-x12root root4096Feb716:09 Documentation// drwxr-xr-x7root root4096Feb716:09 build// drwxr-xr-x3root root4096Feb716:09 cmd// drwxr-xr-x5root root4096Feb716:09 deploy// drwxr-xr-x4root root4096Feb716:09 design// drwxr-xr-x3root root4096Feb716:09 images// drwxr-xr-x9root root4096Feb716:09 pkg// drwxr-xr-x7root root4096Feb716:09 tests//

安装 Rook Operator

cdrook-naster/deploy/examples kubectl create-fcrds.yaml-fcommon.yaml-fcsi-operator.yaml-foperator.yaml

2. 部署 Ceph 集群

编辑cluster.yaml配置 ceph 节点个数,以及指定存储磁盘

指定存储磁盘,事先给k8s-node2节点新增了一个sdb10GB 的新磁盘(必须是空的)

手动拉取 ceph 组件镜像(node 节点)

# 拉取ceph组件镜像dockerpull m.daocloud.io/registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.15.0dockerpull m.daocloud.io/registry.k8s.io/sig-storage/csi-provisioner:v6.0.0dockerpull m.daocloud.io/registry.k8s.io/sig-storage/csi-attacher:v4.10.0dockerpull m.daocloud.io/registry.k8s.io/sig-storage/csi-snapshotter:v8.4.0dockerpull m.daocloud.io/registry.k8s.io/sig-storage/csi-attacher:v4.10.0dockerpull m.daocloud.io/registry.k8s.io/sig-storage/csi-resizer:v2.0.0# 还原标记dockertag m.daocloud.io/registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.15.0 registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.15.0dockertag m.daocloud.io/registry.k8s.io/sig-storage/csi-provisioner:v6.0.0 registry.k8s.io/sig-storage/csi-provisioner:v6.0.0dockertag m.daocloud.io/registry.k8s.io/sig-storage/csi-attacher:v4.10.0 registry.k8s.io/sig-storage/csi-attacher:v4.10.0dockertag m.daocloud.io/registry.k8s.io/sig-storage/csi-snapshotter:v8.4.0 registry.k8s.io/sig-storage/csi-snapshotter:v8.4.0dockertag m.daocloud.io/registry.k8s.io/sig-storage/csi-attacher:v4.10.0 registry.k8s.io/sig-storage/csi-attacher:v4.10.0dockertag m.daocloud.io/registry.k8s.io/sig-storage/csi-resizer:v2.0.0 registry.k8s.io/sig-storage/csi-resizer:v2.0.0

部署 ceph 集群

kubectl create-fcluster.yaml

查看部署状态

部署 ceph toolbox 工具

# 部署kubectl create-fdeploy/examples/toolbox.yaml# 查看部署状态kubectl-nrook-cephexec-itdeploy/rook-ceph-tools --bash# 进入工具,执行指令kubectl-nrook-cephexec-itdeploy/rook-ceph-tools --bashceph status ceph osd status cephdfradosdf

3. Ceph Dashboard 外部访问

创建一个NodePort类型的Service暴露服务:

apiVersion:v1kind:Servicemetadata:labels:app:rook-ceph-mgrrook_cluster:rook-cephname:rook-ceph-mgr-dashboard-svcnamespace:rook-cephspec:ports:-name:https-dashboardport:8443protocol:TCPtargetPort:8443nodePort:30001# 选择一个你希望暴露到外部的端口selector:app:rook-ceph-mgrmgr_role:activerook_cluster:rook-cephtype:NodePort

或使用 Rancher 创建一个NodePort类型的Service




使用浏览器访问端口,即可进入 Cpeh Dashboard 页面,

# 获取控制面板登录密码,账号为:adminkubectl-nrook-ceph get secret rook-ceph-dashboard-password-ojsonpath="{['data']['password']}"|base64--decode&&echo

19.2 Ceph 块存储的使用

块存储一般用于一个Pod挂载一块存储使用,相当于一个服务器新挂了一个盘,只给一个应用使用。
Ceph 块存储官方教程

1. 创建块存储池和 StorageClass

apiVersion:ceph.rook.io/v1kind:CephBlockPoolmetadata:name:replicapoolnamespace:rook-cephspec:failureDomain:hostreplicated:size:1# 生产环境最少为3,且要小于等于osd的数量
root@k8s-master:/opt/rook-master# kubectl apply -f cephblockpool.yamlcephblockpool.ceph.rook.io/replicapool created root@k8s-master:/opt/rook-master# kubectl get cephblockpool -n rook-cephNAME PHASE TYPE FAILUREDOMAIN AGE replicapool Ready Replicatedhost8s

StorageClassyaml 配置(StorageClass没有 namespace 隔离性)

apiVersion:storage.k8s.io/v1kind
http://www.jsqmd.com/news/459412/

相关文章:

  • 阿里云 H5 一键登录接入实战:前后端完整实现
  • GE IC693PBS201从站通信模块
  • 第一篇文章
  • Spring AI 第 8 篇 ChatMemory 详解:如何让模型记住你的每一次对话
  • 鸿蒙APP开发经验分享:HarmonyOS Location Kit 端侧与云侧双方案落地指南
  • OpenClaw零基础教程:从一键部署,到7*24小时不间断运行!
  • APN(Access Point Name)详解:从基础原理到实际应用场景
  • 数据资产管理——172页详解数据资产管理深度解读【附全文阅读】
  • 用OpenClaw白嫖世界顶级模型,一个月省了2万块!
  • 嵌入式八股文学习-自学长期更新-2026
  • GitHub Browser-Use 部署踩坑实录:从失败到成功的曲折历程
  • Tower I3C Host Adapter 使用范例 (19)
  • 轻量级AI服务落地实战:Qwen2.5-0.5B-Instruct私有化部署与性能调优指南
  • 8集自然纪录片--Our Planet
  • “养虾”热潮的AB面:大厂抢滩、造富神话和万元账单
  • Java基础面试题之===集合篇
  • LoRaWAN协议-MAC帧加密与校验机制深度解析
  • OpenClaw大龙虾又爱又恨?揭秘两大开源神器,让你的AI智能体智商暴增、Token消耗狂降96%!
  • 【Apple】苹果新品盘点
  • “养龙虾”选模型指南:从OpenRouter榜单看AI Agent选型
  • Java基础面试题之===高并发
  • Windows Hello 登录功能 (简单示例)
  • 鸿蒙 架构摘要2-arkui源码追踪
  • (100分)- 攀登者1(Java JS Python C)
  • OBS美颜设置在哪里打开?
  • 大模型落地应用:揭秘国内头部实践,抢占AI先机!
  • 高并发计数性能提升26倍!LongAdder如何用分段CAS颠覆AtomicLong?
  • 中科大少年班记(2026年3月)
  • Redis学习日志--不断学习,不断补充
  • 笔记:使用yaml文件进行K8s服务部署:资源控制器篇