Categories
Uncategorized

Proxmox VE 8.4 to 9.0 In-Place Upgrade Guide

Proxmox VE 8.4 to 9.0 In-Place Upgrade Guide

Upgrade your Proxmox VE safely and efficiently by following this streamlined, step-by-step approach.


Prerequisites

  • Update all nodes to Proxmox VE 8.4.1 or newer.
  • Check repositories: Make sure your nodes have correct package repository configuration.
  • Ceph clusters: Upgrade Ceph Quincy/Reef to Ceph 19.2 Squid before upgrading to Proxmox VE 9.
  • If Proxmox Backup Server is installed: Upgrade it to version 4.
  • Access: Ensure you have reliable access (IPMI, IKVM, or physical recommended).
  • Backup: Create tested backups for all VMs and containers.
  • Free disk space: Minimum 5GB (preferably 10GB+) on root filesystem.
  • Cluster: Make sure the cluster is healthy.
  • Review known upgrade issues in the official documentation.

Test the Upgrade

Set up a test environment by installing Proxmox VE 8.4 on separate hardware or in a VM, and run through the upgrade before performing it on production.pve.proxmox+1


Step-by-Step Upgrade Process

1. Use Console or SSH

Prefer local console or SSH with a terminal multiplexer (e.g., tmux or screen) to avoid interruptions. Don’t upgrade via the web GUI virtual console.

2. Run Pre-Upgrade Checklist

Execute:

textpve8to9 --full

Resolve any issues flagged by the script. Re-run after fixes to confirm.

3. Migrate Critical Guests

Move VMs and containers that cannot have downtime to other nodes. Migration from older to newer Proxmox VE is supported; reverse is not.

4. Update Existing System

Upgrade to the latest 8.4 packages:

bashapt update
apt dist-upgrade
pveversion

Ensure pveversion shows at least 8.4.1.

If using Ceph, verify version 19 (Squid) with:

textceph --version

5. Update Repository Sources

Replace Debian Bookworm with Trixie:

bashsed -i 's/bookworm/trixie/g' /etc/apt/sources.list
sed -i 's/bookworm/trixie/g' /etc/apt/sources.list.d/pve-enterprise.list

Add the new Proxmox VE 9 repository using the deb822 style.

Enterprise example:

bashcat > /etc/apt/sources.list.d/pve-enterprise.sources << EOF
Types: deb
URIs: https://enterprise.proxmox.com/debian/pve
Suites: trixie
Components: pve-enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

No-subscription example:

bashcat > /etc/apt/sources.list.d/proxmox.sources << EOF
Types: deb
URIs: http://download.proxmox.com/debian/pve
Suites: trixie
Components: pve-no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

Remove or comment out old repository entries. Run apt update and apt policy to verify only the correct repositories remain.

6. Update Ceph Repositories (If Using Ceph)

For Ceph enterprise:

bashcat > /etc/apt/sources.list.d/ceph.sources << EOF
Types: deb
URIs: https://enterprise.proxmox.com/debian/ceph-squid
Suites: trixie
Components: enterprise
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

For no-subscription:

bashcat > /etc/apt/sources.list.d/ceph.sources << EOF
Types: deb
URIs: http://download.proxmox.com/debian/ceph-squid
Suites: trixie
Components: no-subscription
Signed-By: /usr/share/keyrings/proxmox-archive-keyring.gpg
EOF

Remove old ceph.com repository entries. Refresh subscriptions if needed.

7. Refresh Package Index

bashapt update

8. Perform the Upgrade

bashapt dist-upgrade

Approve configuration changes as prompted. For important config files, review differences before accepting.

9. Reboot Into Updated Kernel

After dist-upgrade completes, re-run the pve8to9 checker. Then reboot to load the new Proxmox VE 9 kernel.

10. Post-Upgrade Steps

  • Clear browser cache and reload Web UI (CTRL+SHIFT+R).
  • For clusters: Repeat on each node.
  • If using HA groups: They’re upgraded to HA rules automatically after all nodes run VE 9.
  • Check logs (journalctl -eu pve-ha-crm) for HA issues.

11. (Optional) Modernize Repository Format

You can migrate repositories to deb822 style:

bashapt modernize-sources

Review changes, then confirm to apply.


Common Issues & Fixes

  • proxmox-ve package is outdated: Update your repositories to point to VE 8.x/Bookworm before running apt update && apt dist-upgrade.
  • LVM autoactivation: Use the migration script /usr/share/pve-manager/migrations/pve-lvm-disable-autoactivation to disable autoactivation for guest volumes on shared LVM storages as recommended by the checklist.linuxconfig+1youtube

This concise upgrade guide ensures you have all critical steps covered for a safe and successful move from Proxmox VE 8.4 to 9.0. For full details and troubleshooting, consult Proxmox’s official documentation.youtubepve.proxmox+1

Add to follow-up

Check sources

  1. https://pve.proxmox.com/wiki/Upgrade_from_8_to_9
  2. https://linuxconfig.org/proxmox-virtual-environment-9-0-released-a-comprehensive-update-with-enhanced-virtualization
  3. https://www.youtube.com/watch?v=XLZyC_1IX_Q
  4. https://www.youtube.com/watch?v=N3Bp4aEsUG4
  5. https://www.youtube.com/watch?v=U776Rp6TcrE
  6. https://forum.proxmox.com/threads/i-recommend-upgrading-from-8-4-to-9.169405/
  7. https://syncbricks.com/proxmox-ve-8-to-9-upgrade-guide-debian-bookworm-to-trixie/
  8. https://www.reddit.com/r/selfhosted/comments/1miwk44/proxmox_9_is_out_today/
  9. https://forum.proxmox.com/threads/proxmox-virtual-environment-9-0-released.169258/
  10. https://forum.proxmox.com/threads/i-messed-up-upgrade-9-0.169314/