部署MON
MON(Monitor)负责监控整个Ceph集群的状态。部署MON操作步骤仅需要在主节点ceph1执行。
- 创建Ceph集群(以ceph1 ceph2 ceph3三个节点配置为例)。
1 2
cd /etc/ceph ceph-deploy new ceph1 ceph2 ceph3
- 配置Ceph集群的全局参数和MON参数。
配置节点命令以及使用ceph-deploy配置OSD时,需在“/etc/ceph”目录下执行,否则会报错。
- 打开“/etc/ceph”目录下自动生成的ceph.conf文件。
1
vi /etc/ceph/ceph.conf
- 按“i”进入编辑模式,将ceph.conf中的内容修改为如下信息(使用最新生成的fsid)。
1 2 3 4 5 6 7 8 9 10 11 12 13
[global] fsid = f5a4f55c-d25b-4339-a1ab-0fceb4a2996f mon_initial_members = ceph1, ceph2, ceph3 mon_host = 192.168.3.166,192.168.3.167,192.168.3.168 auth_cluster_required = cephx auth_service_required = cephx auth_client_required = cephx public_network = 192.168.65.0/24 cluster_network = 192.168.66.0/24 [mon] mon_allow_pool_delete = true
对于单节点环境,还需要在[global]下添加如下内容:
1 2
osd_pool_default_size = 1 osd_pool_default_min_size = 1
- 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
Ceph 14.2.8版本在使用bluestore引擎的时候默认会打开bluefs的buffer开关,可能导致系统下内存全部被buff/cache占用,导致性能下降。可以采用以下两种方案解决:- 在集群压力不大的场景下可以将bluefs_buffered_io开关设置成false。
- 可以通过定时执行如下命令来强制回收buffer/cache中的内存:
echo 3 > /proc/sys/vm/drop_caches
- 打开“/etc/ceph”目录下自动生成的ceph.conf文件。
- 初始化监视器并收集密钥。
1
ceph-deploy mon create-initial
- 将3执行成功后生成的“ceph.client.admin.keyring”拷贝到各个节点上。
1
ceph-deploy --overwrite-conf admin ceph1 ceph2 ceph3 client1 client2 client3
- 检查Ceph集群的状态,确认是否配置MON成功。
1
ceph -s
配置MON成功的预期结果:
1 2 3 4 5
cluster: id: f6b3c38c-7241-44b3-b433-52e276dd53c6 health: HEALTH_OK services: mon: 3 daemons, quorum ceph1,ceph2,ceph3 (age 25h)
若出现mon生成失败问题,可能是权限配置问题,需要配置ceph组和用户:/usr/sbin/groupadd ceph -g 167 -o -r 2>/dev/null || :/usr/sbin/useradd ceph -u 167 -o -r -g ceph -s /sbin/nologin -c "Ceph daemons" -d /var/lib/ceph 2>/dev/null || :
父主题: 部署Ceph