0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文参透分布式存储系统Ceph的架构设计、集群搭建

马哥Linux运维 来源:OSCHINA 社区 2023-01-07 13:44 次阅读

1. Ceph 概述

1.1 背景

Ceph 是一个去中心化的分布式存储系统, 提供较好的性能、可靠性和可扩展性。Ceph 项目最早起源于 Sage 就读博士期间的工作(最早的成果于 2004 年发表),并随后贡献给开源社区, 遵循 LGPL 协议(LESSER GENERAL PUBLIC LICENSE 的简写,中文译为 “较宽松公共许可证”)。在经过了数年的发展之后,目前已得到众多云计算厂商(OpenStack、CloudStack、OpenNebula、Hadoop)的支持并被广泛应用。

1.2 介绍

Ceph 是一个可靠、自动重均衡、自动恢复的分布式存储系统,根据场景划分可以将 Ceph 分为三大块,分别是对象存储、块设备和文件系统服务。 Ceph 的主要优点是分布式存储,在存储每一个数据时,都会通过计算得出该数据存储的位置,尽量将数据分布均衡,不存在传统的单点故障的问题,可以水平扩展。 Ceph 存储集群至少需要一个 Ceph Monitor 和两个 OSD 守护进程。而运行 Ceph 文件系统客户端时,则必须要有元数据服务器(Metadata Server)。

1.3 特点

Ceph 适合跨集群的小文件存储, 拥有以下特点:

高性能

Client 和 Server 直接通信, 不需要代理和转发;

Client 不需要负责副本的复制, 有 Primary 主节点负责, 这样可以有效降低 clien 网络的消耗;

采用 CRUSH 算法,数据分布均衡,并行度高,支持上千个存储节点, 支持 TB 及 PB 级数据。

高可用性

数据多副本, 支持故障域分隔,数据强一致性;

没有单点故障,较好的容错性, 有效支撑各种故障场景;

支持所有故障的检测和自动恢复,可以做到自动化管理;

支持并行恢复,能够极大的降低数据恢复时间, 提高数据的可靠性。

高扩展性

高度并行化设计,没有单个中心控制组件,所有负载都能动态的划分到各个服务器上。

去中心化、灵活、随节点增加线性增长。

场景丰富

支持三种存储接口类型:块存储、文件存储、对象存储。同时支持自定义接口,C++ 为底层实现, 兼容多种语言。

块存储:将磁盘空间映射给主机使用, 适用 docker 容器、虚拟机磁盘存储分配;日志存储, 文件存储。

文件存储:解决块存储无法共享问题, 在服务器架设 FTP 和 NFS 服务器,适用目录结构的存储、日志存储等。

对象存储:大容量硬盘, 安装存储管理软件, 对外提供读写访问能力, 具备块存储的高速读写能力, 也具备文件存储共享的特性;适用图片存储或视频存储。

1.4 分布式存储系统横纵对比

对比说明 TFS FASTDFS MooseFS GlusterFS CEPH
开发语言 C++ C C C C++
数据存储方式 文件 / Trunk 文件 / 块 对象 / 文件 / 块
在线扩容 支持 支持 支持 支持 支持
冗余备份 支持 支持 支持 支持 支持
单点故障 存在 不存在 存在 不存在 不存在
易用性 安装复杂,官方文档少 安装简单,社区相对活跃 安装简单,官方文档多 安装简单,官方文档专业化 安装简单,官方文档专业化
适用场景 跨集群的小文件 单集群的中小文件 单集群的大中文件 跨集群云存储 单集群的大中小文件

2. Ceph 架构设计

2.1 Ceph 整体设计

24b16626-8e4d-11ed-bfe3-dac502259ad0.png

基础存储系统 RADOS

Reliable, Autonomic,Distributed Object Store,即可靠的、自动化的、分布式的对象存储

这就是一个完整的对象存储系统,所有存储在 Ceph 系统中的用户数据事实上最终都是由这一层来存储的。而 Ceph 的高可靠、高可扩展、高性能、高自动化等等特性本质上也是由这一层所提供的。

基础库 librados

