ceph扩容
在fuel openstack里挂载存储增加OSD
环境介绍:
单独部署了ceph节点,挂载后端存储,增加osd节点,扩容ceph
扩容前的容量
root@node-92:~# ceph -s cluster 32bf310c-358b-47bc-afc7-25b961477c84 health HEALTH_WARN too many PGs per OSD (480 > max 300) monmap e1: 1 mons at {node-99=192.168.1.4:6789/0} election epoch 1, quorum 0 node-99 osdmap e313: 4 osds: 4 up, 4 in pgmap v34509: 640 pgs, 10 pools, 127 MB data, 86 objects 8851 MB used, 2542 GB / 2653 GB avail 640 active+clean root@node-92:~#
创建 OSD 。如果未指定 UUID , OSD 启动时会自动生成一个。下列命令会输出 OSD 号,后续步骤你会
用到。
ceph osd create [{uuid} [{id}]] 可以直接执行 不需要带 UUUID 和 ID 在mon_host节点执行
这个命令
root@node-99:~# cat /etc/ceph/ceph.conf [global] fsid = 32bf310c-358b-47bc-afc7-25b961477c84 可以通过这个配置看到mon_host mon_initial_members = node-99 mon_host = 192.168.1.4
root@node-99:~# ceph osd create 4 root@node-99:~#
4这个数字是自动生成的 我前面已经用了 osd.0 osd.1 osd.2 osd.3
登录需要创建挂载存储创建OSD的主机
root@node-99:~# ssh node-92 Warning: Permanently added 'node-92,192.168.0.9' (ECDSA) to the list of known hosts. Welcome to Ubuntu 14.04.4 LTS (GNU/Linux 3.13.0-92-generic x86_64) * Documentation: https://help.ubuntu.com/ Last login: Tue Jun 6 17:24:08 2017 from 192.168.0.6 root@node-92:~#
我这里是node-92 具体看你自己的情况
root@node-92:~# mkdir /var/lib/ceph/osd/ceph-4 root@node-92:~#
创建挂载目录 注意路径和ceph-4 我们生成的是 4
root@node-92:~# mount -o user_xattr /dev/mapper/mpath1-part1 /var/lib/ceph/osd/ceph-4 root@node-92:~#
挂载存储盘到ceph-4,请挂载前先格式化存储盘,建议 ext4 参考命令:mkfs.ext4 /dev/mapper/
mpath1-part1
root@node-92:~# ceph-osd -i 4 --mkfs --mkkey
初始化osd数据目录
root@node-92:~# ceph auth add osd.4 osd 'allow *' mon 'allow rwx' -i /var/lib/ceph/osd/ ceph-4/keyring
added key for osd.4 这是执行结果和上面不是同一行 root@node-92:~# ^C root@node-92:~#
注册 OSD 认证密钥
root@node-92:~# ceph osd crush add osd.4 1.0 host=node-92
把 OSD 加入 CRUSH 图,这样它才开始收数据。 osd.4是名字 1.0是weight
root@node-92:~# start ceph-osd id=4
自动osd.4 注意命令格式 这是ubuntu的格式
^Croot@node-92:~# ceph -s cluster 32bf310c-358b-47bc-afc7-25b961477c84 health HEALTH_WARN 10 pgs stuck unclean recovery 2/258 objects degraded (0.775%) recovery 2/258 objects misplaced (0.775%) too many PGs per OSD (382 > max 300) monmap e1: 1 mons at {node-99=192.168.1.4:6789/0} election epoch 1, quorum 0 node-99 osdmap e320: 5 osds: 5 up, 5 in; 10 remapped pgs pgmap v34544: 640 pgs, 10 pools, 127 MB data, 86 objects 11112 MB used, 5410 GB / 5677 GB avail 2/258 objects degraded (0.775%) 2/258 objects misplaced (0.775%) 630 active+clean 5 active+remapped 5 active root@node-92:~#
和前面做对比。扩容成功。
重点请注意:
在没有重启系统前,一切正常,重启系统后,会出错。需要设置自动挂载OSD 和自动OSD 参考如下
root@node-92:~# echo "mount -o user_xattr /dev/mapper/mpath1-part1 /var/lib/ceph/osd/ceph-4 " >> /etc/rc.local root@node-92:~# echo "start ceph-osd id=4" >> /etc/rc.local root@node-92:~#
重启系统测试下:
root@node-92:~# init 6 root@node-92:~# Connection to node-92 closed by remote host. Connection to node-92 closed. root@node-99:~#