首页 > 其他分享 >cephfs的部署和使用

cephfs的部署和使用

时间:2023-03-26 11:33:11浏览次数:52  
标签:deploy 部署 ceph 使用 cephadmin mds cephfs pool

 cephfs使用

  ceph FS 即 ceph filesystem,可以实现文件系统共享功能(POSIX 标准), 客户端通过 ceph协议挂载并使用 ceph 集群作为数据存储服务器,https://docs.ceph.com/en/quincy/cephfs/

  Ceph FS 需要运行 Meta Data Services(MDS)服务,其守护进程为 ceph-mds,ceph-mds进程管理与 cephFS 上存储的文件相关的元数据,并协调对 ceph 存储集群的访问。

  在 linux 系统使用 ls 等操作查看某个目录下的文件的时候,会有保存在磁盘上的分区表记录文件的名称、创建日期、大小、inode 及存储位置等元数据信息,在 cephfs 由于数据是被打散为若干个离散的 object 进行分布式存储,因此并没有统一保存文件的元数据,而且将文件的元数据保存到一个单独的存储出 matedata pool,但是客户端并不能直接访问matedata pool 中的元数据信息,而是在读写数的时候有 MDS(matadata server)进行处理,读数据的时候由 MDS从 matedata pool加载元数据然后缓存在内存(用于后期快速响应其它客户端的请求)并返回给客户端,写数据的时候有 MDS 缓存在内存并同步到 matedata pool。

 

  cephfs 的 mds 的数据结构类似于 linux 系统的根形目录结构及 nginx 中的缓存目录分层一样。

 

回到顶部

  部署 MDS 服务

  在指定的 ceph-mds 服务器部署 ceph-mds 服务,可以和其它服务器混用(如 ceph-mon、ceph-mgr)

  Centos

  [root@ceph-mgr1 ~]# yum install ceph-mds -y

 

  Ubuntu

  root@ceph-mgr1:~# apt-cache madison ceph-mds
  ceph-mds | 16.2.10-1bionic | https://mirrors.tuna.tsinghua.edu.cn/ceph/debian-pacific bionic/main amd64 Packages
  ceph-mds | 12.2.13-0ubuntu0.18.04.10 | http://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-updates/universe amd64 Packages
  ceph-mds | 12.2.13-0ubuntu0.18.04.10 | http://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic-security/universe amd64 Packages
  ceph-mds | 12.2.4-0ubuntu1 | http://mirrors.tuna.tsinghua.edu.cn/ubuntu bionic/universe amd64 Packages
   
  root@ceph-mgr1:~# apt install ceph-mds
  root@ceph-mgr1:~# apt install ceph-mds=16.2.10-1bionic #也可以指定版本安装取决于apt仓库

 

  进入ceph-deploy节点,指定在ceph-mgr1节点安装ceph-mds

  root@ceph-deploy:~# su - cephadmin
  cephadmin@ceph-deploy:~$ cd ceph-cluster/
  cephadmin@ceph-deploy:~/ceph-cluster$ ceph-deploy mds create ceph-mgr1

 

   验证mds 服务

  cephadmin@ceph-deploy:~/ceph-cluster$ ceph mds stat
  1 up:standby #当前为备用状态,需要分配 pool 才可以使用。

 

回到顶部

  创建 CephFS metadata 和 data 存储池:

  使用 CephFS 之前需要事先于集群中创建一个文件系统,并为其分别指定元数据和数据相关的存储池。

  创建名为 mycephfs 的文件系统,使用 cephfs-metadata 为 元数据存储池,使用 cephfs-data 为数据存储池:

  cephadmin@ceph-deploy:~/ceph-cluster$ ceph osd pool create cephfs-metadata 32 32
  pool 'cephfs-metadata' created #创建元数据 pool
   
  cephadmin@ceph-deploy:~/ceph-cluster$ ceph osd pool create cephfs-data 64 64
  pool 'cephfs-data' created #创建数据存储池

 

  查看ceph当前状态

 

  注意:在实际的生产使用中,cephfs数据存储池存储了几十T的数据,那么元数据的存储池大约占用几个G空间。

 