这层的功能是对 RADOS 进行抽象和封装,并向上层提供 API,以便直接基于 RADOS(而不是整个 Ceph)进行应用开发。特别要注意的是,RADOS 是一个对象存储系统,因此,librados 实现的 API 也只是针对对象存储功能的。RADOS 采用 C++ 开发,所提供的原生 librados API 包括 C 和 C++ 两种。

高层应用接口

这层包括了三个部分:RADOS GW(RADOS Gateway)、 RBD(Reliable Block Device)和 Ceph FS(Ceph File System),其作用是在 librados 库的基础上提供抽象层次更高、更便于应用或客户端使用的上层接口。其中,RADOS GW 是一个提供与 Amazon S3 和 Swift 兼容的 RESTful API 的 gateway,以供相应的对象存储应用开发使用。RADOS GW 提供的 API 抽象层次更高,但功能则不如 librados 强大。

应用层

这层是不同场景下对于 Ceph 各个应用接口的各种应用方式,例如基于 librados 直接开发的对象存储应用,基于 RADOS GW 开发的对象存储应用,基于 RBD 实现的云硬盘等等。librados 和 RADOS GW 的区别在于,librados 提供的是本地 API,而 RADOS GW 提供的则是 RESTfulAPI。

由于 Swift 和 S3 支持的 API 功能近似,这里以 Swift 举例说明。Swift 提供的 API 功能主要包括:

用户管理操作:用户认证、获取账户信息、列出容器列表等;

容器管理操作:创建 / 删除容器、读取容器信息、列出容器内对象列表等;

对象管理操作:对象的写入、读取、复制、更新、删除、访问许可设置、元数据读取或更新等。

2.2 逻辑架构

24c0ecd6-8e4d-11ed-bfe3-dac502259ad0.png

2.3 Ceph 专业术语

24d0bc42-8e4d-11ed-bfe3-dac502259ad0.png

OSD: Ceph 的对象存储设备,OSD 守护进程的功能是存储数据,处理数据的复制、恢复、回填、再均衡,并通过检查其他 OSD 守护进程的心跳来向 Ceph Monitors 提供一些监控信息。

Monitors: Ceph 监视器,Monitor 维护着展示集群状态的各种图表,包括监视器图、OSD 图、归置组(PG)图、和 CRUSH 图。

PG:Ceph 归置组,每个 Object 最后都会通过 CRUSH 计算映射到某个 PG 中,一个 PG 可以包含多个 Object。

MDS: Ceph 元数据服务器(MDS),为 Ceph 文件系统存储元数据。

CephFS: Ceph 文件系统,CephFS 提供了一个任意大小且兼容 POSIX 的分布式文件系统。

RADOS: Reliable Autonomic Distributed Object Store,表示可靠、自动、分布式的对象存储。Ceph 中的一切都是以对象形式存储,RADOS 就负责存储这些对象,RADOS 层确保数据一致性和可靠性。

Librados:librados 库是一种用来简化访问 RADOS 的方法,目前支持 PHP、Python、Ruby、Java、C 和 C++ 语言。

RBD:Ceph 的块设备,它对外提供块存储,可以被映射、格式化进而像其他磁盘一样挂载到服务器。

RGW/RADOSGW:Ceph 对象网关,它提供了一个兼容 S3 和 Swift 的 restful API 接口。

3. Ceph 集群部署配置

3.1 部署结构

24dcdb80-8e4d-11ed-bfe3-dac502259ad0.png 虚拟机创建三台服务器,CENTOS 版本为 7.6, IP 网段 192.168.116.0/24。三台主机名称为:

CENTOS7-1: IP 为 192.168.116.141, 既做管理节点, 又做子节点。

CENTOS7-2: IP 为 192.168.116.142, 子节点。

CENTOS7-3: IP 为 192.168.116.143, 子节点。

3.2 系统配置

系统配置工作, 三台节点依次执行:

修改主机名称 [root@CENTOS7-1 ~]# vi /etc/hostname


CENTOS7-1

编辑 hosts 文件

192.168.116.141 CENTOS7-1
192.168.116.142 CENTOS7-2
192.168.116.143 CENTOS7-3

