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.yaml
network:
ethernets:
eno1:
dhcp4: true
dhcp6: true
eno2:
dhcp4: true
dhcp6: true
version: 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.yaml
network:
ethernets:
eno1:
dhcp4: false
dhcp6: false
eno2:
dhcp4: true
dhcp6: true
bridges:
br0External:
interfaces:
- eno1
dhcp4: true
dhcp6: true
version: 2If everything is OK, I then apply the netplan.dev-user@server:~$ sudo netplan generate
It 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 apply
dev-user@server:~$ ip -4 -br a show
lo UNKNOWN 127.0.0.1/8
eno2 UP 192.168.4.246/18 metric 100
virbr0 DOWN 192.168.122.1/24
br0External 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-wizard
node-wizard-0.2.0/deployment-files/go-template/
node-wizard-0.2.0/deployment-files/go-template/common-script.tmpl
node-wizard-0.2.0/deployment-files/go-template/network-win-bat.tmpl
node-wizard-0.2.0/deployment-files/go-template/network-win-ps1.tmpl
node-wizard-0.2.0/deployment-files/go-template/user-data.tmpl
node-wizard-0.2.0/deployment-files/go-template/autounattend-ubuntu20.04.tmpl
node-wizard-0.2.0/deployment-files/go-template/autoYaST.tmpl
node-wizard-0.2.0/deployment-files/go-template/hostdev.tmpl
node-wizard-0.2.0/deployment-files/go-template/user-data-ubuntu24.04.tmpl
node-wizard-0.2.0/deployment-files/go-template/rbddisk.tmpl
node-wizard-0.2.0/deployment-files/go-template/ksconfig.tmpl
node-wizard-0.2.0/deployment-files/go-template/network-script.tmpl
node-wizard-0.2.0/deployment-files/go-template/autounattend.tmpl
node-wizard-0.2.0/deployment-files/env_node.json
node-wizard-0.2.0/deployment-files/node-wizard-logrotate.conf
node-wizard-0.2.0/deployment-files/node-wizard.service
node-wizard-0.2.0/README
node-wizard-0.2.0/deploy-node-wizard.sh
node-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" " -f3
192.168.1.1dev-user@server:~$ resolvectl status | grep "Current DNS" | head -1 | cut -d " " -f4
192.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.sh
Please enter gateway ip address for configuring vm's network :
192.168.1.1
Please enter nameservers for configuring vm's network :
192.168.1.1
Please enter virsh pool name for ceph rbd if exists :
Retrieving all needed dependencies
Update package list
Installing version - 0.2.0
Deploy node-wizard to install directory
Skip downloading srvany
node-wizard version 0.2.0 deployed successfully to /root/bin/node_wizard.
To register server or add host, use this token : wiHobePSERQ7
It can be retrieved using 'sudo /root/bin/node_wizard/node-wizard --token'
Check KVM support
INFO: /dev/kvm exists
KVM 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 expose
Loaded: loaded (/etc/systemd/system/node-wizard.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2024-05-13 20:45:20 UTC; 49s ago
Main PID: 3072 (node-wizard)
Tasks: 6 (limit: 76495)
Memory: 6.6M
CPU: 21ms
CGroup: /system.slice/node-wizard.service
└─3072 /root/bin/node_wizard/node-wizard
May 13 20:45:20 server systemd[1]: Started Run node_wizard for kvm functionality expose.