回到顶部

  创建 cephFS

  创建使用帮助

  cephadmin@ceph-deploy:~/ceph-cluster$ ceph fs new --help
   
  # 文件系统名称 元数据pool data pool
  fs new <fs_name> <metadata> <data> [--force] [--allow-dangerous-metadata- make new filesystem using named pools <metadata> and <data> overlay] [<fscid:int>] [--recover]

 

  创建cephfs,指定fs的元数据池和fs数据池

  cephadmin@ceph-deploy:~/ceph-cluster$ ceph fs new share1 cephfs-metadata cephfs-data

 

  验证cephfs

  列出所有的cephfs

  data pool显示为一个列表,表示可以为fs指定多个data pool

  cephadmin@ceph-deploy:~/ceph-cluster$ ceph fs ls
  name: share1, metadata pool: cephfs-metadata, data pools: [cephfs-data ]

 

  查看cephfs的状态

  cephadmin@ceph-deploy:~/ceph-cluster$ ceph fs status share1

 

  查看ceph状态

 

  验证mds节点状态

  当cephfs创建后,mds节点状态才会为active活动状态

  cephadmin@ceph-deploy:~/ceph-cluster$ ceph mds stat
  share1:1 {0=ceph-mgr1=up:active} #现在已经转变为活动状态

 

本文来自博客园,作者:PunchLinux,转载请注明原文链接:https://www.cnblogs.com/punchlinux/p/17067299.html

  分类: ceph  

标签:deploy,部署,ceph,使用,cephadmin,mds,cephfs,pool
From: https://www.cnblogs.com/gaoyuechen/p/17257972.html

相关文章

  • 使用树状图可视化聚类
    一般情况下,我们都是使用散点图进行聚类可视化,但是某些的聚类算法可视化时散点图并不理想,所以在这篇文章中,我们介绍如何使用树状图(Dendrograms)对我们的聚类结果进行可视化。......
  • C# autofac 在Net6中的使用
    十年河东,十年河西,莫欺少年穷。学无止境,精益求精。准备如下工作:新建一个Net6 webApi项目,并在该项目中引入:  新建类库MyInterface和MyService,项目构造如下  接口如下:/......
  • 在Vue3+TypeScript 前端项目中使用事件总线Mitt
    事件总线Mitt使用非常简单,本篇随笔介绍在Vue3+TypeScript前端项目中使用的一些场景和思路。我们在Vue的项目中,经常会通过emits 触发事件来通知组件或者页面进行相应的处......
  • 在基于vue-next-admin的Vue3+TypeScript前端项目中,为了使用方便全局挂载对象接口
    在基于vue-next-admin 的Vue3+TypeScript前端项目中,可以整合自己的.NET后端,前端操作一些功能的时候,为了使用方便全局挂载的对象接口,以便能够快速处理一些特殊的操作,如......
  • 【Docker基础入门】部署docker管理工具portainer-ce
    (【Docker基础入门】部署docker管理工具portainer-ce)一、portainer-ce介绍1.portainer简介Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,......
  • 关于Vim的基本使用方法
    基本文件操作:开始/结束输入:i/ESC保存文件::w文件名退出::q不保存文件并强制退出::q!打开文件:vimA.cpp5.新建程序(如果没有):vimA.cpp基本......
  • 为什么要将程序部署到云服务器上?华为云Web及移动App上云解决方案体验测评
    Web及移动App上云是指将Web应用程序或移动应用程序部署到云计算平台上,以便用户可以通过互联网访问这些应用程序。这种部署方式可以提高应用程序的可靠性、可扩展性和安全性,......
  • 部署InfluxDB v2.6
    部署InfluxDBAPT方式部署#wget-qhttps://repos.influxdata.com/influxdata-archive_compat.key#echo'393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e......
  • Django笔记八之model中Meta参数的使用
    前面介绍了model的字段属性,字段类型,这篇笔记介绍一下model的Meta选项。这个选项提供了一些参数,比如排序(ordering),表名(db_table)等。但这都不是必需的,都是作为可选项,......
  • 使用Grafana监控Lync/Skype服务器(四)
    在上一篇文章中,我们使用Grafana从SQLServer的表中取数,然后通过Dashboard实现了对Lync/Skype服务器的点对点通话质量的监控。那么在本篇文章中,我们将继续使用Grafana来实现......