- Để thêm một MON hay service vào cụm cần cực copy key của service hoặc key admin và cấu hình sang node mới
scp /etc/ceph/ceph.conf root@ceph_node2:/etc/ceph/ceph.conf
scp /etc/ceph/ceph.client.admin.keyring root@ceph_node2:/etc/ceph/ceph.client.admin.keyring
scp /var/lib/ceph/bootstrap-osd/ceph.keyring root@ceph_node2:/var/lib/ceph/bootstrap-osd/ceph.keyring
-
Với mỗi OSD trong Ceph là một ceph-osd cho mỗi device trên các host. Nếu một host có nhiều device thì sẽ có nhiều tiến trình ceph-osd daemon , mỗi ceph-osd daemon tương ứng cho một device.
-
Thêm OSD dưới dạng Bluestone
[]# ssh ceph_node3
[]# ceph-volume lvm zap /dev/vdb
[]# sudo ceph-volume lvm create --data /dev/vdb
hoặc
ssh {node-name}
ceph-volume lvm zap /dev/vdb
sudo ceph-volume lvm prepare --data {data-path} {data-path}
sudo ceph-volume lvm list ## return ID and FSID
sudo ceph-volume lvm activate {ID} {FSID} ## active OSDfa
- Thêm OSD dưới dạng Bluestone ( manual )
ssh {node-name}
sudo bash
UUID=$(uuidgen)
OSD_SECRET=$(ceph-authtool --gen-print-key)
ID=$(echo "{\"cephx_secret\": \"$OSD_SECRET\"}" | \
ceph osd new $UUID -i - \
-n client.bootstrap-osd -k /var/lib/ceph/bootstrap-osd/ceph.keyring)
mkdir /var/lib/ceph/osd/ceph-$ID
mkfs.xfs /dev/{DEV}
mount /dev/{DEV} /var/lib/ceph/osd/ceph-$ID
ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-$ID/keyring \
--name osd.$ID --add-key $OSD_SECRET
ceph-osd -i $ID --mkfs --osd-uuid $UUID
chown -R ceph:ceph /var/lib/ceph/osd/ceph-$ID
systemctl enable ceph-osd@$ID
systemctl start ceph-osd@$ID
ssh ceph_node3
sudo bash
UUID=$(uuidgen)
OSD_SECRET=$(ceph-authtool --gen-print-key)
ID=$(echo "{\"cephx_secret\": \"$OSD_SECRET\"}" | \
ceph osd new $UUID -i - \
-n client.bootstrap-osd -k /var/lib/ceph/bootstrap-osd/ceph.keyring)
mkdir /var/lib/ceph/osd/ceph-$ID
mkfs.xfs -f -i size=2048 /dev/vdb
mount /dev/vdb /var/lib/ceph/osd/ceph-$ID
ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-$ID/keyring \
--name osd.$ID --add-key $OSD_SECRET
ceph-osd -i $ID --mkfs --osd-uuid $UUID
chown -R ceph:ceph /var/lib/ceph/osd/ceph-$ID
systemctl enable ceph-osd@$ID
systemctl start ceph-osd@$ID
- Remove OSD from cluster
- đưa OSD về trạng thái out khỏi cluster
ceph osd out 1
- đưa OSD service về trạng thái down
sudo systemctl stop ceph-osd@6
- Xoá OSD khỏi crush map
ceph osd purge 6 --yes-i-really-mean-it
- Thêm OSD dưới dạng filestore
ssh {node-name}
sudo ceph-volume lvm create --filestore --data {data-path} --journal {journal-path}fa
- Thêm MON vào cluster
ssh {new-mon-host}
sudo mkdir /var/lib/ceph/mon/ceph-{mon-id}
mkdir {tmp}
ceph auth get mon. -o {tmp}/{key-filename}
ceph mon getmap -o {tmp}/{map-filename}
sudo ceph-mon -i {mon-id} --mkfs --monmap {tmp}/{map-filename} --keyring {tmp}/{key-filename}
ceph-mon -i {mon-id} --public-addr {ip:port}
ssh ceph_node3
mkdir /var/lib/ceph/mon/ceph-ceph_node3
ceph auth get mon. -o /tmp/ceph.mon.keyring
ceph mon getmap -o /tmp/monmap
sudo ceph-mon -i ceph_node2 --mkfs --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
chown ceph:ceph /var/lib/ceph/mon/ceph-ceph_node2
ceph-mon -i ceph_node2 --public-addr 192.168.30.146:6789
- Xoá MON khỏi cluster
ssh ceph_node3
systemctl stop ceph-mon@ceph_node3
ceph mon remove ceph_node3