问题描述
该笔记将记录:我们部署测试 Ceph Cluster 的过程,以及相关问题的解决办法;
解决方案
参考 Installing Ceph 文档,以获取安装相关的官方详细说明,这里仅做简单记录;
第一步、版本选择
鉴于我们是测试部署,所以直接部署最新版本 Ceph 17;
第二步、服务部署
通过 ceph-deploy 进行部署(Quickstart)。但是 ceph-deploy 已不再主动维护,其未在 Nautilus 之上的测试。在对比其他部署工具并结合我们的工作场景后,我们决定在测试环境中使用 Cephadm 进行部署(需要 container 与 systemd 来管理);
该部分将记录:通过 cephadm 命令,部署 Ceph 测试集群(学习)的方法,以及相关问题的解决办法;
#1 环境准备工作
对于非生产环境下的Ceph集群的最小化部署,推荐最少配置3个节点。节点角色可以复用。条件允许的情况下,可以配置3 MON+3 OSD+3 Gateway+1Client。
实验环境下服务器的最小配置如下:
Hardware | Ceph OSD | Ceph Mon / Ceph Mgr | Ceph RGW | Ceph MDS |
---|---|---|---|---|
CPU | 1vCPU | 1vCPU | 1vCPU | 1vCPU |
RAM | 16GB+5GB*OSD | 1G/Daemon | 1G/Daemon | 2G/Daemon |
DISK | OS * 1 + OSD * N | OS * 1 + 15GB*Daemon | OS * 1 + 5GB*Daemon | 2MB*Daemon + Log |
Network | 1000Mbps * 2 | 1000Mbps * 2 | 1000Mbps * 2 | 1000Mbps * 2 |
我们需要通过 SSH 连接到各节点服务器上,然后通过执行 cephadm 命令来完成 Ceph Cluster 部署;
Ceph 对时间要求很高,建议在部署 Ceph 集群的时候提前配置好 NTP 服务器;
Ceph 安装对网络要求不高,但是鉴于 Ceph 源在外国有时候会被屏蔽,解决办法多尝试机器或者代理;
#2 通过 Cephadm 部署
WIP
第三步、配置使用
创建 CephFS 实例
CephFS Quick Start — Ceph Documentation
ceph-deploy mds create {host-name}[:{daemon-name}] [{host-name}[:{daemon-name}] ...] ceph -s [-m {monitor-ip-address}] [-k {path/to/ceph.client.admin.keyring}] ceph osd pool create cephfs_data <pg_num> ceph osd pool create cephfs_metadata <pg_num> ceph fs new <fs_name> cephfs_metadata cephfs_data ceph auth get client.admin -o /tmp/admin.secret mount -t ceph 192.168.0.1:6789:/ /mnt/mycephfs -o name=admin,secretfile=admin.secret