前言 在集群搭建完毕之后,一共有三个host,每个host都是mon节点,这时新创建一个虚拟机,想要让它加入到mon节点,
就需要学习如何添加mon节点。
添加mon节点 这里添加的节点叫做node4 。
由于这里使用的是ceph-deploy工具,所以首先要进行ssh免密登录的设置,然后再进行ntp设置。
当然,还需要对hosts文件进行修改。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 // 先添加集群用户 [node4]$ useradd -d /home/{username} -m {username} [node4]$ echo "{username} ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/{username} [node4]$ sudo chmod 0440 /etc/sudoers.d/{username} // 修改hosts文件 [deploy]$ sudo vim /etc/hosts [deploy]$ cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.31.203 node1 192.168.31.204 node2 192.168.31.205 node3 192.168.31.207 node4 // 其它所有节点拷贝hosts文件(不知道是不是必须的,反正我是做了这一步) [node1]$ sudo scp ming@192.168.31.202:/etc/hosts /etc/hosts [node2]$ sudo scp ming@192.168.31.202:/etc/hosts /etc/hosts [node3]$ sudo scp ming@192.168.31.202:/etc/hosts /etc/hosts [node4]$ sudo scp ming@192.168.31.202:/etc/hosts /etc/hosts // ssh免密登录设置 [deploy]$ vim ~/.ssh/config [deploy]$ cat ~/.ssh/config Host node1 HostName 192.168.31.203 User ming Host node2 HostName 192.168.31.204 User ming Host node3 HostName 192.168.31.205 User ming Host node4 HostName 192.168.31.207 User ming [deploy]$ ssh-copy-id {username}@node4 // ntp设置 [node4]$ sudo yum install -y ntp [node4]$ sudo systemctl start ntpd [node4]$ sudo systemctl enable ntpd [node4]$ sudo vim /etc/ntp.conf [node4]$ cat /etc/ntp.conf ... # Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). server 192.168.31.202 prefer server 0.centos.pool.ntp.org iburst server 1.centos.pool.ntp.org iburst server 2.centos.pool.ntp.org iburst server 3.centos.pool.ntp.org iburst ...
完成上面的准备工作之后,开始进行mon的添加,
注意: 我这里使用的本地源来安装ceph,所以即使不装epel也无所谓,因为所需依赖包都在本地了,
具体可以参考之前的博客centos7上的ceph指定版本安装方法 。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 // 安装ceph [node4]$ sudo yum install -y ceph // 修改ceph.conf配置。 // 这里在mon_initial_members、mon_host上的修改可能并不是必须的(经本人测试),但感觉还是加上好一点。 // 一定要增加public_network字段的配置,否则大概率会出现"admin_socket: exception getting command descriptions file ..."的错误。 [deploy]$ vim ceph.conf [deploy]$ cat ceph.conf [global] fsid = a20b153c-c907-41bb-a5b2-753a40e2085c mon_initial_members = node1, node2, node3, node4 mon_host = 192.168.31.203,192.168.31.204,192.168.31.205,192.168.31.207 auth_cluster_required = cephx auth_service_required = cephx auth_client_required = cephx public_network = 192.168.31.0/24 // 将这个配置发送到其它节点 [deploy]$ ceph-deploy --overwrite-conf config push node1 node2 node3 node4 // 添加mon节点 [deploy]$ ceph-deploy mon add node4 [deploy]$ ssh node1 sudo ceph -s ... services: mon: 4 daemons, quorum node1,node2,node3,node4 mgr: node1(active), standbys: node2, node3 osd: 0 osds: 0 up, 0 in ...
这样就完成了mon节点的添加,注意到其中的关键在于public_network字段的添加 。
删除mon节点 直接destroy就可以了:
1 [deploy]$ ceph-deploy mon destroy node4
参考 STORAGE CLUSTER QUICK START
ceph在扩展mon节点时,要注意的问题