ceph集群在线添加||删除+mon&&osd

时间:2022-05-03 12:47:07

前提:在配置文件中添加相应的设置,复制到各个节点,当某个osd或者mon出现问题时可以通过删除后重新添加来解决。

OSD删除

1、  将osd从集群中移除。

Ceph osd out{osd-num}

2、  停止osd服务。

/etc/init.d/ceph stop osd.{osd-num}

3、  移除osd。

Ceph osd crush remove osd.{osd-num}

Ceph auth del osd.{osd-num}

Ceph osd rm {osd-num}

4、  删除ceph.conf中的相应信息。

OSD添加

在添加OSD之前,同样需要在配置文件中加入新的osd,以及修改主节点的/etc/hosts文件,配置无密码访问,拷贝ceph.conf文件到每个节点,下面的uuid即为当前集群的uuid。

1、  ceph osd create {uuid}

生成的数字即为osd-num

2、  ceph-osd -i {osd-num} --mkfs --mkkey

生成osd的keyring,需要清空作为osd的目录下的所有数据,否则会出错。

3、ceph auth add osd.{osd-num} osd 'allow *' mon 'allow rwx' -i /path-to/keyring

将生成的keyring添加给osd。

将生成的keyring添加给osd。

4、  ceph osd crush add-bucket {hostname} host


5、  ceph osd crush move {hostname} root=default

6、  ceph osd crush add {id-or-name} {weight} {bucket-type=bucket-name}

7、  /etc/init.d/ceph start osd.{osd-num}

Mon添加

1、  ceph auth get mon. –o {monkeyring}

2、  ceph mon getmap –o {monmap}

3、  ceph-mon -i {mon-id}  --mkfs  --monmap {monmap}  --keyring {monkeyring}

4、  ceph mon add {mon.id} {IP}:{port}

5、  /etc/init.d/ceph start mon.3

Mon删除

从健康的集群中删除

1、  service ceph –a stop mon.{mon-id}

2、  ceph mon remove {mon-id}

3、  从ceph.conf中删除

从不健康的集群中删除

1、  ceph mon dump

2、  service ceph stop mon

3、  ceph-mon –i {mon-id} --extract-monmap {mappath}

4、  monmaptool {mappath}  -rm {mon-id}

5、  ceph-mon –I {mon-id} –inject-monmap {monpath}