Ceph 架构以及部署

ceph · 浏览次数 : 6

小编点评

``` vm # 查看ceph df# ceph df RAW STORAGE ---CLASS SIZE AVAIL USED RAW USED %RAW USED hdd 450 GiB 450 GiB 53 MiB 53 MiB 0.01TOTAL 450 GiB 450 GiB 53 MiB 53 MiB 0.01 --- POOLS ---POOL ID PGS STORED OBJECTS USED %USED MAX AVAILdevice_health_metrics 1 1 0 B 0 0 B 0 142 GiBceph osd df# ceph osd df[root@ceph01 ~]# ceph osd df ```

正文

Ceph架构

Ceph是什么?为什么用到Ceph?

存储类型

  • 集中式存储

    • NAS (网络附加存储 / 网络区域存储)
    • SAN (存储区域网络)
    • DAS (直连附加存储)

    集中式存储的优点:

    1. 管理简单,因为所有数据都存放在同一个节点上,所以数据的管理与维护相对简单

    2. 安全性高,集中式存储中只有一个数据中心,因此更容易实现安全控制

    3. 数据统一管理

    常见的的集中式存储有:

  • 分布式存储

    分布式存储是一种数据存储技术。在分布式存储架构中,信息被存储于多个独立且互不干扰的设备中。不同于传统的集中式存储,分布式存储采用可扩展的存储结构,这在一定程度上提高了存储系统的可靠性,可用性和访问效率。

为什么用到Ceph?

1. NFS

现在常用的存储服务有NFS,那么为什么不采用NFS呢?

我们不妨这样设想一下,NFS如果节点挂掉了,那么我们把这个节点上的硬盘拔出来,换到其他节点上,在其他节点上起一个NFS,那么数据依旧是存在的,但是,如果坏的不是节点而是硬盘呢?可能你想到了给硬盘做RAID,好,保留这个问题,继续往后看。

2. MooseFS

Moosefs就是一个分布式存储,他的技术架构就是提供一个Mater节点,来管理整个集群,client只需要通过挂载Master节点就可以往集群内存储文件

大家都知道,一个文件是由文件元数据以及文件数据组成的,文件元数据保存的就是一些简单的概要,比如这个文件多大,文件的拥有人,所属组以及访问权限这些东西,元数据一般都不大,所以会直接保存在Master节点上,而文件本身的数据则会保存在存储节点上,并且是有多副本机制的。完全不怕某个节点挂掉而导致数据丢失。

MooseFS瓶颈

虽然文件的元数据占用的空间并不大,但是在现在这个时代,也奈何不了他多啊,当元数据过多时,Master就成了Moosefs的瓶颈,因为所有的请求都是需要经过Master的,并且Moosefs(到写这篇文章的时间)是没办法做Master高可用的,想给他做高可用的方式就是2个Master,使用Keepalive提供一个VIP(虚拟IP),访问这个VIP就可以访问到2个Master节点,但是,在同一时间内,只有一个Master在工作,所以瓶颈依旧存在

3. GlusterFS

看到了MooseFS的瓶颈之后,GlusterFS采取了去Master,即不需要Master节点,每个存储节点上都内嵌一个可以代替Master工作的组件,这样操作下来,所有的元数据并不是都放在同一个节点上,每个节点都只需要保存部分元数据,好像这个架构没什么问题了哈,但是我们回想一下MooseFS是如何使用的?是不是客户端挂载Master就可以使用集群了?但是现在没有Master了,或者说每个节点都是Master,那怎么办呢?

GlusterFS就要求使用GlusterFS的客户端安装一个软件,Gluster-client,并且给这个软件写一个配置文件,把所有的存储节点IP地址写进去,这样操作。但是如果后期节点需要更换,改动起来就比较麻烦。我们再来看看Ceph是怎么做的

4. Ceph

