【注意】最后更新于 February 20, 2023,文中内容可能已过时,请谨慎使用。
Cephfs探索之旅第一天
文章地址:http://localhost:1313/post/storage/1_2023_02_13_day1_Cephfs/
https://github.com/watchpoints/ceph
https://docs.ceph.com/en/quincy/
icfsfs:?
OSD:?
MDS:Metadata Server
子树划?
当Windows是 Client,CentOS是服务器时,通过Samba就可以实现window访问Linux的资源,实现两个系统间的数据交互。samba服务程序已经成为在Linux系统和Windows系统之间共享文件的最佳选择
资料
Ceph 撸源码系列(一)
- Ceph 撸源码系列(一):Ceph开源项目源代码的关键目录介绍
https://blog.csdn.net/don_chiang709/article/details/99289441
- Ceph 撸源码系列(二):Ceph源代码里的那些锁 std::mutex(2 of 3)
- Ceph 撸源码系列(三):Ceph OSDC源码分析 (1 of 2)
Ceph OSDC源码分析(上篇)
- Ceph OSD定义
1
2
3
4
5
6
7
8
9
|
Ceph OSD:OSD的英文全称是Object Storage Device,
它的主要功能是存储数据、复制数据、平衡数据、恢复数据等,
与其它OSD间进行心跳检查等,并将一些变化情况上报给Ceph Monitor。一
般情况下一块硬盘对应一个OSD,由OSD来对硬盘存储进行管理,
当然一个分区也可以成为一个OSD。
https://github.com/lidaohang/ceph_study/blob/master/CephFS%E4%BB%8B%E7%BB%8D%E5%8F%8A%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB.md
osd:Object storage cluster,对象存储集群(将数据和元数据作为对象存储,执行其他关键职能)
|
-
RBD:RBD全称RADOS block device,是Ceph对外提供的块设备服务。
-
RADOS
1
2
3
4
5
6
7
8
|
RADOS自身是一个完整的分布式对象存储系统,它具有可靠、智能、分布式等特性,Ceph的高可靠、高可拓展、高性能、高自动化都是由这一层来提供的,用户数据的存储最终也都是通过这一层来进行存储的,RADOS可以说就是Ceph的核心。
https://github.com/lidaohang/ceph_study/blob/master/CephFS%E4%BB%8B%E7%BB%8D%E5%8F%8A%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB.md
Ceph基础知识和基础架构认识
https://github.com/lidaohang/ceph_study/blob/master/CephFS%E4%BB%8B%E7%BB%8D%E5%8F%8A%E7%BB%8F%E9%AA%8C%E5%88%86%E4%BA%AB.md
|
三、Ceph OSDC源码分析(下篇)
- Ceph 撸源码系列(三):Ceph OSDC源码分析 (2 of 2)
- 【ceph】CEPH源码解析:读写流程
- Ceph学习——Librados与Osdc实现源码解析
四、MDS
Ceph是一个去中心化的分布式存储系统, 提供较好的性能、可靠性和可扩展性。
Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区
-
13.1 MDS启动阶段分析
https://juejin.cn/post/6844903760745988109
论文
- [译] [论文] Ceph: A Scalable, High-Performance Distributed File System (OSDI 2006)
-
为什么说 Ceph存储集群至少需要一个Ceph Monitor和两个OSD守护进程。而运行Ceph文件系统客户端时,则必须要有元数据服务器(Metadata Server)?
-
干货分享丨闹心的large omap objects
五、存储引擎实
- 解析Ceph: 存储引擎实现之一–FileStore
- Ceph学习笔记(二):RADOS架构
Cephfs探索之旅第二天
一、搭建环境
- centos8部署一个单点ceph
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
https://docs.ceph.com/en/pacific/cephadm/install/#install-cephadm
https://blog.csdn.net/Kangyucheng/article/details/125870998
cephadm
dnf install --assumeyes centos-release-ceph-pacific.noarch
dnf install --assumeyes cephadm
cephadm bootstrap --mon-ip 192.168.192.163
Ceph Dashboard is now available at:
URL: https://10.141.162.38:8443/
User: admin
Password: 5cu0md9oet
Enabling client.admin keyring and conf on hosts with "admin" label
You can access the Ceph CLI with:
sudo /usr/sbin/cephadm shell --fsid d150c3bc-b40f-11ed-ba4f-9cc2c42aed5b -c /etc/ceph/ceph.conf -k /etc/ceph/ceph.client.admin.keyring
Please consider enabling telemetry to help improve Ceph:
ceph telemetry on
https://10.141.162.25:8443/
ceph orch apply osd --all-available-devices
ceph orch apply的默认行为导致 cephadm 不断协调。这意味着一旦检测到新驱动器,cephadm 就会创建 OSD
ceph orch apply osd --all-available-devices --unmanaged=true
禁用在可用设备上自动创建 OSD
mon Storage45 is low on available space
the monitor is default installed on the root partition (pve-root).
cephadm shell ceph -s
cephadm install ceph-common
问题: Failed to apply 1 service(s): osd.all-available-devices
六、创建cephfs
|
docker 安装
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
cephadm需要容器支持(podman或docker)和Python 3
centos8默认使用podman代替docker
sudo yum -y install podman
podman -v
使用cephadm安装ceph octopus
https://cloud.tencent.com/developer/article/1761334
如果满足以下所有_条件_,则存储设备被视为可用:
cephadm shell ceph orch device ls
设备必须没有分区。
设备不得具有任何 LVM 状态。
不得安装设备。
设备不能包含文件系统。
设备不得包含 Ceph BlueStore OSD。
设备必须大于 5 GB
RedHat/CentOS8【Podman】安装和配置
https://www.jianshu.com/p/d69017fac5dc
[root@host ~]# dnf install podman podman-plugins cockpit cockpit-podman
[root@host ~]# systemctl enable --now podman
[root@host ~]# systemctl enable --now cockpit.socket
|
问题: Failed to apply 1 service(s): osd.all-available-devices
- 部署osd
1
2
3
4
5
6
|
cephadm shell ceph orch daemon add osd kyc:/data/kv/1
cephadm shell ceph orch daemon add osd kyc:/data/kv/2
cephadm shell ceph orch daemon add osd kyc:/data/kv/3
|
1
2
|
yum -y install ceph-deploy epel-release python-pip ceph ceph-radosgw chrony
|
Cephfs探索之旅第三天
一. ceph源码解读
https://www.jianshu.com/u/5c59bd9b10db