编辑
2023-04-13
搭建文档
00
请注意,本文编写于 399 天前,最后修改于 399 天前,其中某些信息可能已经过时。

目录

CentOS 7 Ceph共享存储搭建文档
1. 系统要求
2. 安装前准备
2.1 更新系统并安装必要的软件包
2.2 配置主机名和hosts文件
3. 安装Ceph
3.1 添加Ceph存储库
3.2 安装Ceph
4. 配置Ceph集群
4.1 创建Ceph集群
4.2 修改Ceph配置文件
4.3 安装Ceph Monitor和Manager
4.4 安装Ceph OSD
4.5 复制Ceph配置文件和密钥
5. 验证Ceph集群状态
5.1 查看Ceph集群健康状态
5.2 查看Ceph集群状态
6. 创建Ceph Pool
6.1 创建Ceph对象存储池
6.2 查看已创建的Ceph池
7. 使用Ceph块设备(RBD)
7.1 创建RBD映像
7.2 查看RBD映像列表
8. 设置CephFS(Ceph文件系统)
8.1 创建元数据服务器(MDS)
8.2 创建CephFS文件系统
8.3 挂载CephFS
9. 故障排查
10. 参考文档
11. 扩展Ceph集群
11.1 添加新的MON节点
11.2 添加新的OSD节点
11.3 添加新的MDS节点
12. 移除Ceph组件
12.1 移除OSD
12.2 移除MON
12.3 移除MDS
13. 结论

CentOS 7 Ceph共享存储搭建文档

本文档将指导你如何在CentOS 7上搭建Ceph共享存储。Ceph是一个高度可扩展的分布式存储系统,可提供对象、块和文件系统存储。下面是搭建Ceph集群的步骤。

1. 系统要求

  • 至少3台运行CentOS 7的服务器(一个MON节点和两个OSD节点)
  • 每台服务器至少有一个额外的磁盘用于存储数据
  • 服务器之间需要有网络互通

2. 安装前准备

2.1 更新系统并安装必要的软件包

在所有节点上执行以下命令:

sudo yum update -y sudo yum install -y epel-release sudo yum install -y python-pip

2.2 配置主机名和hosts文件

在所有节点上设置主机名:

sudo hostnamectl set-hostname mon-node sudo hostnamectl set-hostname osd-node1 sudo hostnamectl set-hostname osd-node2

在所有节点的/etc/hosts文件中添加以下内容:

<mon-node-ip> mon-node <osd-node1-ip> osd-node1 <osd-node2-ip> osd-node2

3. 安装Ceph

3.1 添加Ceph存储库

在所有节点上执行以下命令:

sudo rpm -Uvh https://download.ceph.com/rpm-nautilus/el7/noarch/ceph-release-1-1.el7.noarch.rpm

3.2 安装Ceph

在所有节点上执行以下命令:

sudo yum install -y ceph ceph-deploy

4. 配置Ceph集群

4.1 创建Ceph集群

在MON节点上执行以下命令:

sudo ceph-deploy new mon-node

4.2 修改Ceph配置文件

在MON节点的ceph.conf文件中添加以下内容:

osd pool default size = 2 osd pool default min size = 1 osd pool default pg num = 128 osd pool default pgp num = 128

4.3 安装Ceph Monitor和Manager

在MON节点上执行以下命令:

sudo ceph-deploy mon create-initial sudo ceph-deploy mgr create mon-node

4.4 安装Ceph OSD

在所有OSD节点上执行以下命令(将<osd-disk>替换为要用于存储数据的磁盘):

sudo ceph-deploy osd create --data <osd-disk> osd-node1 sudo ceph-deploy osd create --data <osd-disk> osd-node2

4.5 复制Ceph配置文件和密钥

在MON节点上执行以下命令:

sudo ceph-deploy admin mon-node osd-node1 osd-node2

5. 验证Ceph集群状态

5.1 查看Ceph集群健康状态

在MON节点上执行以下命令:

