Provision a Server with Debian 9
For this demonstration, we'll use Packet's t1.small bare metal configuration running Debian 9. When deploying the server (which are available in Packet's core datacenters), please select Debian 9 and then add extra elastic IP's to the server using the custom subnet option. Assign a custom subnet size of /28 via the options slide out on the deploy screen:
Setting Up & Installing Proxmox
Once the device has provisioned and is reachable, login as "root" and update the Debian installation to the latest and greatest:
apt-get update && apt-get upgrade -y
To allow virtual machines access to the interwebs, a bridge must be created on the server. The first step is to install the necessary bridge utilities:
apt-get install bridge-utils
The device hostname must include the 147.x IPv4 address in
$ cat /etc/hosts root@prox:~# cat /etc/hosts 184.108.40.206 prox prox.domain.com # The following lines are desirable for IPv6 capable hosts ::1localhost ip6-localhost ip6-loopback ff02::1ip6-allnodes ff02::2ip6-allrouters root@pve:~#
If your management IP (147.x) is missing, please add it as shown above. If it is present, you can verify it's inout correctly by running
$ hostname --ip-address 220.127.116.11
To setup a bridge the following is my example. I moved
vmbr0 to the top and pushed
bond0:0 towards the bottom. Review & make changes/additions to your
auto lo iface lo inet loopback auto vmbr0 iface vmbr0 inet static address 18.104.22.168 netmask 255.255.255.240 gateway 22.214.171.124 dns-nameservers 126.96.36.199 188.8.131.52 bridge_ports bond0 bridge_stp off bridge_fd 9 bridge_hello 2 bridge_maxage 12 iface vmbr0 inet6 static address 2604:1380:1:7200::1 netmask 127 gateway 2604:1380:1:7200:: auto vmbr0:0 iface vmbr0:0 inet static address 10.99.207.1 netmask 255.255.255.254 post-up route add -net 10.0.0.0/8 gw 10.99.207.0 post-down route del -net 10.0.0.0/8 gw 10.99.207.0 auto bond0 iface bond0 inet manual bond-downdelay 200 bond-miimon 100 bond-mode 5 bond-updelay 200 bond-xmit_hash_policy layer3+4 bond-slaves enp0s20f0 enp0s20f1
️ Please Note: the IPs above are examples. Ensure you are using your management (147.x), IPv6, and private network IPs as shown in your network interfaces file.
Reboot the device. After the reboot, you should find ip configuration on
vmbr0 and the output of the bridge configuration
user@pve$ brctl show bridge namebridge idSTP enabledinterfaces vmbr08000.0cc47ab58b16nobond0 user@pve$
Next, create the repo necessary to download packages for Proxmox
echo "deb http://download.proxmox.com/debian/pve stretch pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list
To ensure the repo is the validated one, it is necessary to install the key:
wget http://download.proxmox.com/debian/proxmox-ve-release-5.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg
Update to include the new repository :
Install the Proxmox packages:
apt install proxmox-ve postfix open-iscsi
Cleanup and Final Reboot
Configure postfix according to your network. If you have a mail server in your network, you should configure postfix as a satellite system, and your existing mail server will be the 'relay host' which will route the emails send by the proxmox server to the end recipient. If you don't know what to enter here, choose local only.
When installation has completed, reboot the server, after which you should be able to access the Proxmox UI via url: http://your.device.ip:8006. Ta da!
Creating an alternate user
By default the root user is restricted by accessing the device via specific SSH keys utilized during provisioning. Password authentication is also disabled. It's suggested to create a wheel user (other than root) to access not only the UI of Proxmox but also the command line.
Create admin group
pveum groupadd admin -comment "System Administrators"
Add necessary permission
pveum aclmod / -group admin -role Administrator
Add wheel user to group
pveum usermod yourwheelusernamehere@pam -group admin
From this point on, the newly created wheel user will have access to the UI.
This error is common, it suggests your device has not yet been setup for a paid subscription to the enterprise repo. You are welcome to remit payment to obtain this access, or you can remove the enterprise repo & then setup the repo to pull from the non-subscription repo.
echo "deb http://download.proxmox.com/debian/pve stretch pve-no-subscription" > /etc/apt/sources.list.d/pve.list
Once updated, run
apt update without the resulting error.
Creating your first VM / Container
Now comes the fun part, creating your first container or virtual machine.
Download / Upload Container Template
Proxmox comes with ready to download/install container templates, to obtain a list you can do this via UI
Once Templates is clicked a window will appear, with the ever growing list of available templates.
If you have you own, you are welcome to upload through the UI as well. Once you have found the template you require or uploaded your own, click the Create CT and process with the necessary steps to complete your first container.