Centos7 k8s 集群 - Rook Ceph 安装

环境准备

基础环境

系统名称操作系统CPU内存硬盘Kubernete 版本Docker版本IP
masterCentos74c4gsdb 20G1.17.023.0.1192.168.1.128
node01Centos74c4gsdb 20G1.17.023.0.1192.168.1.129
node02Centos74c4gsdb 20G1.17.023.0.1192.168.1.130
node03Centos74c4gsdb 20G1.17.023.0.1192.168.1.131

所安装rook/ceph版本:

ceph:v15.2.11 / rook: 1.6.3

硬盘创建

rook的版本大于1.3,无法使用目录创建集群,要使用单独的裸盘进行创建,也就是创建一个新的磁盘,挂载到宿主机,不进行格式化,直接使用即可

sda
├─sda1          xfs                         2a65c467-96ee-406c-b275-2b299f95e3c7   /boot
├─sda2          LVM2_member                 jfvy2n-75dR-P0q4-pVAq-Q64a-Rud3-E1Yf7o
│ └─centos-root xfs                         7aae42ae-f917-43c4-8356-93eaf9e5538d   /
└─sda3
sdb

直接添加一个sdb硬盘,不需要格式化

lvm2 安装

#确认安装lvm2
yum install lvm2 -y
#启用rbd模块
modprobe rbd
cat > /etc/rc.sysinit << EOF
#!/bin/bash
for file in /etc/sysconfig/modules/*.modules
do[ -x \$file ] && \$file
done
EOF
cat > /etc/sysconfig/modules/rbd.modules << EOF
modprobe rbd
EOF
chmod 755 /etc/sysconfig/modules/rbd.modules
lsmod |grep rbd

下载Rook

git clone --single-branch --branch v1.6.3 https://github.com/rook/rook.git

Rook operator.yaml 配置修改

cd rook/cluster/examples/kubernetes/ceph
vim operator.yaml

修改Rook CSI镜像地址,原本的地址可能是gcr的镜像,但是gcr的镜像无法被国内访问,所以需要同步gcr的镜像到阿里云镜像仓库

ROOK_CSI_REGISTRAR_IMAGE: "registry.cn-beijing.aliyuncs.com/dotbalo/csi-node-driver-registrar:v2.0.1"
ROOK_CSI_RESIZER_IMAGE: "registry.cn-beijing.aliyuncs.com/dotbalo/csi-resizer:v1.0.1"
ROOK_CSI_PROVISIONER_IMAGE: "registry.cn-beijing.aliyuncs.com/dotbalo/csi-provisioner:v2.0.4"
ROOK_CSI_SNAPSHOTTER_IMAGE: "registry.cn-beijing.aliyuncs.com/dotbalo/csi-snapshotter:v4.0.0"
ROOK_CSI_ATTACHER_IMAGE: "registry.cn-beijing.aliyuncs.com/dotbalo/csi-attacher:v3.0.2"

Rook cluster.yaml 配置修改

vim cluster.yaml
配置osd节点

第一次修改

# 改为false,并非使用所有节点所有磁盘作为osd
useAllNodes: false
useAllDevices: false

第二处修改

nodes:- name: "node01"deviceFilter: "sdb"- name: "node02"deviceFilter: "sdb"- name: "node03"deviceFilter: "sdb"

部署系统

部署ROOK

cd cluster/examples/kubernetes/ceph
kubectl create -f crds.yaml -f common.yaml -f operator.yaml

等待容器启动,只有都running才能进行下一步

rook-ceph-operator-7d95477f88-fs8ck                1/1     Running     0          92m
rook-discover-6r9ld                                1/1     Running     0          92m
rook-discover-86d88                                1/1     Running     0          92m
rook-discover-mwxx6                                1/1     Running     0          92m

创建ceph集群

kubectl create -f cluster.yaml

创建完成后,可以查看pod的状态:

[root@master ceph]# kubectl -n rook-ceph get pod
NAME                                               READY   STATUS      RESTARTS   AGE
csi-cephfsplugin-26rpm                             3/3     Running     0          93m
csi-cephfsplugin-jhpk6                             3/3     Running     0          93m
csi-cephfsplugin-kmxb4                             3/3     Running     0          93m
csi-cephfsplugin-provisioner-5dd4c579b5-cxzm5      6/6     Running     0          93m
csi-cephfsplugin-provisioner-5dd4c579b5-ljs68      6/6     Running     0          93m
csi-rbdplugin-hlvtn                                3/3     Running     0          93m
csi-rbdplugin-jzs8p                                3/3     Running     0          93m
csi-rbdplugin-nnf9g                                3/3     Running     0          93m
csi-rbdplugin-provisioner-7d4bcdf9d6-h62x4         6/6     Running     0          93m
csi-rbdplugin-provisioner-7d4bcdf9d6-s5twx         6/6     Running     0          93m
rook-ceph-crashcollector-node01-676f5f55d8-fzfdx   1/1     Running     0          92m
rook-ceph-crashcollector-node02-54f576478c-qn2j8   1/1     Running     0          91m
rook-ceph-crashcollector-node03-655547d9c4-nlqhd   1/1     Running     0          92m
rook-ceph-mgr-a-77c8c67445-w4z2h                   1/1     Running     1          92m
rook-ceph-mon-a-68f87b6bb9-twcm5                   1/1     Running     0          93m
rook-ceph-mon-b-77bcd7474d-r5cw6                   1/1     Running     0          93m
rook-ceph-mon-c-66847558c6-6dx8r                   1/1     Running     0          92m
rook-ceph-operator-7d95477f88-fs8ck                1/1     Running     0          94m
rook-ceph-osd-0-7885684746-lhgkr                   1/1     Running     0          92m
rook-ceph-osd-1-9f75d7555-b25p2                    1/1     Running     0          91m
rook-ceph-osd-2-58ff6c6c58-kcbjr                   1/1     Running     7          90m
rook-ceph-osd-prepare-node01-shdt2                 0/1     Completed   0          65m
rook-ceph-osd-prepare-node02-774pm                 0/1     Completed   0          65m
rook-ceph-osd-prepare-node03-8mh4j                 0/1     Completed   0          65m
rook-ceph-tools-5f666999d8-dhwsw                   1/1     Running     0          87m
rook-discover-6r9ld                                1/1     Running     0          94m
rook-discover-86d88                                1/1     Running     0          94m
rook-discover-mwxx6                                1/1     Running     0          94m

查看集群部署进度

- 实时查看pod创建进度
kubectl get pod -n rook-ceph -w- 实时查看集群创建进度
kubectl get cephcluster -n rook-ceph rook-ceph -w- 详细描述
kubectl describe cephcluster -n rook-ceph rook-ceph

待osd-x的容器启动,表示安装成功
在这里插入图片描述

安装ceph 客户端工具

Ceph

kubectl  create -f toolbox.yaml -n rook-ceph

待容器Running后,即可执行相关命令

[root@rook-ceph-tools-5f666999d8-dhwsw /]# ceph statuscluster:id:     8ff792cf-570f-4fc7-8300-682d82bc79a9health: HEALTH_WARNmons are allowing insecure global_id reclaimclock skew detected on mon.c93 slow ops, oldest one blocked for 503 sec, mon.c has slow opsservices:mon: 3 daemons, quorum a,b,c (age 94m)mgr: a(active, since 92m)osd: 3 osds: 3 up (since 15m), 3 in (since 78m)data:pools:   1 pools, 1 pgsobjects: 0 objects, 0 Busage:   3.0 GiB used, 57 GiB / 60 GiB availpgs:     1 active+clean

删除ROOK-CEPH

删除Operator 和相关的资源

kubectl delete -f operator.yaml
kubectl delete -f common.yaml
kubectl delete -f crds.yaml
kubectl delete -f cluster.yaml

删除节点机器上的数据

rm -rf /var/lib/rook

擦除节点机器硬盘上的数据

/dev/mapper/ceph-*
dmsetup ls
dmsetup remove_all
dd if=/dev/zero of=/dev/sdb bs=512k count=1
wipefs -af /dev/sdb

参考资料

  • kubernetes上的分布式存储集群搭建(Rook/ceph)
  • Kubernetes上使用Rook部署Ceph系统并提供PV服务
  • Kubernetes 集群分布式存储插件 Rook Ceph部署
  • k8s集群中安装rook-ceph
  • k8s集群中部署rook+ceph云原生存储

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

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

相关文章

oracle分区表迁移后空间占用增大

检查分区段隐含参数&#xff1a; select a.KSPPINM "Parameter", c.ksppstvl "Instance Value", ksppdesc "Desc" from sys.x$ksppi a, sys.x$ksppcv b, sys.x$ksppsv c where a.indx b.indx and a.indx c.indx and substr(ksppinm,1,1)_ and…

MySQL——全文检索

不是所有的数据表都支持全文检索 MySQL支持多种底层数据库引擎&#xff0c;但是并非所有的引擎支持全文检索 &#xff0c;目前最常用引擎是是MyISAM和InnoDB&#xff1b;前者支持全文检索&#xff0c;后者不支持。 booolean模式操作符 实验&#xff1a; 表productnotes &…

[Kubernetes[K8S]集群:Slaver从节点初始化和Join]:添加到主节点集群内

文章目录 操作流程&#xff1a;上篇主节初始化地址&#xff1a;前置&#xff1a;Docker和K8S安装版本匹配查看0.1&#xff1a;安装指定docker版本 **[1 — 8] ** [ 这些步骤主从节点前置操作一样的 ]一&#xff1a;主节点操作 查看主机域名->编辑域名->域名配置二&#x…

【论文阅读】Digging Into Self-Supervised Monocular Depth Estimation

论文&#xff1a;https://arxiv.org/pdf/1806.01260.pdf 代码&#xff1a;https://github.com/nianticlabs/monodepth2 Q: 这篇论文试图解决什么问题&#xff1f; A: 这篇论文试图解决的问题是如何提高仅使用单目图像进行深度估计的性能。具体来说&#xff0c;它关注的是如何…

钉钉和金蝶云星空接口对接实战

钉钉和金蝶云星空接口对接实战 对接源平台:钉钉 钉钉&#xff08;DingTalk&#xff09;是阿里巴巴集团打造的企业级智能移动办公平台&#xff0c;是数字经济时代的企业组织协同办公和应用开发平台。钉钉将IM即时沟通、钉钉文档、钉闪会、钉盘、Teambition、OA审批、智能人事、钉…

怎么开发一个预约小程序_一键预约新体验

预约小程序&#xff0c;让生活更便捷——轻松掌握未来&#xff0c;一键预约新体验 在快节奏的现代生活中&#xff0c;我们总是在不断地奔波&#xff0c;为了工作、为了生活&#xff0c;不停地忙碌着。然而&#xff0c;在这繁忙的生活中&#xff0c;我们是否曾想过如何更加高效…

Java中的TCP通信

TCP通信 TCP通信Socket客户端ServerSocket服务端 例子&#xff1a;一发一收例子&#xff1a;多发多收异常捕获 例子&#xff1a;服务器与多个客户端同时通信多客户端通信架构服务端代码ServerReaderThread 服务端读数据线程 TCP通信 特点&#xff1a;面向连接、可靠通信 通信双…

垃圾焚烧发电厂自动化解决方案

垃圾焚烧发电厂自动化解决方案 中控作为国内著名自动化产品供应商&#xff0c;已经为多家垃圾焚烧发电企业从控制层到管理层提供了完整的解决方案&#xff0c;包括垃圾进厂计量&#xff0c;垃圾预处理&#xff0c;垃圾焚烧炉&#xff0c;汽机监控&#xff0c;厂用电与电气系统监…

AWS游戏全球智能翻译,助力企业出海

随着全球数字化时代的到来&#xff0c;游戏行业已经成为跨越国界、语言和文化的强大力量。然而&#xff0c;要将游戏产品成功推向全球市场并确保用户体验的流畅与愉悦&#xff0c;语言障碍却是一道不可忽视的挑战。在这个多元化的世界中&#xff0c;如何解决语言障碍&#xff0…

故障诊断 | Matlab实现基于小波包结合卷积神经网络DWT-CNN实现电缆故障诊断算法

故障诊断 | Matlab实现基于小波包结合卷积神经网络DWT-CNN实现电缆故障诊断算法 目录 故障诊断 | Matlab实现基于小波包结合卷积神经网络DWT-CNN实现电缆故障诊断算法分类效果基本介绍程序设计参考资料 分类效果 基本介绍 1.Matlab实现基于小波包结合卷积神经网络DWT-CNN实现电…

手机银行客户端框架之EMAS介绍

EMAS简介 阿里巴巴应用研发平台&#xff08;Enterprise Mobile Application Studio&#xff0c;简称EMAS&#xff09;&#xff0c;是面向全端场景&#xff08;移动App、H5应用、小程序、Web应用、PC应用等&#xff09;的一站式应用研发平台。EMAS基于广泛的云原生技术&#xf…

全新华为MateBook X Pro发布,将Ultra9放入980g超轻薄机身

2024年4月11日&#xff0c;在华为鸿蒙生态春季沟通会上全新的华为MateBook X Pro正式发布。该机以美学设计、创新科技以及智慧体验&#xff0c;追求重新定义Pro、重新定义旗舰&#xff0c;将颠覆消费者对传统轻薄本的认知。 华为MateBook X Pro追求极致轻薄与强大性能的完美结合…