注意, 这里面的主机名称要和节点名称保持一致, 否则安装的时候会出现问题

24eca4b6-8e4d-11ed-bfe3-dac502259ad0.png

修改 yum 源 vi /etc/yum.repos.d/ceph.repo, 为避免网速过慢问题, 这里采用的是清华镜像源:

[Ceph]
name=Ceph packages for $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/x86_64/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc


[Ceph-noarch]
name=Ceph noarch packages
# 官方源
#baseurl=http://download.ceph.com/rpm-mimic/el7/noarch
# 清华源
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/noarch/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc


[ceph-source]
name=Ceph source packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/SRPMS/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc

安装 ceph 与 ceph-deploy 组件

yum update && yum -y install ceph ceph-deploy
安装完成, 如果执行 ceph-deploy 出现 ImportError: No module named pkg_resources 安装 python2-pip:yum -y install python2-pip yum install epel-release -y

安装 NTP 时间同步工具

yum install ntp ntpdate ntp-doc -y

确保时区是正确, 设置开机启动:

systemctl enable ntpd

并将时间每隔 1 小时自动校准同步。编辑 vi /etc/rc.d/rc.local 追加:

/usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w

配置定时任务,执行 crontab -e 加入:

0 */1 * * * ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w

3.3 免密码 SSH 登陆

官方建议不用系统内置用户, 创建名为 ceph_user 用户, 密码也设为 ceph_user:

useradd -d /home/ceph_user -m ceph_user
passwd ceph_user

设置 sudo 权限

echo "ceph_user ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/ceph_user
sudo chmod 0440 /etc/sudoers.d/ceph_user

1、2 两个步骤依次在三台机器上执行。

接下来在主节点, 继续执行:

生成密钥:

切换用户:su ceph_user

执行 ssh-keygen,一直按默认提示点击生成 RSA 密钥信息。

分发密钥至各机器节点

ssh-copy-id ceph_user@CENTOS7-1
ssh-copy-id ceph_user@CENTOS7-2
ssh-copy-id ceph_user@CENTOS7-3

修改管理节点上的~/.ssh/config文件, 简化 SSH 远程连接时的输入信息:

管理节点是会有 root 和 ceph_user 多个用户, ssh 远程连接默认会以当前用户身份进行登陆,

如果我们是 root 身份进行远程连接, 还是需要输入密码, 我们想简化, 该怎么处理?

切换 root 身份,


su root

修改~/.ssh/config 文件

Host CENTOS7-1
   Hostname CENTOS7-1
   User ceph_user
Host CENTOS7-2
   Hostname CENTOS7-2
   User ceph_user
Host CENTOS7-3
   Hostname CENTOS7-3
   User ceph_user

注意修改文件权限, 不能采用 777 最大权限:

chmod 600 ~/.ssh/config

进行 ssh 远程连接时, Host 的主机名称是区分大小写的, 所以要注意配置文件的主机名称。

开放端口, 非生产环境, 可以直接禁用防火墙:

systemctl stop firewalld.service
systemctl disable firewalld.service

SELINUX 设置

SELinux 设为禁用:

setenforce 0

永久生效:编辑 vi /etc/selinux/config 修改:

SELINUX=disabled

3.4 集群搭建配置

采用 root 身份进行安装

在管理节点创建集群配置目录,cd /usr/local:

mkdir ceph-cluster
cd ceph-cluster

注意:此目录作为 ceph 操作命令的基准目录, 会存储处理配置信息。

创建集群, 包含三台机器节点:

ceph-deploy new CENTOS7-1  CENTOS7-2 CENTOS7-3

创建成功后, 会生一个配置文件。

如果接下来集群的安装配置出现问题, 可以执行以下命令清除, 再重新安装:

ceph-deploy purge CENTOS7-1  CENTOS7-2 CENTOS7-3
ceph-deploy purgedata CENTOS7-1  CENTOS7-2 CENTOS7-3
ceph-deploy forgetkeys

将三台节点的 mon 信息也删除

rm -rf /var/run/ceph/