Ceph的做法就跟前两者不同了,Moose FS不是说Master上的元数据会成为瓶颈吗?GlusterFS不是说客户端操作不易吗?那我来折中一下呢?Ceph他保留了Master节点,但是,这个Master保存的不是文件的元数据,是集群的元数据,也就是保存的集群的信息,那么既然Master保存的是集群元数据,那么文件元数据保存到哪了呢?他有专门的文件元数据节点,所有的文件元数据都保存在这个节点上,记住,这个节点只保存元数据,其他一概不管。这样说来,既解决了客户端配置维护困难,也解决了Master节点的瓶颈。

这就是Ceph的架构,他兼顾了 易维护、性能,这就是他流行的原因

现在再回头去想NFS的问题,为什么不做RAID呢?因为做RAID成本就比用Ceph的成本高了

Ceph的版本命名跟OpenStack一样,采取英文字母命令A-Z,目前最新版是R版

Ceph的组件

  1. mon:集群监视器(就是master)
  2. osd:集群存储节点
  3. mgr:集群管理器
    以上三个节点必装,缺一不可
  4. mds:文件元数据节点
  5. rgw:对象存储网关
  6. nfs-genasha:为ceph对外提供NFS协议的文件存储服务
  7. rbd-mirror:块设备镜像服务

Ceph部署

ceph的部署方式有:

  1. Cephadm(官方推荐)
  2. ceph-ansible
  3. ceph-deploy(N版本之前使用)
  4. DeepSea
  5. 手工部署(极其复杂,不推荐)
主机名 IP 系统
ceph01 192.168.101.10 欧拉 22.03
ceph02 192.168.101.20 欧拉 22.03
ceph03 192.168.101.30 欧拉 22.03

前期准备

每个节点都要做

1.1 修改主机名

[root@localhost ~]# hostnamectl set-hostname ceph01

1.2 关闭防火墙以及selinux

[root@ceph01 ~]# systemctl disable --now firewalld
[root@ceph01 ~]# setenforce 0
[root@ceph01 ~]# cat /etc/selinux/config 

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled

1.3 配置hosts

