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

思科网站建设配置站点dns服务手机百度官网首页

思科网站建设配置站点dns服务,手机百度官网首页,专业网站建设公司哪里济南兴田德润什么活动,wordpress放在哪文章目录 1.Cephfs文件系统简介2.Cephfs文件系统细节介绍2.1.Cephfs文件系统多客户端隔离挂载2.2.Ceph集群中多个Cephfs如何单独使用 3.挂载多个Cephfs文件系统4.Cephfs文件系统多客户端隔离挂载实战4.1.创建一个Cephfs文件系统4.2.将Cephfs文件系统挂载到本地路径4.3.在Cephfs…

文章目录

    • 1.Cephfs文件系统简介
    • 2.Cephfs文件系统细节介绍
      • 2.1.Cephfs文件系统多客户端隔离挂载
      • 2.2.Ceph集群中多个Cephfs如何单独使用
    • 3.挂载多个Cephfs文件系统
    • 4.Cephfs文件系统多客户端隔离挂载实战
      • 4.1.创建一个Cephfs文件系统
      • 4.2.将Cephfs文件系统挂载到本地路径
      • 4.3.在Cephfs文件文件系统中创建多个目录
      • 4.4.查看Cephfs文件系统的状态
      • 4.5.客户端分别挂载不同的Cephfs文件系统中的子目录
    • 5.卸载MDS的方法
    • 6.小插曲

1.Cephfs文件系统简介

Cephfs文件系统至少需要一个MDS(Metadata Server组件)来存储文件系统的元数据信息,因此在使用Cephfs文件存储之前,首先要在集群中部署MDS组件,我们希望Cephfs文件存储具备高可用性,所以MDS组件一般都会在集群中部署多个,大多数情况下都是三个MDS组件。

Cephfs支持用户级别和内核级别的挂载使用,可扩展性极高,并且可以同时让多个Client客户端进行读写。

一个Cephfs文件系统至少需要两个Librados存储池,也就是Pool资源池,一个为data,存储具体落盘的数据,一个为metadata,存储数据文件的元数据信息。

建议为metadata的Pool资源池设置较高级别的副本数,因为metadata资源池损坏就会导致整个文件系统不可用,另外metadata的资源池要使用低延时的存储,例如SSD类型的磁盘,metadata会直接影响客户端的响应速度。

Cephfs文件系统正确使用姿势:

首次创建完Cephfs文件系统后,将其挂载到本地的一个路径中,然后在路径中创建出多个子级目录,客户端使用时挂载特定的子级目录。

这样做的好处是:既可以看到所有客户端在Cephfs文件系统中存储的数据,又可以让多个客户端之间实现数据的隔离存储。

2.Cephfs文件系统细节介绍

2.1.Cephfs文件系统多客户端隔离挂载

在Ceph集群中创建的Cephfs文件系统,其实是一个Volume,也就是一个空盘,只有一个/路径,这也是大多数直接挂载/的一个原因。

如果集群中只有一个Cephfs文件系统,在使用mount挂载时,无需指定使用哪个Cephfs文件系统,直接就是将这个Cephfs文件系统的/目录挂载到指定的路径中,就可以使用这个Cephfs文件系统进行存储了。

如下图所示:Ceph集群中只有一个Cephfs文件系统,也没有在文件系统中创建任何目录,因此直接挂载的/目录

image-20220416083429568

我们可以把Cephfs文件系统理解成一个空的父级目录,一开始并没有任何的文件系统,在使用这个文件系统之前,先将Cephfs挂载到本地的一个路径中,在里面为不同的客户端创建出不同的目录,然后由客户端挂载时指定要挂载的目录,实现多客户端之间的数据隔离。

如下图所示:就是在Cephfs文件系统中为不同的客户端创建了不同的存储目录,然后由客户端进行挂载,实现数据上的逻辑隔离。

image-20220416083953453

2.2.Ceph集群中多个Cephfs如何单独使用

一个Ceph集群中不可能只有一个Cephfs文件系统,那么如何指定客户端使用哪一个Cephfs呢?其实很简单,mount挂载命令中有个参数可以指定客户端使用哪一个Cephfs。

挂载非默认FS,以防集群有多个FS
mount -t ceph :/ /mnt/ mycephfs2 -o fs=mycephfs2或者mount -t ceph :/ /mnt/ mycephfs2 -o mds_namespace=mycephfs2 # 此选项名称已弃用。

官网是如上这么写的,但是我在使用的时候发现fs=这个参数是不支持的,只有mds_namespace=参数是支持的

3.挂载多个Cephfs文件系统

使用mount命令的mds_namespace参数就可以指定要挂载的Cephfs文件系统

[root@ceph-node-1 ~]# mount -t ceph  192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/nginx_conf /nginx_conf/ -o name=admin,mds_namespace=kubernetes_cephfs[root@ceph-node-1 ~]# mount -t ceph  192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/prometheus_data /prometheus_data/ -o name=admin,mds_namespace=kubernetes_cephfs

