Upgrade from 2.3 to 3.0

From Proxmox VE
Revision as of 17:07, 18 July 2018 by Fritz (talk | contribs)
Jump to navigation Jump to search
Yellowpin.svg Note: Article is outdated, it refers to Proxmox VE 3.x; actual version is Proxmox VE 5.2, all versions up to 4.x have reached already EOL

Introduction

There are two possibilities to move from 2.3 to 3.0: [note: this script now updates to 3.1-21/93bf03d4, see this post]

  • In-place upgrade via script (recommended)
  • New installation on new hardware (and restore VM´s from backup)

In-place upgrade via script

Before you start, make sure you have a valid backup of all your settings, VM´s and CT´s. If the upgrade fails, you should be able to do a clean ISO installations and restore all VM´s and CT´s from backup.

We provide an upgrade script which does the following:

  • Dist-upgrade from Squeeze to Wheezy
  • Installation of Proxmox VE 3.0
  • Optional: Purge obsolete packages

Requirements

  • Up2date Proxmox VE 2.3
  • Backup of all VM´s and CT´s
  • No running VM´s or CT´s
  • Enough free space in your /root file-system

Start the upgrade

  • make sure you have up to date 2.3 system
  • Login to your Proxmox VE host with SSH and download the script:
wget http://download.proxmox.com/debian/dists/wheezy/pve-upgrade-2.3-to-3.0
  • make the script executable:
chmod +x pve-upgrade-2.3-to-3.0
  • Stop all your VMs and Containers

Depending on your Internet connection and hardware the upgrade will take some time (if everything is fast it will take about 10 minutes). The script is idempotent, so you can safely restart it if something goes wrong.

The script can download the packages (around 280 MB) before the packages are installed, so this is a good method to minimize downtime, especially if your internet connection is slow.

./pve-upgrade-2.3-to-3.0 --download-only

If all goes well, you should see last lines like these:

Fetched 277 MB in 6min 7s (752 kB/s)
Download complete and in download only mode
download successful


Note: Although the download is reported as "complete", during the following procedures an internet connection is still needed for other minor downloads, or it will fail!

If you are really ready for the upgrade, and the box has internet connection, run the script:

./pve-upgrade-2.3-to-3.0

If all goes well, you should see last lines like these:

run ./pve-upgrade-2.3-to-3.0 --purge if you want to remove them
apt-get clean
upgrade successful - Please reboot this node.

The script writes a detailed log to 'pve-upgrade.log'.

  • Reboot.
  • Optional: Purge obsolete packages to save disk space (this removes all non default packages, so run this ONLY if you did not installed anything else. Do not run this on customized installations like OVH or similar)
./pve-upgrade-2.3-to-3.0 --purge

Cluster upgrades

  • stop or migrate all VM/CT to another node (live or offline)
  • run the upgrade and reboot
  • migrate or start the VM/CT on this 3.0 node and check if everything is working as expect. Also live-migrate should work.
  • do the same with all other nodes, step by step

Adapt your apt config to get future updates

See Package repositories

Troubleshooting

Multipath

If you run multipath, you need to adapt your multipath.conf - 'selector' is now called 'path_selector'

GUI/Browser shows old version

Reload the page and/or empty browser cache.

Minor Grub2 issue

After running the upgrade, the grub menu list still shows on reboot the 1.98 grub version from Squeeze. To upgrade this to 1.99, just run:

grub-install '(hd0)'

You should get something like

Installation finished. No error reported.

apache2 warnings

Apache2 is not needed anymore and can be removed.

apt-get purge apache2*

Problems on host shutdown

Please remove the 'fuse-utils' package including the init.d script:

apt-get purge fuse-utils
insserv

This packages is no longer required, but generate problems because it umounts all fuse file systems very early (including the pve cluster file system mounted at /etc/pve).

Note: The 'insserv' command is neccessary to completely remove the service from the start/stop dependencies (/etc/init.d/.depend.*)

Debian Kernel 3.2 instead of PVE Kernel 2.6.32

If you installed your Proxmox on top of a Debian (and not from the original ISO installer), you will see a Debian 3.2 Kernel being active after upgrade and not a Proxmox 2.6.32-xx-pve. This is simply because Debian Wheezy ships a 3.2 Kernel and due to it's higher version, it gets activated as default kernel.

If OpenVZ doesn't work anymore and you installed PVE on top of Debian, you should find out which Kernel is running:

uname -a

To remove the Debian Kernel and activate the Proxmox Kernel, do the following:

apt-get purge linux-base

You will get a warning that you're going to remove the running kernel, and that linux-image-* packages will also be removed. You should also reboot as soon as possible to activate the pve Kernel.

New installation on new hardware

Install 3.x on new servers and move your VM´s step by step via backup/restore. If you choose this method you can do the move step by step and with minimum risk.

External links