[root@ceph01 ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 ceph01
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.101.10 ceph01
192.168.101.20 ceph02
192.168.101.30 ceph03

1.4 配置时间同步

[root@ceph01 ~]# yum install chrony -y
[root@ceph01 ~]# systemctl enable --now chronyd

2. 安装cephadm

2.1 安装git

安装git是因为需要拉取cephadm,因为欧拉操作系统暂时用不了官方的cephadm,需要下载另一个版本

[root@ceph01 ~]# yum install git -y
[root@ceph01 ~]# git clone https://gitee.com/yftyxa/openeuler-cephadm.git
[root@ceph01 ~]# cd openeuler-cephadm/
[root@ceph01 openeuler-cephadm]# ls
cephadm
[root@ceph01 openeuler-cephadm]# mv cephadm /usr/sbin/

2.2 安装podman3.3

[root@ceph01 ~]#  wget-O /etc/yum.repos.d/huawei.repo https://repo.huaweicloud.com/repository/conf/CentOS-8-reg.repo
# 一定要指定版本安装
[root@ceph01 ~]# yum install podman-3.3.1*

2.3 配置ceph源

不要使用cephadm add-repo 因为在欧拉上是不支持的

[root@ceph01 ~]# cephadm version
ceph version 16.2.13 (5378749ba6be3a0868b51803968ee9cde4833a3e) pacific (stable)
[root@ceph01 ~]# vim /etc/yum.repos.d/ceph.repo
[ceph]
name=ceph
baseurl=https://mirrors.huaweicloud.com/ceph/rpm-pacific/el8/x86_64/
gpgcheck=0
enabled=1

2.4 将repo文件传到各个节点

[root@ceph01 ~]# scp /etc/yum.repos.d/ceph.repo ceph02:/etc/yum.repos.d/

Authorized users only. All activities may be monitored and reported.
ceph.repo                                              100%  107   209.4KB/s   00:00    
[root@ceph01 ~]# scp /etc/yum.repos.d/ceph.repo ceph03:/etc/yum.repos.d/

Authorized users only. All activities may be monitored and reported.
ceph.repo                                              100%  107   203.1KB/s   00:00

3. 安装ceph

[root@ceph01 ~]# cephadm bootstrap --mon-ip 192.168.101.10 --initial-dashboard-user admin --initial-dashboard-password 123 --dashboard-password-noupdate

--mon-ip指定monitor,指定一个就行,后期可以添加

--initial-dashboard-user admin 指定dashboard的用户名是admin,不指定也行

--initial-dashboard-password 123 指定dashboard的用户名是123,不指定也行

--dashboard-password-noupdate 第一次登录dashboard无需修改密码

安装完之后会有一个回显

Ceph Dashboard is now available at:

	     URL: https://localhost.localdomain:8443/
	    User: admin
	Password: 123

Enabling client.admin keyring and conf on hosts with "admin" label
You can access the Ceph CLI with:

	sudo /usr/sbin/cephadm shell --fsid dc6d1544-17ef-11ef-9393-000c297dea16 -c /etc/ceph/ceph.conf -k /etc/ceph/ceph.client.admin.keyring

Please consider enabling telemetry to help improve Ceph:

	ceph telemetry on

For more information see:

	https://docs.ceph.com/docs/pacific/mgr/telemetry/

Bootstrap complete.

3.1 登录dashboard

3.2 安装ceph-common

[root@ceph01 ~]# yum install ceph-common  --nobest
如果不加上nobest的话,他会报错,因为我们的版本是16.2.13,而仓库里的是common是16.2.15,不是最佳匹配
加上nobest的话他就不会报错了

装完之后我们可以使用ceph -s 来查看集群状态

[root@ceph01 ~]# ceph -s
  cluster:
    id:     dc6d1544-17ef-11ef-9393-000c297dea16
    health: HEALTH_WARN
            OSD count 0 < osd_pool_default_size 3
 
  services:
    mon: 1 daemons, quorum ceph01 (age 30m)
    mgr: ceph01.luyssm(active, since 27m)
    osd: 0 osds: 0 up, 0 in
 
  data:
    pools:   0 pools, 0 pgs
    objects: 0 objects, 0 B
    usage:   0 B used, 0 B / 0 B avail
    pgs: 

3.2.1 群健康的3种状态

1. health: HEALTH_OK       这个代表集群是OK的
2. health: HEALTH_WARN  这个代表的是有警告
3. health: HEALTH_ERR     这个代表集群出现错误,无法提供服务

3.2.2 services

mon: 1 daemons, quorum ceph01 (age 30m)
mgr: ceph01.luyssm(active, since 27m)
osd: 0 osds: 0 up, 0 in

这里可以看到有一个mon,没有osd,没有osd是up

osd的状态:

  1. up且in: 代表osd运行正常且至少承载了一个PG

  2. up且out:代表osd运行正常,但是没有承载PG,新加入集群的osd为这个状态

  3. down且in:表示osd运行异常,但承载了一个PG

  4. down且out:表示osd运行异常,且没有承载PG

3.2.3 健康详细情况

[root@ceph01 ~]# ceph health detail
HEALTH_WARN OSD count 0 < osd_pool_default_size 3
[WRN] TOO_FEW_OSDS: OSD count 0 < osd_pool_default_size 3

这里会详细的说明为什么不健康

4. 添加节点

有一个命令 ceph orch 他是用来管理节点以及 orch 信息的c

[root@ceph01 ~]# ceph orch ls
NAME           PORTS        RUNNING  REFRESHED  AGE  PLACEMENT  
alertmanager   ?:9093,9094      1/1  2m ago     45m  count:1    
crash                           1/1  2m ago     45m  *          
grafana        ?:3000           1/1  2m ago     45m  count:1    
mgr                             1/2  2m ago     45m  count:2    
mon                             1/5  2m ago     45m  count:5    
node-exporter  ?:9100           1/1  2m ago     45m  *          
prometheus     ?:9095           1/1  2m ago     45m  count:1 
[root@ceph01 ~]# ceph orch ps
NAME                  HOST    PORTS        STATUS         REFRESHED  AGE  MEM USE  MEM LIM  VERSION  IMAGE ID      CONTAINER ID  
alertmanager.ceph01   ceph01  *:9093,9094  running (52m)    48s ago  53m    23.8M        -  0.23.0   ba2b418f427c  922cc9da5d93  
crash.ceph01          ceph01               running (53m)    48s ago  53m    6665k        -  16.2.13  e08a45948779  beb27dd23017  
grafana.ceph01        ceph01  *:3000       running (51m)    48s ago  52m    52.8M        -  8.3.5    dad864ee21e9  8040b45413ea  
mgr.ceph01.luyssm     ceph01  *:9283       running (54m)    48s ago  54m     430M        -  16.2.13  e08a45948779  46795e2d6fd4  
mon.ceph01            ceph01               running (54m)    48s ago  55m     127M    2048M  16.2.13  e08a45948779  40063aa2ec52  
node-exporter.ceph01  ceph01  *:9100       running (52m)    48s ago  52m    20.3M        -  1.3.1    1dbe0e931976  526975c5960b  
prometheus.ceph01     ceph01  *:9095       running (52m)    48s ago  52m    68.7M        -  2.33.4   514e6a882f6e  7c8ef8a42751

通过ps可以看到ceph具体的进程,运行在哪个机器上,内存占用是多少,允许最大占用内存是多少,这里的image id就是容器使用的镜像ID,cephadm部署出来的集群就是基于容器的

4.1 开始添加节点

需要将/etc/ceph/ceph.pub这个公钥传到被添加的节点上

4.1.1 发放公钥

[root@ceph01 ceph]# ssh-copy-id -f -i /etc/ceph/ceph.pub ceph02
[root@ceph01 ceph]# ssh-copy-id -f -i /etc/ceph/ceph.pub ceph03

4.1.2 被添加节点安装容器引擎

# 先移除本来就存在的podman1版本
[root@ceph02 ~]# yum remove podman* -y
# 安装podman3
[root@ceph02 ~]# yum install podman-3* -y
[root@ceph03 ~]# yum install podman-3* -y

4.1.3 添加节点

[root@ceph01 ceph]# ceph orch  host add ceph02 192.168.101.20
Added host 'ceph02' with addr '192.168.101.20'
[root@ceph01 ceph]# ceph orch  host add ceph03 192.168.101.30
Added host 'ceph03' with addr '192.168.101.30'
[root@ceph01 ceph]# ceph orch host ls
HOST    ADDR            LABELS  STATUS  
ceph01  192.168.101.10  _admin          
ceph02  192.168.101.20                  
ceph03  192.168.101.30                  
3 hosts in cluster

Lables 就是标签,当某个节点拥有_admin标签时,集群就会把连接客户端连接ceph集群的认证文件发放到该节点上

4.1.4 标签修改

添加标签

目前是只有ceph01拥有admin标签,在/etc/ceph 下有一些其他节点没有的文件

[root@ceph01 ceph]# ls /etc/ceph/
ceph.client.admin.keyring  ceph.conf  ceph.pub  rbdmap
# ceph03查看
[root@ceph03 ~]# ls /etc/ceph/
rbdmap

# 给ceph03打标签
[root@ceph01 ceph]# ceph orch host label add ceph03 _admin
Added label _admin to host ceph0
# 重新查看ceph03
[root@ceph03 ~]# ls /etc/ceph/
ceph.client.admin.keyring  ceph.conf  rbdmap
[root@ceph01 ceph]# ceph orch host ls
HOST    ADDR            LABELS  STATUS  
ceph01  192.168.101.10  _admin          
ceph02  192.168.101.20                  
ceph03  192.168.101.30  _admin

这个时候,ceph03就可以使用ceph客户端来操作ceph集群了

删除标签
[root@ceph01 ceph]# ceph orch host label rm ceph03 _admin
Removed label _admin from host ceph03
[root@ceph01 ceph]# ceph orch host ls
HOST    ADDR            LABELS  STATUS  
ceph01  192.168.101.10  _admin          
ceph02  192.168.101.20                  
ceph03  192.168.101.30

4.2 关闭mon自动扩展

[root@ceph01 ~]# ceph orch apply mon --unmanaged
Scheduled mon update...
[root@ceph01 ~]# ceph orch apply mon 3
Scheduled mon update...
[root@ceph01 ~]# ceph orch ls
NAME           PORTS        RUNNING  REFRESHED  AGE   PLACEMENT  
alertmanager   ?:9093,9094      1/1  97s ago    100m  count:1    
crash                           3/3  99s ago    100m  *          
grafana        ?:3000           1/1  97s ago    100m  count:1    
mgr                             2/2  99s ago    100m  count:2    
mon                             3/3  99s ago    52s   count:3    
node-exporter  ?:9100           3/3  99s ago    100m  *          
prometheus     ?:9095           1/1  97s ago    100m  count:1 

4.3 将mon服务固定在某几个节点

如果有一个mon节点挂掉了,而此时又添加了一台新的节点,那么按照ceph集群的控制,可能会在新的节点上启动一个mon,但我们并不想他更换mon节点,此时可以这么做

# 1. 先给节点打标签
[root@ceph01 ~]# ceph orch host label add ceph01 mon
Added label mon to host ceph01
[root@ceph01 ~]# ceph orch host label add ceph02 mon
Added label mon to host ceph02
[root@ceph01 ~]# ceph orch host label add ceph03 mon
Added label mon to host ceph03
# 2. 开启标签匹配
[root@ceph01 ~]# ceph orch apply mon label:mon
Scheduled mon update...

这样操作之后,mon就只会在有mon标签的节点上去启动

5. 添加OSD

首先需要ceph节点上有空闲的盘,然后将空闲的盘添加进来,必须是一块裸盘,在一千的版本是允许是一个目录的

[root@ceph01 ~]# ceph orch daemon add osd ceph01:/dev/sdb
Created osd(s) 0 on host 'ceph01'
[root@ceph01 ~]# ceph orch daemon add osd ceph01:/dev/sdc
Created osd(s) 1 on host 'ceph01'
[root@ceph01 ~]# ceph orch daemon add osd ceph01:/dev/sdd
Created osd(s) 2 on host 'ceph01'

在添加节点之后ceph会将这块盘做成一个lvm,可以使用lvs去查看

[root@ceph01 ~]# lvs
  LV                                             VG                                        Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  osd-block-92842562-ddd9-4703-a406-0c5608943e67 ceph-4b36ac72-7807-4e01-97d6-a47974ff5819 -wi-ao---- <50.00g                                                    
  osd-block-ca2d6b54-650f-41bc-9519-08eeb5d405fb ceph-615825c2-3c13-4367-98e3-7b9197eda340 -wi-ao---- <50.00g                                                    
  osd-block-2e02f3ac-9768-48d7-8d7b-591d1f5badd5 ceph-bc484b43-f83f-43b2-b49e-a838c8d07e75 -wi-ao---- <50.00g                                                    
  home                                           openeuler                                 -wi-ao---- <29.90g                                                    
  root                                           openeuler                                 -wi-ao---- <61.24g                                                    
  swap                                           openeuler                                 -wi-ao----  <7.86g                                         

添加完之后我们使用命令来查看

[root@ceph01 ~]# ceph -s
  cluster:
    id:     dc6d1544-17ef-11ef-9393-000c297dea16
    health: HEALTH_OK
 
  services:
    mon: 3 daemons, quorum ceph01,ceph02,ceph03 (age 18m)
    mgr: ceph02.oxmsfu(active, since 19m), standbys: ceph01.luyssm
    osd: 9 osds: 9 up (since 4m), 9 in (since 4m)
 
  data:
    pools:   1 pools, 1 pgs
    objects: 0 objects, 0 B
    usage:   53 MiB used, 450 GiB / 450 GiB avail
    pgs:     1 active+clean

这里显示有9个osd,并且状态是up且in,说明没问题

ceph df

# ceph df命令
[root@ceph01 ~]# ceph df
--- RAW STORAGE ---
CLASS     SIZE    AVAIL    USED  RAW USED  %RAW USED
hdd    450 GiB  450 GiB  53 MiB    53 MiB       0.01
TOTAL  450 GiB  450 GiB  53 MiB    53 MiB       0.01
 
--- POOLS ---
POOL                   ID  PGS  STORED  OBJECTS  USED  %USED  MAX AVAIL
device_health_metrics   1    1     0 B        0   0 B      0    142 GiB

ceph osd df

# ceph osd df
[root@ceph01 ~]# ceph osd df
ID  CLASS  WEIGHT   REWEIGHT  SIZE     RAW USE  DATA     OMAP  META     AVAIL    %USE  VAR   PGS  STATUS
 0    hdd  0.04880   1.00000   50 GiB  6.0 MiB  552 KiB   0 B  5.5 MiB   50 GiB  0.01  1.02    0      up
 1    hdd  0.04880   1.00000   50 GiB  6.0 MiB  552 KiB   0 B  5.5 MiB   50 GiB  0.01  1.02    0      up
 2    hdd  0.04880   1.00000   50 GiB  6.0 MiB  552 KiB   0 B  5.4 MiB   50 GiB  0.01  1.01    1      up
 3    hdd  0.04880   1.00000   50 GiB  6.0 MiB  552 KiB   0 B  5.4 MiB   50 GiB  0.01  1.01    1      up
 4    hdd  0.04880   1.00000   50 GiB  5.9 MiB  552 KiB   0 B  5.3 MiB   50 GiB  0.01  0.99    0      up
 5    hdd  0.04880   1.00000   50 GiB  6.1 MiB  552 KiB   0 B  5.6 MiB   50 GiB  0.01  1.03    0      up
 6    hdd  0.04880   1.00000   50 GiB  5.9 MiB  552 KiB   0 B  5.3 MiB   50 GiB  0.01  0.99    0      up
 7    hdd  0.04880   1.00000   50 GiB  5.7 MiB  552 KiB   0 B  5.2 MiB   50 GiB  0.01  0.97    1      up
 8    hdd  0.04880   1.00000   50 GiB  5.7 MiB  552 KiB   0 B  5.2 MiB   50 GiB  0.01  0.97    0      up
                       TOTAL  450 GiB   53 MiB  4.9 MiB   0 B   48 MiB  450 GiB  0.01                   
MIN/MAX VAR: 0.97/1.03  STDDEV: 0

ceph osd tree

[root@ceph01 ~]# ceph osd tree
ID  CLASS  WEIGHT   TYPE NAME        STATUS  REWEIGHT  PRI-AFF
-1         0.43918  root default                              
-3         0.14639      host ceph01                           
 0    hdd  0.04880          osd.0        up   1.00000  1.00000
 1    hdd  0.04880          osd.1        up   1.00000  1.00000
 2    hdd  0.04880          osd.2        up   1.00000  1.00000
-5         0.14639      host ceph02                           
 3    hdd  0.04880          osd.3        up   1.00000  1.00000
 4    hdd  0.04880          osd.4        up   1.00000  1.00000
 5    hdd  0.04880          osd.5        up   1.00000  1.00000
-7         0.14639      host ceph03                           
 6    hdd  0.04880          osd.6        up   1.00000  1.00000
 7    hdd  0.04880          osd.7        up   1.00000  1.00000
 8    hdd  0.04880          osd.8        up   1.00000  1.00000

到这里ceph的部署就结束了

与Ceph 架构以及部署相似的内容:

Ceph 架构以及部署

目录Ceph架构存储类型为什么用到Ceph?1. NFS2. MooseFSMooseFS瓶颈3. GlusterFS4. CephCeph的组件Ceph部署前期准备1.1 修改主机名1.2 关闭防火墙以及selinux1.3 配置hosts1.4 配置时间同步2. 安装cephadm2.1 安装g

Ceph提供nfs服务

目录Ceph提供nfs服务1. 前期准备1.1 检查模块1.2 检查是否有nfs-ganesha集群2. 创建nfs服务2.1 ceph提供的nfs的架构3. nfs导出3.1 创建cephfs3.2 导出3.3 客户端尝试挂载3.4 验证4. 高可用nfs-ganesha Ceph提供nfs服务

Ceph对象网关,多区域网关

目录Ceph对象网关,多区域网关1. 文件系统与对象存储的区别1.1 对象存储使用场景1.2 对象存储的接口标准1.3 桶(bucket)2. rgw2.1 对象存储认证2.2 对象网关所涉概念2.3 可用区和ceph集群的关系3. 部署对象网关3.1 创建realm3.1.1 列出所有的realm

ceph客户端配置自动挂载存储服务

1. 安装支持ceph的内核模块 可选: centos/ubuntu: yum install -y ceph-common 或 apt install -y ceph-common 2. 拷贝认证密钥 cephadmin@ceph-deploy:~/ceph-cluster$ sudo scp c

Ceph配置与认证授权

目录Ceph配置与认证授权1. 为什么现在不采用修改配置文件的方式了呢?2. Ceph元变量3. 使用命令行修改配置3.1 全部修改(使用服务名)3.2 部分修改(修改进程)3.3 临时生效3.4 配置项3.5 老版本提供的配置文件3. Ceph网络3.1 对现有集群加入cluster networ

Ceph存储池管理

目录Ceph存储池1. Ceph的存储流程1. 数据写入2. 数据读取2. 资源池的配置2.1 资源池创建pgp是什么 (Placement Group for Placement purpose)2.2 绑定池类型关闭3. 对象的管理3.1 上传对象3.2 查看对象3.3 下载对象3.4 删除对象

每天5分钟复习OpenStack(十三)存储缓存技术Bcache

Ceph作为一个分布式存储,在项目中常见的形态有两者,一种是采用 SSD 或NVME 磁盘做Ceph的日志盘,使用SATA磁盘来做数据盘。这样的好处是比较经济实惠。另一种则是全部采用 SSD 或NVME磁盘,其性能更好,但是其价格比较昂贵。在第一种形态中,我们能像中间件那样加上一层缓存层,从而实现给

[转帖]Ceph学习之路(二)之Ceph的工作原理及流程

Ceph学习之路(二)之Ceph的工作原理及流程 https://www.cnblogs.com/linuxk/p/9414920.html 一、RADOS的对象寻址 Ceph 存储集群从 Ceph 客户端接收数据——不管是来自 Ceph 块设备、 Ceph 对象存储、 Ceph 文件系统、还是基于

[转帖]ceph学习一之基础知识

https://www.cnblogs.com/liuxingxing/p/13551406.html 一、ceph简介 Ceph是一个可靠、自动重均衡、自动恢复的分布式存储系统,根据场景划分可以将Ceph分为三大块,分别是对象存储、块设备和文件系统服务。块设备存储是Ceph的强项。 Ceph的主要

[转帖]Ceph优化系列(四):RocksDB 使用 ARM 64 位 CRC32C 硬件优化指令

一、前言 CRC32(A cyclic redundancy check 32)应用于校验,为了保证数据的正确性,采用的一种检错手段。 CRC32C (CRC32 Castagnoli) 与 CRC32 不同的是它有多项式常数,也就是说生成的CRC表不同,而算法是一模一样. 二、内容 1. Ceph