Project

General

Profile

Bug #59732 » m-namespace.sh

Christopher Hoffman, 05/11/2023 05:55 PM

 
#!/bin/bash
set -xe

environment(){
if [ ! -f site-a.conf ] && [ ! -L site-a.conf ]; then
ln -s run/site-a/ceph.conf site-a.conf
fi

if [ ! -f site-b.conf ] && [ ! -L site-b.conf ]; then
ln -s run/site-b/ceph.conf site-b.conf
fi

}
stop(){
sudo ip netns exec east ../src/mstop.sh site-a
sudo ip netns exec west ../src/mstop.sh site-b
sudo killall rbd-mirror
sudo killall rbd-mirror
sudo killall rbd-mirror
}
start(){
sudo ip netns exec east bash -c "MON=1 OSD=1 MGR=1 MDS=0 RGW=0 ../src/mstart.sh clustera --short -n -d --without-dashboard"
sudo ip netns exec west bash -c "MON=1 OSD=1 MGR=1 MDS=0 RGW=0 ../src/mstart.sh clusterb --short -n -d --without-dashboard"

sudo ip netns exec east ./bin/ceph --cluster site-a osd pool create pool1
sudo ip netns exec east ./bin/rbd --cluster site-a pool init pool1
sudo ip netns exec west ./bin/ceph --cluster site-b osd pool create pool1
sudo ip netns exec west ./bin/rbd --cluster site-b pool init pool1

#set to image mirror
sudo ip netns exec east ./bin/rbd --cluster site-a mirror pool enable pool1 image

#create token
sudo ip netns exec east ./bin/rbd --cluster site-a mirror pool peer bootstrap create pool1 | tail -n 1 > token

#import token
sudo ip netns exec west ./bin/rbd --cluster site-b mirror pool peer bootstrap import --site-name site-b pool1 token

sudo ip netns exec east ./bin/rbd-mirror --cluster site-a --rbd-mirror-delete-retry-interval=5 --rbd-mirror-image-state-check-interval=5 --rbd-mirror-journal-poll-age=1 --rbd-mirror-pool-replayers-refresh-interval=5 --debug-rbd=40 --debug-journaler=40 --debug-rbd_mirror=40 --daemonize=true
sudo ip netns exec west ./bin/rbd-mirror --cluster site-b --rbd-mirror-delete-retry-interval=5 --rbd-mirror-image-state-check-interval=5 --rbd-mirror-journal-poll-age=1 --rbd-mirror-pool-replayers-refresh-interval=5 --debug-rbd=20 --debug-rbd-mirror=20 --daemonize=true

sudo ip netns exec east ./bin/rbd --cluster site-a create pool1/test-demote-sb --size 100G --image-feature layering --image-feature exclusive-lock --image-feature object-map --image-feature fast-diff --debug-ms 0 --debug-rbd 20 --debug-rbd-mirror 20

sudo ip netns exec east ./bin/rbd --cluster site-a mirror image enable pool1/test-demote-sb snapshoti
sudo ip netns exec east ./bin/rbd --cluster site-a mirror snapshot schedule add --pool pool1 --image test-demote-sb 1m
}

NUM_ARGS=`echo "$@" | awk '{print NF}'`
ACTION=$1
if [ "$ACTION" == "start" ]; then
echo setting up environment
environment
echo start
start
elif [ "$ACTION" == "stop" ]; then
echo stop
stop
else
echo "Option not recognized"
fi
(1-1/2)