This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| open_nebula_kvm_with_drbd [2020/02/23 13:01] – herwarth | open_nebula_kvm_with_drbd [2020/02/23 13:23] (current) – [Move front-end VM to new cluster] herwarth | ||
|---|---|---|---|
| Line 223: | Line 223: | ||
| </ | </ | ||
| ====Linstor_un driver for DRBD9==== | ====Linstor_un driver for DRBD9==== | ||
| + | < | ||
| + | apt install jq | ||
| + | </ | ||
| + | Do not try to do a git clone and symlink. It does not work. There are hard coded paths in this addon. | ||
| + | < | ||
| + | curl -L https:// | ||
| + | mv / | ||
| + | mkdir -p / | ||
| + | mv / | ||
| + | mv / | ||
| + | mv / | ||
| + | rm -rf / | ||
| + | chown -R oneadmin. / | ||
| + | </ | ||
| + | Edit the Open Nebula config to enable the addon | ||
| + | <code - / | ||
| + | . | ||
| + | . | ||
| + | VM_MAD = [ | ||
| + | | ||
| + | - ARGUMENTS | ||
| + | + ARGUMENTS | ||
| + | ] | ||
| + | . | ||
| + | . | ||
| + | TM_MAD = [ | ||
| + | | ||
| + | - ARGUMENTS = "-t 15 -d dummy, | ||
| + | + ARGUMENTS = "-t 15 -d dummy, | ||
| + | ] | ||
| + | . | ||
| + | . | ||
| + | DATASTORE_MAD = [ | ||
| + | | ||
| + | - ARGUMENTS | ||
| + | + ARGUMENTS | ||
| + | ] | ||
| + | </ | ||
| + | Add new TM_MAD_CONF section: | ||
| + | <code - / | ||
| + | . | ||
| + | . | ||
| + | TM_MAD_CONF = [ | ||
| + | NAME = " | ||
| + | DS_MIGRATE = " | ||
| + | ] | ||
| + | </ | ||
| + | Add new DS_MAD_CONF section: | ||
| + | <code - / | ||
| + | . | ||
| + | . | ||
| + | DS_MAD_CONF = [ | ||
| + | NAME = " | ||
| + | MARKETPLACE_ACTIONS = " | ||
| + | ] | ||
| + | </ | ||
| + | Enable snapshotting (only works on powered off VMs) | ||
| + | <code - / | ||
| + | -LIVE_DISK_SNAPSHOTS=" | ||
| + | +LIVE_DISK_SNAPSHOTS=" | ||
| + | </ | ||
| + | < | ||
| + | systemctl restart opennebula opennebula-sunstone | ||
| + | </ | ||
| + | ===== Create datastores ===== | ||
| + | < | ||
| + | su - oneadmin | ||
| + | </ | ||
| + | < | ||
| + | cat > system-ds.conf <<EOT | ||
| + | NAME=" | ||
| + | TYPE=" | ||
| + | STORAGE_POOL=" | ||
| + | AUTO_PLACE=" | ||
| + | CHECKPOINT_AUTO_PLACE=" | ||
| + | TM_MAD=" | ||
| + | EOT | ||
| + | </ | ||
| + | < | ||
| + | cat > images-ds.conf <<EOT | ||
| + | NAME=" | ||
| + | TYPE=" | ||
| + | STORAGE_POOL=" | ||
| + | AUTO_PLACE=" | ||
| + | DISK_TYPE=" | ||
| + | DS_MAD=" | ||
| + | TM_MAD=" | ||
| + | EOT | ||
| + | </ | ||
| + | < | ||
| + | onedatastore create system-ds.conf | ||
| + | onedatastore create images-ds.conf | ||
| + | </ | ||
| + | ===== Configure oneadmin SSH ===== | ||
| + | < | ||
| + | su - oneadmin | ||
| + | </ | ||
| + | < | ||
| + | ssh-keygen | ||
| + | cat ~/ | ||
| + | chown oneadmin: | ||
| + | chmod 600 ~/ | ||
| + | </ | ||
| + | < | ||
| + | cat << EOT > ~/ | ||
| + | Host * | ||
| + | StrictHostKeyChecking no | ||
| + | ConnectTimeout 5 | ||
| + | UserKnownHostsFile /dev/null | ||
| + | EOT | ||
| + | chmod 600 ~/ | ||
| + | </ | ||
| + | Now we need to copy it to all nodes. Set a password on the oneadmin user on all nodes first. When done you can disable the password on the back-end nodes by using the following command on all back-end nodes: passwd -d oneadmin | ||
| + | < | ||
| + | scp -r / | ||
| + | </ | ||
| + | Check if you can login to all nodes as the oneadmin user. And do a reboot on the front-end node to make sure. | ||
| + | < | ||
| + | shutdown -r now | ||
| + | </ | ||
| + | ===== Move front-end VM to new cluster ===== | ||
| + | I created the VM on a laptop and now I want to move it to a back-end node. In this case I move it to server1 and do not want to see it in Open Nebula. | ||
| + | Shutdown the VM and copy the qcow2 file to / | ||
| + | |||
| + | Create a VM with virt-manager using the import exsisting volume. Make sure you connect it to the mgmt bridge. | ||
| + | |||
| + | Enable boot on startup and reboot your back-end server. The VM should start automatically. Check with virt-manager on that server. | ||