Install Node-Wizard
The installation order for the Node Wizard and Node Client is unimportant, but I'm starting with the Node wizard. These steps are based on the Node Wizard Installation page.
- Network bridges are often used to expose network traffic to VMs. The Node Wizard requires a bridge called br0External. Here, I am creating the expected bridge and configuring it to use DHCP. My starting netplan is:
Let's modify the netplan to add our bridge.dev-user@server:~$ sudo cat /etc/netplan/00-installer-config.yamlnetwork:ethernets:eno1:dhcp4: truedhcp6: trueeno2:dhcp4: truedhcp6: trueversion: 2I always check netplans for errors before applying, I want to maintain remote access to my server.dev-user@server:~$ sudo nano /etc/netplan/00-installer-config.yamlnetwork:ethernets:eno1:dhcp4: falsedhcp6: falseeno2:dhcp4: truedhcp6: truebridges:br0External:interfaces:- eno1dhcp4: truedhcp6: trueversion: 2If everything is OK, I then apply the netplan.dev-user@server:~$ sudo netplan generateIt looks good. Our bridge has an IP address assigned to it by our DHCP server, and I can still access the remote server.dev-user@server:~$ sudo netplan applydev-user@server:~$ ip -4 -br a showlo UNKNOWN 127.0.0.1/8eno2 UP 192.168.4.246/18 metric 100virbr0 DOWN 192.168.122.1/24br0External UP 192.168.6.206/18 metric 100...
- Next, I download the Node Wizard tarball from the [download page][download page].
- After downloading, I need to unpack it.
dev-user@server:~$ tar -xvf node-wizard-0.2.0-ubuntu22.tgz;node-wizard-0.2.0/node-wizard-0.2.0/deployment-files/node-wizard-0.2.0/deployment-files/node-wizardnode-wizard-0.2.0/deployment-files/go-template/node-wizard-0.2.0/deployment-files/go-template/common-script.tmplnode-wizard-0.2.0/deployment-files/go-template/network-win-bat.tmplnode-wizard-0.2.0/deployment-files/go-template/network-win-ps1.tmplnode-wizard-0.2.0/deployment-files/go-template/user-data.tmplnode-wizard-0.2.0/deployment-files/go-template/autounattend-ubuntu20.04.tmplnode-wizard-0.2.0/deployment-files/go-template/autoYaST.tmplnode-wizard-0.2.0/deployment-files/go-template/hostdev.tmplnode-wizard-0.2.0/deployment-files/go-template/user-data-ubuntu24.04.tmplnode-wizard-0.2.0/deployment-files/go-template/rbddisk.tmplnode-wizard-0.2.0/deployment-files/go-template/ksconfig.tmplnode-wizard-0.2.0/deployment-files/go-template/network-script.tmplnode-wizard-0.2.0/deployment-files/go-template/autounattend.tmplnode-wizard-0.2.0/deployment-files/env_node.jsonnode-wizard-0.2.0/deployment-files/node-wizard-logrotate.confnode-wizard-0.2.0/deployment-files/node-wizard.servicenode-wizard-0.2.0/READMEnode-wizard-0.2.0/deploy-node-wizard.shnode-wizard-0.2.0/get-dependencies.sh
- The Node Wizard will ask for some VM network settings during installation. It wants a gateway IP and name servers. There are many different ways networks can be set up, but for simple cases, using our server's network values is an easy starting place.
The ip route command can provide the IP of the default gateway on the server, and the resolvectl command can show the currently used DNS server.
dev-user@server:~$ ip route show | grep default | head -1 | cut -d" " -f3192.168.1.1dev-user@server:~$ resolvectl status | grep "Current DNS" | head -1 | cut -d " " -f4192.168.1.1
- Now that I have our network values from the previous step, I can install Node Wizard. Luckily, the gateway and nameserver have the same IP of 192.168.1.1. Your IPs will probably be different. In this setup, I am not using Ceph RBD.
dev-user@server:~$ cd node-wizard-0.2.0;dev-user@server:~/node-wizard-0.2.0$ sudo ./deploy-node-wizard.shPlease enter gateway ip address for configuring vm's network :192.168.1.1Please enter nameservers for configuring vm's network :192.168.1.1Please enter virsh pool name for ceph rbd if exists :Retrieving all needed dependenciesUpdate package listInstalling version - 0.2.0Deploy node-wizard to install directorySkip downloading srvanynode-wizard version 0.2.0 deployed successfully to /root/bin/node_wizard.To register server or add host, use this token : wiHobePSERQ7It can be retrieved using 'sudo /root/bin/node_wizard/node-wizard --token'Check KVM supportINFO: /dev/kvm existsKVM acceleration can be used
- Finally, I want to verify my previous work by checking that the Node Wizard is in a running state.
dev-user@server:~/node-wizard-0.2.0$ sudo systemctl status node-wizard.service● node-wizard.service - Run node_wizard for kvm functionality exposeLoaded: loaded (/etc/systemd/system/node-wizard.service; enabled; vendor preset: enabled)Active: active (running) since Mon 2024-05-13 20:45:20 UTC; 49s agoMain PID: 3072 (node-wizard)Tasks: 6 (limit: 76495)Memory: 6.6MCPU: 21msCGroup: /system.slice/node-wizard.service└─3072 /root/bin/node_wizard/node-wizardMay 13 20:45:20 server systemd[1]: Started Run node_wizard for kvm functionality expose.