修改配置文件, 有些配置后面需用到:

vi /usr/local/ceph-cluster/ceph.conf

加入:

[global]
# 公网网络
public network = 192.168.116.0/24
# 设置pool池默认分配数量 默认副本数为3
osd pool default size = 2
# 容忍更多的时钟误差
mon clock drift allowed = 2
mon clock drift warn backoff = 30
# 允许删除pool
mon_allow_pool_delete = true
[mgr]
# 开启WEB仪表盘
mgr modules = dashboard

第一项为副本数, 设为 2 份。

第二项为对外 IP 访问网段,注意根据实际 IP 修改网段。

第三、四项为允许一定时间的漂移误差。

执行安装:

ceph-deploy install  CENTOS7-1  CENTOS7-2 CENTOS7-3

如果出现错误:

ceph_deploy][ERROR ] RuntimeError: Failed to execute command: ceph --version

可以在各节点上单独进行安装:

yum -y install ceph

如果没有仓库文件 ceph.repo, 按上面的步骤手工创建。

初始 monitor 信息:

ceph-deploy mon create-initial
## ceph-deploy --overwrite-conf mon create-initial

执行完成后, 会生成以下文件:24faddd8-8e4d-11ed-bfe3-dac502259ad0.png

同步管理信息:

下发配置文件和管理信息至各节点:

ceph-deploy admin  CENTOS7-1  CENTOS7-2 CENTOS7-3

安装 mgr (管理守护进程), 大于 12.x 版本需安装, 我们装的是最新版,需执行:

ceph-deploy mgr create CENTOS7-1  CENTOS7-2 CENTOS7-3

安装 OSD (对象存储设备)

注意:新版本的 OSD 没有 prepare 与 activate 命令。

这里需要新的硬盘作为 OSD 存储设备, 关闭虚拟机, 增加一块硬盘, 不用格式化。

25095476-8e4d-11ed-bfe3-dac502259ad0.png

重启, fdisk -l 查看新磁盘名称:251ab5c2-8e4d-11ed-bfe3-dac502259ad0.png

执行创建 OSD 命令:

ceph-deploy osd create --data /dev/sdb CENTOS7-2

三台节点都需分别依次执行。

ceph-deploy gatherkeys CENTOS7-1

验证节点:

输入 ceph health 或 ceph -s 查看, 出现 HEALTH_OK 代表正常。252b2736-8e4d-11ed-bfe3-dac502259ad0.png

通过虚拟机启动,如果出现错误:

[root@CENTOS7-1 ~]# ceph -s
  cluster:
    id:     0ec99aa9-e97e-43d3-b5b9-90eb21c4abff
    health: HEALTH_WARN
            1 filesystem is degraded
            1 osds down
            1 host (1 osds) down
            Reduced data availability: 41 pgs inactive
            Degraded data redundancy: 134/268 objects degraded (50.000%), 22 pgs degraded, 87 pgs undersized
            39 slow ops, oldest one blocked for 2286 sec, daemons [osd.0,mon.CENTOS7-2,mon.CENTOS7-3] have slow ops.
            clock skew detected on mon.CENTOS7-2, mon.CENTOS7-3
 
  services:
    mon: 3 daemons, quorum CENTOS7-1,CENTOS7-2,CENTOS7-3
    mgr: centos7-1(active), standbys: centos7-3, centos7-2
    mds: fs_test-1/1/1 up  {0=centos7-1=up:replay}
    osd: 3 osds: 1 up, 2 in
 
  data:
    pools:   9 pools, 128 pgs
    objects: 134  objects, 64 KiB
    usage:   1.0 GiB used, 19 GiB / 20 GiB avail
    pgs:     32.031% pgs unknown
             134/268 objects degraded (50.000%)
             65 active+undersized
             41 unknown
             22 active+undersized+degraded

在各节点执行命令,确保时间同步一致:

ntpdate ntp1.aliyun.com 

3.5 安装管理后台

开启 dashboard 模块

ceph mgr module enable dashboard

生成签名

ceph dashboard create-self-signed-cert

创建目录

mkdir mgr-dashboard

