cephfs部署与使用

news2024/11/24 12:07:35

一、前言

   CephFS(Ceph File System)是Ceph存储解决方案中的一个组件,它提供了一个分布式文件系统,允许用户在多个节点上访问和管理文件数据,相当于是共享文件系统,可应用于k8s的存储,linux系统的共享存储等,需要额外部署mds组件服务

二、部署

cephfs需要用到两个存储池,一个用于存储文件数据,另一个用于存储元数据

数据池(Data Pool):数据池用于存储文件数据。这是实际存储用户文件内容的地方可以配置数据池的副本数和其他参数

元数据池(Metadata Pool):元数据池用于存储文件系统的元数据,如文件名、目录结构等。元数据的管理对于文件系统的性能至关重要。因此,将元数据存储在单独的池中有助于优化性能

创建数据存储池

ceph osd pool create cephfs_data 32 32
#其中的两个32分别指的是pg数量和pg副本数,pg副本数必须大于等于pg数
#根据官网的说明pg数量越多,数据分布的越均衡

创建元数据存储池

ceph osd pool create cephfs_metadata 32 32

查看创建的存储池信息

ceph osd pool ls detail

size 3:表示每个对象将被复制成 3 个副本

min_size 2:这表示至少需要 2 个副本在线才能满足数据的可用性需求

crush_rule 0:这指示了使用的 CRUSH 规则的编号。CRUSH 是 Ceph 使用的数据分布算法,用于确定数据在存储集群中的存放位置

object_hash rjenkins:这表示对象的哈希算法是 rjenkins

pg_num 32:这指示了存储池中 PG(Placement Group)的数量

pgp_num 32:这表示在每个 PG 中的副本数

autoscale_mode on:这表示存储池启用了自动扩展模式,即 PG 的数量会根据存储集群的大小自动调整

last_change 133:这是上次更改存储池配置的时间戳

flags hashpspool stripe_width 0:这是一些存储池的标志和参数设置,如是否使用 CRUSH 哈希算法、条带宽度等

application cephfs:这指示了存储池的应用场景,即该存储池用于支持 Ceph 文件系统(CephFS)

创建cephfs并命名为cephfs

ceph fs new cephfs cephfs_metadata cephfs_data
#指定之前创建的数据存储池和元数据存储池

创建mds

ceph orch apply mds cephfs --placement="3 ceph01 ceph02 ceph03"

查看cephfs

ceph fs ls
ceph fs status cephfs

 默认情况下,ceph只支持一个活跃的MDS,其他的作为备用MDS,所以会看到只有一个mds节点为active状态

至此cephfs部署完成

cephfs的使用

centos系统挂载使用

先安装ceph客户端

编辑yum源

vi /etc/yum.repos.d/ceph.repo 

[Ceph]
name=Ceph
baseurl=https://mirrors.aliyun.com/ceph/rpm-15.2.9/el7/x86_64/
enabled=1
gpgcheck=0

[Ceph-noarch]
name=Ceph noarch packages
baseurl=https://mirrors.aliyun.com/ceph/rpm-15.2.9/el7/noarch/
enabled=1
gpgcheck=0

安装eple解决依赖问题

yum -y install epel-release

安装ceph客户端

yum -y install ceph-common

在ceph01管理节点生成密钥

ceph-authtool -p /etc/ceph/ceph.client.admin.keyring > ceph.key

将密钥拷贝到客户端的ceph目录下

scp ceph.key 10.1.60.118@root:/etc/ceph
#客户端安装ceph时会自动生成ceph目录,这里我是使用另外的118主机作为客户端

 在客户端挂载cephfs文件系统

#创建挂载目录
mkdir /mnt/cephfs
#这里使用默认的admin用户,有需要可以自行创建其它用户
mount -t ceph -o name=admin,secretfile=/etc/ceph/ceph.key  10.1.60.126:6789:/ /mnt/cephfs

查看挂载的目录

df -Th

k8s使用cephfs作为存储

创建ceph目录

mkdir /opt/ceph && cd /opt/ceph

将ceph01管理节点生成的密钥拷贝到k8s节点上

k8s的所有工作节点也需要安装ceph-common

将ceph密钥进行base64编码

cat ceph.key |base64

编辑secret的yaml文件

