Hi guys,
I'm new to the forum and this is my first post. I want to share my working setup to install PVE/PBS from ISO on Hetzner dedicated servers without the need to order a KVM console. I know, there are already some manuals, but much of them are incomplete or does not work.
Short explanation: The advantage you get when installing from ISO is for example, to setup ZFS RAID on boot drive. Many of the Hetzner servers have only two disk drives. When installing from Debian 10, it's only possible to use Linux RAID with Hetzner InstallImage, but in my opion the buildin ZFS is more powerfull. On the other hand, with this setup it's possible to install PVE7/PBS2 without installing Debian 10 first, than make a dist-upgrade to Debian 11 and finaly install PVE7/PBS2. I'm personaly don't like this kind of installation and prefer the "clean way" with ISO. So thats the reasons I'm using this setup.
The example below describes the procedure for PVE7 on a Hetzner AX machine. For other versions, please replace the name of the ISO file so it fits the product you want to install. I've tested PBS2, but should also work with PVE6 and PBS1.
Install PVE7:
- boot you server into Hetzner rescue system (on Robot console activate rescue + reset server)
- connect via ssh to the rescue system
- if your server was already in use, I would recomend to start clean and delete all disks
- download PVE7 ISO to the rescue system:
- directly after connected to the rescue system there will be an information displayed about the connected drives and their device names
- replace the device names of the example below with the decive names of your system. My server has two NVMe disks connected.
- start a VM that is booting from the PVE ISO file and map it to the physical drives of your server:
- for security reason the VNC output of the VM is set to the localhost IP. So you have to establish an ssh tunnel in order to access the machine.
- in case of using Putty, go to Connection->SSH->Tunnels and add a tunnel with source port 9501 + Destination 127.0.0.1:5901
- you can now connect with a second ssh session. After established start your VNC client on address 127.0.0.1:9501
- you will now see the setup screen of PVE. Make your dessions on all the setup options (for example create an ZFS RAID1) and finish the setup procedure
- once the installation is finished the VM will again boot into the PVE setup
- press ctrl+c on the first ssh session and terminate the VM (can be done without damage)
- if you try to start the physical server at this time it will not be reachable. An additional step has to be done.
- so start the VM a second time but without booting the ISO image:
- the fresh installed PVE is now booting inside the VM for the first time
- for the reason that the network settings are different to the physical machine they will currently not working, so we have to edit them
- on VNC session login to the PVE using your desired password during the installation
- open the network configuration file:
- for a routed network setup the default vmbr0 bridge should be removed (I think most of the people are using PVE on Hetzner with routed setup and subnets)
- also the network adapter name from the VM is different to the name of the physical machine. In my case the adapter was named ens3 but must be named with enp41s0
- please determine your correct adapter name and edit the configuration, so it should look something like this:
- maybe it's a good idea to add at least one bridge (eg: vmbr0) for the VM network right away.
- save the network config, make a clean shutdown of the system via VNC shell and wait untill the VM ist stopped
- reboot the physical server from rescue shell
- after a short while you should be able to access the web gui via the public IP (https://x.x.x.x:8006) and finish your setup
- don't forget to subscribe for the fantastic Promox products to take advantage of the stable enterprise repositories
If you think there is something that could be optimized or done in a better way, please feel free to let me know your suggestions.
Please let me also know if you are interested to have a detailed look at my network configuration. I'm using a routed setup with a floating subnet and internal + external networks. On the external network I'm distributing the public IPs via DHCP to VMs that should have direct public access.
This is btw one piece of a complete cloud workplace solution for small business companies, based on Proxmox and the power of several other Linux products. In my case, it needs only one comercial license for a Windows terminal server that runs the applications. All the other stuff, like domain controller, file server, firewall and VPN is build on open source and easy to administrate. So if anyone need to build something similar, don't hesitate to get in touch with me. I would be happy to share my work
Best Regards
Martin
I'm new to the forum and this is my first post. I want to share my working setup to install PVE/PBS from ISO on Hetzner dedicated servers without the need to order a KVM console. I know, there are already some manuals, but much of them are incomplete or does not work.
Short explanation: The advantage you get when installing from ISO is for example, to setup ZFS RAID on boot drive. Many of the Hetzner servers have only two disk drives. When installing from Debian 10, it's only possible to use Linux RAID with Hetzner InstallImage, but in my opion the buildin ZFS is more powerfull. On the other hand, with this setup it's possible to install PVE7/PBS2 without installing Debian 10 first, than make a dist-upgrade to Debian 11 and finaly install PVE7/PBS2. I'm personaly don't like this kind of installation and prefer the "clean way" with ISO. So thats the reasons I'm using this setup.
The example below describes the procedure for PVE7 on a Hetzner AX machine. For other versions, please replace the name of the ISO file so it fits the product you want to install. I've tested PBS2, but should also work with PVE6 and PBS1.
Install PVE7:
- boot you server into Hetzner rescue system (on Robot console activate rescue + reset server)
- connect via ssh to the rescue system
- if your server was already in use, I would recomend to start clean and delete all disks
- download PVE7 ISO to the rescue system:
Code:
wget http://download.proxmox.com/iso/proxmox-ve_7.0-1.iso
- directly after connected to the rescue system there will be an information displayed about the connected drives and their device names
- replace the device names of the example below with the decive names of your system. My server has two NVMe disks connected.
- start a VM that is booting from the PVE ISO file and map it to the physical drives of your server:
Code:
qemu-system-x86_64 -enable-kvm -smp 4 -m 4096 -boot d -cdrom ./proxmox-ve_7.0-1.iso -drive file=/dev/nvme0n1,format=raw,media=disk,if=virtio -drive file=/dev/nvme1n1,format=raw,media=disk,if=virtio -vnc 127.0.0.1:1
- for security reason the VNC output of the VM is set to the localhost IP. So you have to establish an ssh tunnel in order to access the machine.
- in case of using Putty, go to Connection->SSH->Tunnels and add a tunnel with source port 9501 + Destination 127.0.0.1:5901
- you can now connect with a second ssh session. After established start your VNC client on address 127.0.0.1:9501
- you will now see the setup screen of PVE. Make your dessions on all the setup options (for example create an ZFS RAID1) and finish the setup procedure
- once the installation is finished the VM will again boot into the PVE setup
- press ctrl+c on the first ssh session and terminate the VM (can be done without damage)
- if you try to start the physical server at this time it will not be reachable. An additional step has to be done.
- so start the VM a second time but without booting the ISO image:
Code:
qemu-system-x86_64 -enable-kvm -smp 4 -m 4096 -drive file=/dev/nvme0n1,format=raw,media=disk,if=virtio -drive file=/dev/nvme1n1,format=raw,media=disk,if=virtio -vnc 127.0.0.1:1
- the fresh installed PVE is now booting inside the VM for the first time
- for the reason that the network settings are different to the physical machine they will currently not working, so we have to edit them
- on VNC session login to the PVE using your desired password during the installation
- open the network configuration file:
Code:
nano /etc/network/interfaces
- for a routed network setup the default vmbr0 bridge should be removed (I think most of the people are using PVE on Hetzner with routed setup and subnets)
- also the network adapter name from the VM is different to the name of the physical machine. In my case the adapter was named ens3 but must be named with enp41s0
- please determine your correct adapter name and edit the configuration, so it should look something like this:
Code:
auto lo
iface lo inet loopback
auto enp41s0
iface enp41s0 inet static
address x.x.x.x/xx
gateway x.x.x.x
- maybe it's a good idea to add at least one bridge (eg: vmbr0) for the VM network right away.
- save the network config, make a clean shutdown of the system via VNC shell and wait untill the VM ist stopped
- reboot the physical server from rescue shell
- after a short while you should be able to access the web gui via the public IP (https://x.x.x.x:8006) and finish your setup
- don't forget to subscribe for the fantastic Promox products to take advantage of the stable enterprise repositories
If you think there is something that could be optimized or done in a better way, please feel free to let me know your suggestions.
Please let me also know if you are interested to have a detailed look at my network configuration. I'm using a routed setup with a floating subnet and internal + external networks. On the external network I'm distributing the public IPs via DHCP to VMs that should have direct public access.
This is btw one piece of a complete cloud workplace solution for small business companies, based on Proxmox and the power of several other Linux products. In my case, it needs only one comercial license for a Windows terminal server that runs the applications. All the other stuff, like domain controller, file server, firewall and VPN is build on open source and easy to administrate. So if anyone need to build something similar, don't hesitate to get in touch with me. I would be happy to share my work
Best Regards
Martin