[root@CENTOS7-1 mgr-dashboard]# pwd
/usr/local/ceph-cluster/mgr-dashboard

生成密钥对

cd  /usr/local/ceph-cluster/mgr-dashboard
openssl req -new -nodes -x509   -subj "/O=IT/CN=ceph-mgr-dashboard" -days 3650   -keyout dashboard.key -out dashboard.crt -extensions v3_ca
[root@CENTOS7-1 mgr-dashboard]# ll
total 8
-rw-rw-r-- 1 ceph_user ceph_user 1155 Jul 14 02:26 dashboard.crt
-rw-rw-r-- 1 ceph_user ceph_user 1704 Jul 14 02:26 dashboard.key

启动 dashboard

ceph mgr module disable dashboard
ceph mgr module enable dashboard

设置 IP 与 PORT

ceph config set mgr mgr/dashboard/server_addr 192.168.116.141
ceph config set mgr mgr/dashboard/server_port 18843

关闭 HTTPS

ceph config set mgr mgr/dashboard/ssl false

查看服务信息

[root@CENTOS7-1 ceph-cluster]# ceph mgr services
{
    "dashboard": "http://192.168.116.142:18843/"
}

设置管理用户与密码

ceph dashboard set-login-credentials admin admin

访问

253971e2-8e4d-11ed-bfe3-dac502259ad0.png

3.6 创建 Cephfs

集群创建完后, 默认没有文件系统, 我们创建一个 Cephfs 可以支持对外访问的文件系统。

ceph-deploy --overwrite-conf mds create CENTOS7-1 CENTOS7-2 CENTOS7-3

创建两个存储池,执行两条命令:

ceph osd pool create cephfs_data 128
ceph osd pool create cephfs_metadata 64

少于 5 个 OSD 可把 pg_num 设置为 128

OSD 数量在 5 到 10,可以设置 pg_num 为 512

OSD 数量在 10 到 50,可以设置 pg_num 为 4096

OSD 数量大于 50,需要计算 pg_num 的值

通过下面命令可以列出当前创建的存储池:

ceph osd lspools

创建 fs, 名称为 fs_test:

ceph fs new fs_test cephfs_metadata cephfs_data

状态查看, 以下信息代表正常:

[root@CENTOS7-1 mgr-dashboard]# ceph fs ls
name: fs_test, metadata pool: cephfs_metadata, data pools: [cephfs_data ]
[root@CENTOS7-1 mgr-dashboard]# ceph mds stat
fs_test-1/1/1 up  {0=centos7-1=up:active}

附:如果创建错误, 需要删除, 执行:

ceph fs rm fs_test --yes-i-really-mean-it
ceph osd pool delete cephfs_data cephfs_data  --yes-i-really-really-mean-it

确保在 ceph.conf 中开启以下配置:

[mon]
mon allow pool delete = true

采用 fuse 挂载

先确定 ceph-fuse 命令能执行, 如果没有, 则安装:

 

yum -y install ceph-fuse

创建挂载目录


mkdir -p /usr/local/cephfs_directory

挂载 cephfs

[root@node3 ~]# ceph-fuse -k /etc/ceph/ceph.client.admin.keyring -m 192.168.116.141:6789 /usr/local/cephfs_directory
ceph-fuse[6687]: starting ceph client
2019-07-14 2109.644181 7fa5be56e040 -1 init, newargv = 0x7fa5c940b500 newargc=9
ceph-fuse[6687]: starting fuse

查看磁盘挂载信息

[root@CENTOS7-1 mgr-dashboard]# df -h
Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   38G  3.0G   35G   8% /
devtmpfs                 1.9G     0  1.9G   0% /dev
tmpfs                    1.9G     0  1.9G   0% /dev/shm
tmpfs                    1.9G   20M  1.9G   2% /run
tmpfs                    1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/sda1                197M  167M   31M  85% /boot
tmpfs                    378M     0  378M   0% /run/user/0
tmpfs                    1.9G   24K  1.9G   1% /var/lib/ceph/osd/ceph-0
ceph-fuse                 27G     0   27G   0% /usr/local/cephfs_directory
tmpfs                    378M     0  378M   0% /run/user/1000