vi secret.yaml

apiVersion: v1
kind: Secret
metadata:
  name: ceph-secret
type: "kubernetes.io/rbd"  #这里必须使用rbd类型
data:
  key: "QVFCenRndG1wVzJPQXhBQW5oMVFyRHlvT05Oa2RZR25tSHpYUmc9PQo="   #将生成的密钥编码填入

 编辑pv的yaml文件

vi pv.yaml

apiVersion: v1
kind: PersistentVolume
metadata:
  name: ceph-pv
spec:
  capacity:
    storage: 20Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: ceph
  cephfs:
    monitors: ["10.1.60.126:6789", "10.1.60.127:6789", "10.1.60.128:6789"]  #填写提供cephfs服务的节点
    path: /      #挂载目录,如果有创建其它目录也可以直接镜像挂载
    user: admin
    secretRef:
      name: ceph-secret   #使用secret进行验证

 编辑pvc的yaml文件

vi pvc.yaml

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: cephfs-pvc
  namespace: default
spec:
  accessModes: ["ReadWriteOnce"]
  storageClassName: ceph
  resources:
    requests:
      storage: 20Gi

执行yaml文件生成对应服务

kubectl apply -f secret.yaml

kubectl apply -f pv.yaml

kubectl apply -f pvc.yaml

查看pv和pvc是否正常

kubectl get pv,pvc

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(Java)数据结构——图(第六节)Dijkstra实现单源最短路径

前言 本博客是博主用于复习数据结构以及算法的博客,如果疏忽出现错误,还望各位指正。 Dijkstra算法(Dijkstra的实现原理) 迪杰斯特拉算法的实现,很像Prim,基本原理是: 我先找到距离集合路径…

Day93:云上攻防-云服务篇对象存储Bucket桶任意上传域名接管AccessKey泄漏

目录 云服务-对象存储-权限配置不当 权限控制-公共读或公共读写:可完整访问但不显示完整结构目录 权限控制-Bucket授权策略:设置ListObject显示完整结构目录 权限控制-Bucket公共读写权限:公共读写直接PUT文件任意上传 云服务-对象存储-…

秋招算法刷题7

20240410 1.接雨水 方法一,动态规划,时间复杂度O(n^2),空间复杂度O(n) public int trap(int[] height) { int nheight.length; if(n0){ return 0; } …

【报错】TypeError: Cannot read property ‘meta‘ of undefined

😈解决思路 首先这里很明显我们能看到是缺少该参数:meta。 但是经过查找后发现和该参数无关。 😈解决方法 后来我上网搜了下,网上的回答大部分偏向于是package.json这个文件中的tabBar.list数组对象只有一条的问题。 网上的大…

Nginx小册(博客笔记迁移)

nginx基础 1.常用命令 nginx -v #查看版本 ps -ef | grep nginx #输出linux进程、 nginx #启动nginx进程 nginx -s reload #重载配置 nginx -s stop # 停止进程 nginx -t # 检查是否有语法错误,以及配置文件地址2.nginx的配置文件 # 用户组的设置 windows上不生…

Llama2模型本地部署(Mac M1 16G)

环境准备 环境:Mac M1 16G、Conda Conda创建环境配置 使用Anaconda-Navigator创建python 3.8环境 切换到新建的conda环境: conda activate llama38 llama.cpp 找一个目录,下载llama.cpp git clone https://github.com/ggerganov/llama.…

Java后端平台的搭建

后端开发准备工作(配置Tomcat) 安装tomcat安装jdk 配置JAVA HONE(到java目录),path(到 bin 目录)解压Tomcat进入到bin目录,双击startup.bat启动tomcat访问 ip端口在conf目录的 server.xml配置端口 后端平台的搭建 创建Web项目(前提搭建好Tomcat配置) 注:一定要提前配置好Ma…

Android-NDK的linux交叉编译环境

NDK工具包下载 NDK 下载 | Android NDK | Android Developers https://github.com/android/ndk/wiki/Unsupported-Downloads 以android-ndk-r26c下载为例,下载后将压缩包解压至/usr目录下 CMakeLists编译选项设置 编译平台变量判断条件中增加一下android条件…

Okhttp全链路监控

目标: 1).监控网络请求的各个阶段 2)获取每一个阶段的耗时和性能,用于性能分析。包括dns解析,socket连接时间,tls连接时间,请求发送时间,服务器接口处理时间,应答传输时…

