首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

ceph新增节点(4)

ceph新增节点(4)

添加元数据服务器

至少需要一个元数据服务器才能使用 CephFS ,执行下列命令创建元数据服务器:

sudo ceph-deploy mds create ceph4



注意,当前生产环境下的 Ceph 只能运行一个元数据服务器。你可以配置多个,但现在ceph还不会为多个元数据服务器的集群提供商业支持。
添加 MONITORS

Ceph 存储集群需要至少一个 Monitor 才能运行。为达到高可用,典型的 Ceph 存储集群会运行多个 Monitors,这样在单个 Monitor 失败时不会影响 Ceph 存储集群的可用性。Ceph 使用 PASOX 算法,此算法要求有多半 monitors(即 1 、 2:3 、 3:4 、 3:5 、 4:6 等 )形成法定人数。

新增监视器到 Ceph 集群。

sudo ceph-deploy mon add ceph4

如果报错[ceph_deploy][ERROR ] RuntimeError: mon keyring not found; run ‘new’ to create a new cluster

主要需要需要注意 配置文件和key的同步 以及编辑ceph.conf看看里面的配置是否正确。

ceph-deploy --overwrite-conf config push admin ceph4

ceph-deploy admin ceph4



如果报错

[ceph4][DEBUG ] === mon.ceph4 ===
[ceph4][DEBUG ] Starting Ceph mon.ceph4 on ceph4...
[ceph4][WARNIN] 2018-05-25 01:40:56.446526 7ffbbc5297a0 -1 no public_addr or public_network specified, and mon.ceph4 not present in monmap or ceph.conf
[ceph4][DEBUG ] failed: 'ulimit -n 32768;   /usr/bin/ceph-mon -i ceph4 --pid-file /var/run/ceph/mon.ceph4.pid -c /etc/ceph/ceph.conf --cluster ceph '
[ceph4][ERROR ] RuntimeError: command returned non-zero exit status: 1
[ceph_deploy.mon][ERROR ] Failed to execute command: /sbin/service ceph -c /etc/ceph/ceph.conf start mon.ceph4
[ceph_deploy][ERROR ] GenericError: Failed to add monitor to host:  ceph4




说明缺少public_network的配置

在admin节点找到ceph.conf

sudo vi ceph.conf



把新的mon节点的ip加入mon_host,把新mon节点的hostname加入mon_initial_members,同时加入public_network配置,public_network与自己的内网ip段对应。
例如:
public_network=192.168.199.0/24
我们的配置如下:

[global]
fsid = 5862afaf-4f46-4d6f-9d30-cb911ce335fc
mon_initial_members = ceph1, ceph2, ceph3,ceph4
mon_host = 192.168.199.81,192.168.199.82,192.168.199.83,192.168.199.84
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
public_network=192.168.199.0/24
osd pool default size = 2
osd pool default min size = 1
osd pool default pg num = 120
osd pool default pgp num = 120
osd crush chooseleaf type = 1



重新在admin节点运行

ceph-deploy --overwrite-conf config push admin ceph1 ceph2 ceph3 ceph4
sudo ceph-deploy --overwrite-conf mon add ceph4




新增 Monitor 后,Ceph 会自动开始同步并形成法定人数。你可以用下面的命令检查法定人数状态:

ceph quorum_status --format json-pretty



Tip 当你的 Ceph 集群运行着多个 monitor 时,各 monitor 主机上都应该配置 NTP ,而且要确保这些 monitor 位于 NTP 服务的同一级。

实在不行重新定义一个新集群

则使用以下命令重新声明monitor新集群

sudo ceph-deploy new ceph1 ceph2 ceph3 ceph4
sudo ceph-deploy  --overwrite-conf mon  create-initial
返回列表