sudo ceph health

如果一切正常,你会看到HEALTH_OK的输出。

5.2 查看Ceph集群状态

在MON节点上执行以下命令:

sudo ceph -s

输出将显示集群的详细信息,包括监视器、管理器、OSD和PG(Placement Group)的状态。

6. 创建Ceph Pool

6.1 创建Ceph对象存储池

在MON节点上执行以下命令(将<pool-name>替换为你选择的池名称):

sudo ceph osd pool create <pool-name> 128

6.2 查看已创建的Ceph池

在MON节点上执行以下命令:

sudo ceph osd lspools

输出将显示所有已创建的池及其ID。

7. 使用Ceph块设备(RBD)

7.1 创建RBD映像

在MON节点上执行以下命令(将<pool-name>替换为你选择的池名称,将<image-name>替换为你选择的映像名称,将<image-size>替换为映像大小):

sudo rbd create <pool-name>/<image-name> --size <image-size> --image-feature layering

7.2 查看RBD映像列表

在MON节点上执行以下命令(将<pool-name>替换为你选择的池名称):

sudo rbd ls <pool-name>

输出将显示所有已创建的RBD映像。

8. 设置CephFS(Ceph文件系统)

8.1 创建元数据服务器(MDS)

在MON节点上执行以下命令:

sudo ceph-deploy mds create mon-node

8.2 创建CephFS文件系统

在MON节点上执行以下命令(将<pool-name>替换为你选择的数据池和元数据池的名称):

sudo ceph osd pool create <data-pool-name> 128 sudo ceph osd pool create <metadata-pool-name> 128 sudo ceph fs new cephfs <metadata-pool-name> <data-pool-name>

8.3 挂载CephFS

在客户端节点上安装Ceph客户端:

sudo yum install -y ceph-fuse

挂载CephFS(将<mon-node-ip>替换为MON节点的IP地址):

sudo mkdir /mnt/cephfs sudo ceph-fuse /mnt/cephfs -m <mon-node-ip>:6789

9. 故障排查

如果遇到问题,可以查看Ceph相关日志,位于/var/log/ceph目录下。

10. 参考文档

11. 扩展Ceph集群

11.1 添加新的MON节点

在新的MON节点上执行以下命令:

sudo ceph-deploy mon add <new-mon-node>

11.2 添加新的OSD节点

在新的OSD节点上执行以下命令(将<osd-disk>替换为要用于存储数据的磁盘):

sudo ceph-deploy osd create --data <osd-disk> <new-osd-node>

11.3 添加新的MDS节点

在新的MDS节点上执行以下命令:

sudo ceph-deploy mds create <new-mds-node>

12. 移除Ceph组件

如果需要移除Ceph组件,可以使用以下命令:

12.1 移除OSD

在MON节点上执行以下命令(将<osd-id>替换为要移除的OSD的ID):

sudo ceph osd out <osd-id> sudo ceph osd crush remove osd.<osd-id> sudo ceph auth del osd.<osd-id> sudo ceph osd rm <osd-id>

在OSD节点上执行以下命令:

sudo systemctl stop ceph-osd@<osd-id> sudo systemctl disable ceph-osd@<osd-id>

12.2 移除MON

在MON节点上执行以下命令(将<mon-id>替换为要移除的MON的ID):

sudo ceph mon remove <mon-id>

12.3 移除MDS

在MON节点上执行以下命令(将<mds-id>替换为要移除的MDS的ID):

sudo ceph mds rm <mds-id> --yes-i-really-mean-it

在MDS节点上执行以下命令:

sudo systemctl stop ceph-mds@<mds-id> sudo systemctl disable ceph-mds@<mds-id>

13. 结论

现在你已经成功搭建了一个Ceph共享存储集群,并学会了如何创建和管理Ceph对象、块和文件系统存储。你还了解了如何扩展和移除Ceph集群中的组件。希望这个指南能帮助你更好地理解和使用Ceph.

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:丁一

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!