Windows搭建LightPicture图片管理网站结合内网穿透实现公网访问本地图片

文章目录 1.前言2. Lightpicture网站搭建2.1. Lightpicture下载和安装2.2. Lightpicture网页测试2.3.cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 现在的手机越来越先进,功能也越来越多,而手机…

数字证书在网络安全中的关键作用与日常应用

在当今数字化的时代,网络安全问题日益凸显,保护数据安全和用户隐私成为了人们关注的焦点。数字证书作为一种重要的网络安全技术,其在网络安全中扮演着关键的角色,并且在我们的日常生活中有着广泛的应用。现在给大家介绍简单介绍下…

数据结构——链表变形

数据结构——链表变形 带尾指针的链表尾插的变化 循环双向双向循环 我们在上次已经了解了单链表,今天我们来了解一下链表的各种变形,如果还没有了解过上面单链表的小伙伴可以点击这里: https://blog.csdn.net/qq_67693066/article/details/13…

避坑指南: “低代码开发平台”怎么选看这篇!附案例参考

从事TOB行业 9 年,深入体验过 10 余款低代码产品。 下面基于我的个人认知给大家讲一讲: 低代码开发平台该如何选?从哪些维度可以判断低代码平台适合你的企业?多家企业采用低代码平台的实践案例! 目前市面上有超过 2…

vue快速入门(十)v-bind动态属性绑定

注释很详细&#xff0c;直接上代码 上一篇 新增内容 图片切换逻辑动态绑定的完整写法与简写方法 源码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice…

IDM激活步骤-亲测可用

前言&#xff1a;我试了3种方法&#xff0c;仅以下方法激活成功&#xff0c;其他都是30天试用 使用步骤&#xff1a; 1.从官网下载IDM并安装&#xff1a;https://www.internetdownloadmanager.com/ 2.下载激活工具&#xff1a;https://wwif.lanzouw.com/iSY2N16s81xi &#…

2024年第十四届MathorCup数学应用挑战赛B题解题思路

B题https://mbd.pub/o/bread/ZZ6Wm5dx 问题1:对于附件I(Pre_test文件夹)给定的三张甲骨文原始拓片图 片进行图像预处理&#xff0c;提取图像特征&#xff0c;建立甲骨文图像预处理模型&#xff0c;实现对 甲骨文图像干扰元素的初步判别和处理。 针对问题1&#xff0c;对于附件…

备战蓝桥杯---刷杂题2

显然我们直接看前一半&#xff0c;然后我们按照斜行看&#xff0c;我们发现斜行是递增的&#xff0c;而同一行从左向右也是递增的&#xff0c;因此我们可以直接二分&#xff0c;同时我们发现对称轴的数为Ck,2k. 我们从16斜行枚举即可 #include<bits/stdc.h> using name…

文心一言 VS 讯飞星火 VS chatgpt (235)-- 算法导论17.2 3题

三、假定我们不仅对计数器进行增 1 操作&#xff0c;还会进行置 0 操作(即将所有位复位)。设检测或修改一个位的时间为 Θ(1) &#xff0c;说明如何用一个位数组来实现计数器&#xff0c;使得对一个初值为 0 的计数器执行一个由任意 n 个 INCREMENT 和 RESET 操作组成的序列花费…

【每日练习】二叉树

⭐ 作者&#xff1a;小胡_不糊涂 &#x1f331; 作者主页&#xff1a;小胡_不糊涂的个人主页 &#x1f4c0; 收录专栏&#xff1a;二叉树 &#x1f496; 持续更文&#xff0c;关注博主少走弯路&#xff0c;谢谢大家支持 &#x1f496; 文章目录 一、100. 相同的树1. 题目简介2.…

程序员需要考证吗?程序员考证真的有用吗?

程序员需要考证吗?程序员考证真的有用吗? 软考简介 软考&#xff0c;即软件设计师考试&#xff0c;是由中国人事部主管的一项专业技术资格考试。通过软考&#xff0c;考生可以获得软件设计师等级证书&#xff0c;这是国家认可的专业技术资格证书之一。软考作为我国软件行业的…