image-20220416100835888

执行mount命令也可以看到挂载的详情。

192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/nginx_conf on /nginx_conf type ceph (rw,relatime,name=admin,secret=<hidden>,acl,mds_namespace=kubernetes_cephfs,wsize=16777216)
192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/prometheus_data on /prometheus_data type ceph (rw,relatime,name=admin,secret=<hidden>,acl,mds_namespace=kubernetes_cephfs,wsize=16777216)

4.Cephfs文件系统多客户端隔离挂载实战

创建一个Cephfs文件系统,然后将文件系统挂载到本地的一个路径上,

4.1.创建一个Cephfs文件系统

1)首先创建Cephfs依赖的数据池和元数据池

[root@ceph-node-1 ~]# ceph osd pool create kubernetes_cephfs_data 16 16
pool 'kubernetes_cephfs_data' created
[root@ceph-node-1 ~]# ceph osd pool create kubernetes_cephfs_metadata 16 16
pool 'kubernetes_cephfs_metadata' created

2)创建一个Cephfs文件系统

[root@ceph-node-1 ~]# ceph fs new kubernetes_cephfs kubernetes_cephfs_metadata kubernetes_cephfs_data
new fs with metadata pool 14 and data pool 13

3)查看创建的Cephfs文件系统

[root@ceph-node-1 ~]# ceph fs ls
name: kubernetes_cephfs, metadata pool: kubernetes_cephfs_metadata, data pools: [kubernetes_cephfs_data ]

4.2.将Cephfs文件系统挂载到本地路径

使用mount命令时,指定mds_namespace参数挂载特定的Cephfs文件系统。

[root@ceph-node-1 ~]# mount -t ceph 192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/ /kubernetes_cephfs/ -o name=admin,mds_namespace=kubernetes_cephfs

4.3.在Cephfs文件文件系统中创建多个目录

创建出多个目录为不同的客户端提供存储。

[root@ceph-node-1 ~]# mkdir /kubernetes_cephfs/{zabbix_data,prometheus_data,nginx_conf}
[root@ceph-node-1 ~]# ll /kubernetes_cephfs/
总用量 0
drwxr-xr-x 1 root root 0 416 10:02 nginx_conf
drwxr-xr-x 1 root root 0 416 10:02 prometheus_data
drwxr-xr-x 1 root root 0 416 10:02 zabbix_data

4.4.查看Cephfs文件系统的状态

当前还没有任何数据写入。

[root@ceph-node-1 ~]# ceph fs status kubernetes_cephfs
kubernetes_cephfs - 0 clients
=================
+------+--------+-------------+---------------+-------+-------+
| Rank | State  |     MDS     |    Activity   |  dns  |  inos |
+------+--------+-------------+---------------+-------+-------+
|  0   | active | ceph-node-2 | Reqs:    0 /s |    0  |    0  |
+------+--------+-------------+---------------+-------+-------+
+----------------------------+----------+-------+-------+
|            Pool            |   type   |  used | avail |
+----------------------------+----------+-------+-------+
| kubernetes_cephfs_metadata | metadata | 1728k | 17.9G |
|   kubernetes_cephfs_data   |   data   |    0  | 17.9G |
+----------------------------+----------+-------+-------+
+-------------+
| Standby MDS |
+-------------+
| ceph-node-1 |
+-------------+
+-----------------------------------------------------------------------------------+-------------+
|                                      version                                      |   daemons   |
+-----------------------------------------------------------------------------------+-------------+
|                                        None                                       | ceph-node-2 |
| ceph version 14.2.22 (ca74598065096e6fcbd8433c8779a2be0c889351) nautilus (stable) | ceph-node-1 |
+-----------------------------------------------------------------------------------+-------------+

4.5.客户端分别挂载不同的Cephfs文件系统中的子目录

1)客户端挂载文件系统中不同的目录

1.创建挂载点
[root@ceph-node-1 ~]# mkdir /nginx_conf
[root@ceph-node-1 ~]# mkdir /prometheus_data2.挂载Cephfs文件系统中不同的子目录
[root@ceph-node-1 ~]# mount -t ceph  192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/nginx_conf /nginx_conf/ -o name=admin,mds_namespace=kubernetes_cephfs
[root@ceph-node-1 ~]# mount -t ceph  192.168.20.20:6789,192.168.20.21:6789,192.168.20.22:6789:/prometheus_data /prometheus_data/ -o name=admin,mds_namespace=kubernetes_cephfs

2)查看挂载的信息

不同的客户端挂载了Cephfs文件系统中不同的子目录,实现数据上的隔离存储。

image-20220416100835888

3)写入数据验证数据的隔离性

每个客户端都在自己的挂载点写入数据。

#nginx客户端
[root@ceph-node-1 ~]# touch /nginx_conf/file{1..5}.txt#prometheus客户端
[root@ceph-node-1 ~]# cp rbd-storage.img /prometheus_data/