/usr/local/cephfs_directory 目录已成功挂载。

3.7 客户端连接验证 (Rados Java)

安装好 JDK、GIT 和 MAVEN。

下载 rados java 客户端源码


git clone https://github.com/ceph/rados-java.git

下载目录位置:

[root@CENTOS7-1 rados-java]# pwd
/usr/local/sources/rados-java

执行 MAVEN 安装,忽略测试用例:

[root@CENTOS7-1 rados-java]# mvn install -Dmaven.test.skip=true

生成 jar 包, rados-0.7.0.jar

[root@CENTOS7-1 target]# ll
总用量 104
drwxr-xr-x 3 root root     17 8月  11 18:32 classes
drwxr-xr-x 2 root root     27 8月  11 18:32 dependencies
drwxr-xr-x 3 root root     25 8月  11 18:32 generated-sources
drwxr-xr-x 2 root root     28 8月  11 18:32 maven-archiver
drwxr-xr-x 3 root root     35 8月  11 18:32 maven-status
-rw-r--r-- 1 root root 105701 8月  11 18:32 rados-0.7.0.jar

创建软链接, 加入 CLASSPATH

ln -s /usr/local/sources/rados-java/target/rados-0.7.0.jar /opt/jdk1.8.0_301/jre/lib/ext/rados-0.7.0.jar

安装 jna


yum -y install jna

创建软链接

ln -s /usr/share/java/jna.jar /opt/jdk1.8.0_301/jre/lib/ext/jna.jar

查看

[root@CENTOS7-1 target]# ll /opt/jdk1.8.0_301/jre/lib/ext/jna.jar
lrwxrwxrwx 1 root root 23 8月  11 19:00 /opt/jdk1.8.0_301/jre/lib/ext/jna.jar -> /usr/share/java/jna.jar
[root@CENTOS7-1 target]# ll /opt/jdk1.8.0_301/jre/lib/ext/jna.jar
lrwxrwxrwx 1 root root 23 8月  11 19:00 /opt/jdk1.8.0_301/jre/lib/ext/jna.jar -> /usr/share/java/jna.jar

创建 JAVA 测试类

CephClient 类,注意, 最新版 0.6 的异常处理包位置已发生变化。

import com.ceph.rados.Rados;
import com.ceph.rados.exceptions.*;


import java.io.File;


public class CephClient {
        public static void main (String args[]){


                try {
                        Rados cluster = new Rados("admin");
                        System.out.println("Created cluster handle.");


                        File f = new File("/etc/ceph/ceph.conf");
                        cluster.confReadFile(f);
                        System.out.println("Read the configuration file.");


                        cluster.connect();
                        System.out.println("Connected to the cluster.");


                } catch (RadosException e) {
                        System.out.println(e.getMessage() + ": " + e.getReturnValue());
                }
        }
}

运行验证

需要在 linux 环境下运行,且要在 client 节点。

编译并运行:

[root@CENTOS7-1 sources]# javac CephClient.java 
[root@CENTOS7-1 sources]# java CephClient
Created cluster handle.
Read the configuration file.
Connected to the cluster.

成功与 ceph 建立连接。

注意:如果 java 和 javac 版本不同,可以使用 rpm -qa |grep java 进行查找, rpm -e --nodeps jdk 进行删除,source /etc/profile 进行生效

jdk 的位数为 64 位

作者 |博学谷狂野架构师

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 存储系统
    +关注

    关注

    2

    文章

    402

    浏览量

    40823
  • 分布式存储
    +关注

    关注

    4

    文章

    168

    浏览量

    19490
  • Ceph
    +关注

    关注

    1

    文章

    22

    浏览量

    9392

原文标题:一文参透分布式存储系统Ceph的架构设计、集群搭建

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    分布式存储架构:第三节 分布式文件模型 #分布式架构  #分布式存储系统 #分布式系统 #硬声创作季

    云计算存储系统分布式系统分布式存储分布式存储系统
    学习硬声知识
    发布于 :2022年10月21日 14:28:49

    Hadoop集群分布式搭建步骤

    Hadoop集群分布式搭建
    发表于 11-04 09:19

    Ceph是什么?Ceph的统一存储方案简析

    Ceph是什么?Ceph个开源的分布式存储系统,可大规模扩展、高性能、无单点故障,在普通的服务器上可以支持到PB级容量,商用机器上支持的
    发表于 10-08 15:40

    还在用Ceph吗?不如试试性能更好的碧海存储

    对于分布式存储产品,朋友们第反应总是:基于Ceph的吗? Ceph、HDFS、Glusterfs、Lustre、BeeGFS都是优秀的
    发表于 03-27 07:25 644次阅读

    关于腾讯的开源分布式存储系统DCache

    腾讯最近开源了分布式 NoSQL 存储系统 DCache,它的典型应用场景就在分布式缓存。根据官方介绍,DCache 基于 TARS 微服务治理方案,它支持 k-v、k-k-row
    发表于 08-01 10:42 2000次阅读

    盘点分布式存储系统的主流框架

    整个大数据处理的体系,按我的理解可以分为两个部分,个是分布式存储系统、另个是分布式计算框架。分布式
    发表于 08-06 09:07 2617次阅读

    分布式文件存储系统GFS的基础知识

    GFS是google的分布式文件存储系统,是专为存储海量搜索数据而设计的,2003年提出,是闭源的分布式文件系统
    发表于 08-25 17:49 5882次阅读
    <b class='flag-5'>分布式</b>文件<b class='flag-5'>存储系统</b>GFS的基础知识

    常见的分布式存储系统有哪些类型

    分布式存储系统是大数据技术学习过程中会经常接触到的个工具,而今天我们就起来了解下,常见的
    发表于 11-09 10:41 2.8w次阅读

    常见的分布式文件存储系统的优缺点

    分布式文件系统,可以说是分布式系统下的个子集,这里我们选取市场应用比较广泛的几款产品,HDFS、Cep
    发表于 01-15 09:45 9968次阅读
    常见的<b class='flag-5'>分布式</b>文件<b class='flag-5'>存储系统</b>的优缺点

    存储中的Ceph分布式文件系统及节点选择

    集群中高效分布数据对象及其副本。经典Ceph存储系统中在副本模式下选择存储节点时该系统仅以节点
    发表于 03-31 10:46 13次下载
    云<b class='flag-5'>存储</b>中的<b class='flag-5'>Ceph</b><b class='flag-5'>分布式</b>文件<b class='flag-5'>系统</b>及节点选择

    种可行的分布式存储系统安全构造方法

    核心薄弱点,结合防护的代价与有效性提出种可行的系统安全构造方法。以大数据 Hadoop分布式文件系统为目标对象,设计面向元数据服务的拟态化架构
    发表于 04-02 11:01 21次下载
    <b class='flag-5'>一</b>种可行的<b class='flag-5'>分布式</b><b class='flag-5'>存储系统</b>安全构造方法

    Ceph分布式存储系统性能优化研究综述

    Ceph个统分布式存储系统,可同时提供块、文件和对象3种接口的存储服务。与传统的
    发表于 04-13 13:58 5次下载
    <b class='flag-5'>Ceph</b><b class='flag-5'>分布式</b><b class='flag-5'>存储系统</b>性能优化研究综述

    个去中心化的分布式存储系统Ceph概述

    Ceph个去中心化的分布式存储系统, 提供较好的性能、可靠性和可扩展性。
    发表于 09-02 10:11 1724次阅读

    Ceph分布式存储简介&amp;Ceph数据恢复流程

    Ceph存储可分为块存储,对象存储和文件存储Ceph基于对象
    的头像 发表于 09-26 15:41 842次阅读

    基于分布式存储系统医疗影像数据存储解决方案

    基于分布式存储系统医疗影像数据存储解决方案
    的头像 发表于 09-14 09:53 235次阅读
    基于<b class='flag-5'>分布式</b><b class='flag-5'>存储系统</b>医疗影像数据<b class='flag-5'>存储</b>解决方案