在总的Cephfs文件存储中查看子目录的数据。

[root@ceph-node-1 ~]# tree /kubernetes_cephfs/
/kubernetes_cephfs/
├── nginx_conf
│   ├── file1.txt
│   ├── file2.txt
│   ├── file3.txt
│   ├── file4.txt
│   └── file5.txt
├── prometheus_data
│   └── rbd-storage.img
└── zabbix_data3 directories, 6 files

查看Cephfs文件系统的状态,此时数据就有了变化。

[root@ceph-node-1 ~]# ceph fs status kubernetes_cephfs
kubernetes_cephfs - 0 clients
=================
+------+--------+-------------+---------------+-------+-------+
| Rank | State  |     MDS     |    Activity   |  dns  |  inos |
+------+--------+-------------+---------------+-------+-------+
|  0   | active | ceph-node-2 | Reqs:    0 /s |    0  |    0  |
+------+--------+-------------+---------------+-------+-------+
+----------------------------+----------+-------+-------+
|            Pool            |   type   |  used | avail |
+----------------------------+----------+-------+-------+
| kubernetes_cephfs_metadata | metadata | 1920k | 17.8G |
|   kubernetes_cephfs_data   |   data   |  215M | 17.8G |
+----------------------------+----------+-------+-------+
+-------------+
| Standby MDS |
+-------------+
| ceph-node-1 |
+-------------+
+-----------------------------------------------------------------------------------+-------------+
|                                      version                                      |   daemons   |
+-----------------------------------------------------------------------------------+-------------+
|                                        None                                       | ceph-node-2 |
| ceph version 14.2.22 (ca74598065096e6fcbd8433c8779a2be0c889351) nautilus (stable) | ceph-node-1 |
+-----------------------------------------------------------------------------------+-------------+

5.卸载MDS的方法

1:(可选)创建一个新的MDS将要被移除的MDS,如果在删除MDS之后没有替代MDS可以接管,则文件系统将对客户端不可用,如果不希望这样做,请在删除要脱机的元数据服务器之前考虑添加元数据服务器

2:停止MDS服务

systemctl stop ceph-mds@${id}

MDS将自动通知mon它已关闭,这使mon能够将故障瞬间切换到可用的备用数据库(如果存在)。无需使用管理命令来实现此故障转移,例如通过使用ceph mds fail mds.${id}

3:删除/var/lib/ceph/mds/ceph-${id}目录

rm -rf /var/lib/ceph/mds/ceph-${id}

注意:卸载掉集群中所有的MDS后,Cephfs文件系统将不可用,再次部署完MDS后,需要将所有的cephfs以及对应的Pool资源池删掉,否则集群就会有问题。

6.小插曲

如果一台机器中挂载了两个Cephfs,虽然是两个不通的Cephfs文件系统,但是都挂载的是/目录。

image-20220416172348470

此时使用df目录查看挂载信息时,只会显示第一个挂载的Cephfs文件系统。

image-20220416172501023

http://www.yayakq.cn/news/574839/

相关文章:

  • 兰州工业发展建设有限公司网站毕业设计查资料的网站
  • 驻马店河南网站建设泉州网站建设案例
  • 一个网站的建设需要什么手续设计师效果图网站
  • 建站公司用哪家服务器iis部署wordpress
  • 合肥建设学校网站首页织梦cms网站搬家
  • 网站免费虚拟主机申请做网站专业公司电话
  • 优化网站浏览量怎么看濮阳建设网
  • 青岛建设官方网站网站建设需要代码
  • 北京seo网站管理网站的域名是什么
  • 商洛网站建设公司电话织梦网站用户名不存在
  • 旅游网站怎么设计有服务器有域名如何做网站
  • 小说网站开发数据库如何做一个主题网站
  • 北京朝阳网站wordpress小说主题模板下载地址
  • 支付网站开发怎么做账织梦网站打不开
  • 可以做软文的网站成都平面设计公司有哪些
  • 通辽北京网站建设网站建设的版块
  • 长沙网站建设报价手机商城建站系统网站建设
  • 中文免费网站模板阿里云服务器是干什么用的
  • 关键词挖掘网站pc端网页设计模板
  • 建设网站观澜织梦网站如何生成伪静态
  • 茶叶淘宝店网站建设ppt模板城市建设网
  • 外贸出口营销网站html怎么做网页
  • 网站建设价格受哪些影响wordpress本地视频
  • 加强网站建设的意见引流推广平台违法吗
  • 成都网站推广优化公司wordpress周期
  • 我想建立一个网站英文购物网站模板下载
  • wordpress 所有函数百度seo排名
  • 网站建设申请方案文样手机怎么自创网站
  • 网站建设毕业设计引言怎么写网站开发选择什么软件
  • 大连 做 企业网站网站建设怎么找客源