はじめに
Proxmox VEは高機能なオープンソースの仮想化プラットフォームです。定期的にバージョンアップが行われ、新機能や安定性の向上、セキュリティ修正などが提供されています。本記事では、Proxmox VE 8.3.1から最新の8.4.0へのアップグレード手順について、3台のクラスタ構成での実施方法を詳しく解説します。
Proxmox VE 8.4.0の主な新機能・改善点
Proxmox VE 8.4.0(2025年4月9日リリース)には多くの新機能と改善が含まれています:
- 環境基盤のアップデート:Debian Bookworm (12.10)ベース、Linux Kernel 6.8.12-9(デフォルト)、オプショナルな6.14カーネル、QEMU 9.2.0、LXC 6.0.0、ZFS 2.2.7など
- NVIDIA vGPUのライブマイグレーション:vGPUなどのmediated deviceを使用する実行中の仮想マシンをライブマイグレーション可能に
- 外部バックアッププロバイダーサポート:APIを介して外部バックアップソリューションとの統合が可能に
- Virtiofsによるホスト・ゲスト間ディレクトリ共有:ネットワークファイルシステムのオーバーヘッドなしでのファイル共有
- AMD SEV-SNP (Secure Nested Paging)の初期サポート:ホストとゲスト間の分離強化
- Webインターフェースの改善:同意バナー、ファイルソートの改善、プロキシ設定の拡張など
- バックアップ・リストア機能の強化:フリージングバックアップの堅牢性向上、エラー処理の改善
- 各種ストレージ、クラスタ管理、ファイアウォール、SDN関連の多数の改善と修正
準備作業
システム状態の確認
アップグレード前に、現在のシステム状態を確認しましょう:
# Proxmoxバージョンの確認
pveversion
# クラスタ状態の確認
pvecm status
# ディスク容量の確認
df -h
# メモリ使用状況の確認
free -m
root@pve53:~# pveversion
pve-manager/8.3.3/f157a38b211595d6 (running kernel: 6.8.12-8-pve)
root@pve53:~# pvecm status
Cluster information
-------------------
Name: cluster
Config Version: 3
Transport: knet
Secure auth: on
Quorum information
------------------
Date: Tue May 6 09:33:32 2025
Quorum provider: corosync_votequorum
Nodes: 3
Node ID: 0x00000001
Ring ID: 1.136
Quorate: Yes
Votequorum information
----------------------
Expected votes: 3
Highest expected: 3
Total votes: 3
Quorum: 2
Flags: Quorate
Membership information
----------------------
Nodeid Votes Name
0x00000001 1 192.168.13.53 (local)
0x00000002 1 192.168.13.54
0x00000003 1 192.168.13.55
root@pve53:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.8G 0 3.8G 0% /dev
tmpfs 777M 1.6M 776M 1% /run
rpool/ROOT/pve-1 227G 3.0G 224G 2% /
tmpfs 3.8G 57M 3.8G 2% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
efivarfs 256K 71K 181K 29% /sys/firmware/efi/efivars
rpool/var-lib-vz 226G 1.9G 224G 1% /var/lib/vz
rpool 224G 128K 224G 1% /rpool
rpool/ROOT 224G 128K 224G 1% /rpool/ROOT
rpool/data 224G 128K 224G 1% /rpool/data
/dev/fuse 128M 32K 128M 1% /etc/pve
192.168.11.219:/mnt/zpool2/nfs 183G 6.0G 177G 4% /mnt/pve/NFS
tmpfs 777M 0 777M 0% /run/user/0
root@pve53:~# free -m
total used free shared buff/cache available
Mem: 7767 2637 5188 58 230 5130
Swap: 0 0 0
バックアップの取得
トラブル発生時の復旧に備え、以下のバックアップを取得します:
# 仮想マシンのバックアップ(重要なVMに対して実施)
vzdump <VMID> --compress zstd
# 設定ファイルのバックアップ
tar czvf /root/proxmox-config-backup.tar.gz /etc/pve
クラスタ環境でのローリングアップデート手順
クラスタ環境では、ノードを1台ずつ順番にアップグレードする「ローリングアップデート」が推奨されます。NFSデータストア上のVMを稼働させながらアップグレードを行います。
前提条件
- 3台のProxmoxサーバーでクラスタを構成
- ノード1: pve53 (192.168.11.53)
- ノード2: pve54 (192.168.11.54)
- ノード3: pve55 (192.168.11.55)
- NFSデータストア上に仮想マシンが稼働している
- 無償サブスクリプションを利用
全ノード共通:リポジトリの準備
各ノードで以下の手順を実行し、リポジトリを設定します。
- エンタープライズリポジトリの無効化:
sed -i 's/^deb /#deb /' /etc/apt/sources.list.d/pve-enterprise.list
- 無償リポジトリの追加:
echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list
- リポジトリ情報の更新:
リポジトリ情報の更新を行います。
この操作を行わない場合、最新バージョンへのアップグレードが行えない場合があります。
apt update
ノード1(pve53): 最初のノードのアップグレード
-
仮想マシンの移行:
- ノード1で実行中の仮想マシンを他のノードに移行します
- NFSデータストア上のVMは、クラスタ内の他のホストに簡単に移行できます
# ノード1から他のノードへVMを移行(GUIまたはCLIで実行)
qm migrate <VMID> <target-node> --online
状態確認
root@pve53:~# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
101 linuxmint running 2048 32.00 2012
102 mint3 stopped 4096 32.00 0
103 mint-non-qcow2 stopped 2048 32.00 0
仮想マシンのライブマイグレーション
root@pve53:~# qm migrate 101 pve54 --online
Requesting HA migration for VM 101 to node pve54
状態確認(完了までしばらく待つ)
root@pve53:~# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
102 mint3 stopped 4096 32.00 0
103 mint-non-qcow2 stopped 2048 32.00 0
-
メンテナンスモードの有効化:
- WebUIから「ノード」→「システム」→「オプション」→「メンテナンスモードを開始」を選択
- または、以下のコマンドを実行:
ha-manager crm-command node-maintenance enable <target-node>
状態確認
root@pve53:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 09:48:57 2025)
lrm pve53 (active, Tue May 6 09:49:02 2025)
lrm pve54 (active, Tue May 6 09:49:02 2025)
lrm pve55 (idle, Tue May 6 09:49:03 2025)
service vm:101 (pve54, started)
メンテナンスモード有効化
root@pve53:~# ha-manager crm-command node-maintenance enable pve53
状態確認(有効化されるまで少し待つ)
root@pve53:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 09:49:27 2025)
lrm pve53 (maintenance mode, Tue May 6 09:49:32 2025)
lrm pve54 (active, Tue May 6 09:49:32 2025)
lrm pve55 (idle, Tue May 6 09:49:33 2025)
service vm:101 (pve54, started)
- アップグレードの実行:
apt full-upgrade -y
- システムの再起動:
reboot
-
再起動後の確認:
- ノードが正常に起動したことを確認
- クラスタへの再参加を確認
- Proxmoxバージョンを確認
pveversion
pvecm status
root@pve53:~# pveversion
pve-manager/8.4.1/2a5fa54a8503f96d (running kernel: 6.8.12-10-pve)
root@pve53:~# pvecm status
Cluster information
-------------------
Name: cluster
Config Version: 3
Transport: knet
Secure auth: on
Quorum information
------------------
Date: Tue May 6 09:59:01 2025
Quorum provider: corosync_votequorum
Nodes: 3
Node ID: 0x00000001
Ring ID: 1.148
Quorate: Yes
Votequorum information
----------------------
Expected votes: 3
Highest expected: 3
Total votes: 3
Quorum: 2
Flags: Quorate
Membership information
----------------------
Nodeid Votes Name
0x00000001 1 192.168.13.53 (local)
0x00000002 1 192.168.13.54
0x00000003 1 192.168.13.55
-
メンテナンスモードの解除:
- WebUIから「ノード」→「システム」→「オプション」→「メンテナンスモードを終了」を選択
- または、target-node以外のノードで、以下のコマンドを実行:
ha-manager crm-command node-maintenance enable <target-node>
状態確認
root@pve54:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:01:07 2025)
lrm pve53 (maintenance mode, Tue May 6 10:01:06 2025)
lrm pve54 (active, Tue May 6 10:01:02 2025)
lrm pve55 (idle, Tue May 6 10:01:08 2025)
service vm:101 (pve54, started)
メンテナンスモードの無効化
root@pve54:~# ha-manager crm-command node-maintenance disable pve53
状態確認(無効化されるまでしばらく待つ)
root@pve54:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:01:17 2025)
lrm pve53 (idle, Tue May 6 10:01:21 2025)
lrm pve54 (active, Tue May 6 10:01:22 2025)
lrm pve55 (idle, Tue May 6 10:01:18 2025)
service vm:101 (pve54, started)
ノード2およびノード3のアップグレード
ノード1と同様の手順で、残りのノードを順番にアップグレードします。各ノードのアップグレード前に必ず以下を確認してください:
- 前のノードのアップグレードが完全に成功していること
- クラスタが正常な状態であること
- 仮想マシンを必要に応じて他のノードに移行していること
ノード2(pve54)のアップグレード
- 仮想マシンの移行:
状態確認
root@pve54:~# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
101 linuxmint running 2048 32.00 6462
仮想マシンのライブマイグレーション
root@pve54:~# qm migrate 101 pve55 --online
Requesting HA migration for VM 101 to node pve55
状態確認(完了までしばらく待つ)
root@pve54:~# qm list
- メンテナンスモードの有効化:
状態確認
root@pve54:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:15:37 2025)
lrm pve53 (idle, Tue May 6 10:15:37 2025)
lrm pve54 (active, Tue May 6 10:15:32 2025)
lrm pve55 (active, Tue May 6 10:15:39 2025)
service vm:101 (pve55, started)
メンテナンスモード有効化
root@pve54:~# ha-manager crm-command node-maintenance enable pve54
状態確認(有効化されるまで少し待つ)
root@pve54:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:16:27 2025)
lrm pve53 (idle, Tue May 6 10:16:37 2025)
lrm pve54 (maintenance mode, Tue May 6 10:16:37 2025)
lrm pve55 (active, Tue May 6 10:16:29 2025)
service vm:101 (pve55, started)
- アップグレードの実行:
apt full-upgrade -y
- システムの再起動:
reboot
- 再起動後の確認:
root@pve54:~# pveversion
pve-manager/8.4.1/2a5fa54a8503f96d (running kernel: 6.8.12-10-pve)
root@pve54:~# pvecm status
Cluster information
-------------------
Name: cluster
Config Version: 3
Transport: knet
Secure auth: on
Quorum information
------------------
Date: Tue May 6 10:32:27 2025
Quorum provider: corosync_votequorum
Nodes: 3
Node ID: 0x00000002
Ring ID: 1.163
Quorate: Yes
Votequorum information
----------------------
Expected votes: 3
Highest expected: 3
Total votes: 3
Quorum: 2
Flags: Quorate
Membership information
----------------------
Nodeid Votes Name
0x00000001 1 192.168.13.53
0x00000002 1 192.168.13.54 (local)
0x00000003 1 192.168.13.55
- メンテナンスモードの解除:
状態確認
root@pve55:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:33:37 2025)
lrm pve53 (idle, Tue May 6 10:33:43 2025)
lrm pve54 (maintenance mode, Tue May 6 10:33:40 2025)
lrm pve55 (active, Tue May 6 10:33:39 2025)
service vm:101 (pve55, started)
メンテナンスモードの無効化
root@pve55:~# ha-manager crm-command node-maintenance disable pve54
状態確認(無効化されるまでしばらく待つ)
root@pve55:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:33:57 2025)
lrm pve53 (idle, Tue May 6 10:34:03 2025)
lrm pve54 (idle, Tue May 6 10:34:05 2025)
lrm pve55 (active, Tue May 6 10:33:59 2025)
service vm:101 (pve55, started)
ノード3(pve55)のアップグレード
- 仮想マシンの移行:
状態確認
root@pve55:~# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
100 test stopped 2048 10.00 0
101 linuxmint running 2048 32.00 13445
仮想マシンのライブマイグレーション
root@pve55:~# qm migrate 101 pve53 --online
Requesting HA migration for VM 101 to node pve53
状態確認(完了までしばらく待つ)
root@pve55:~# qm list
VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
100 test stopped 2048 10.00 0
- メンテナンスモードの有効化:
状態確認
root@pve55:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:36:37 2025)
lrm pve53 (active, Tue May 6 10:36:38 2025)
lrm pve54 (idle, Tue May 6 10:36:40 2025)
lrm pve55 (active, Tue May 6 10:36:39 2025)
service vm:101 (pve53, started)
メンテナンスモード有効化
root@pve55:~# ha-manager crm-command node-maintenance enable pve55
状態確認(有効化されるまで少し待つ)
root@pve55:~# ha-manager status
quorum OK
master pve55 (active, Tue May 6 10:37:07 2025)
lrm pve53 (active, Tue May 6 10:37:08 2025)
lrm pve54 (idle, Tue May 6 10:37:10 2025)
lrm pve55 (maintenance mode, Tue May 6 10:37:14 2025)
service vm:101 (pve53, started)
- アップグレードの実行:
apt full-upgrade -y
- システムの再起動:
reboot
- 再起動後の確認:
root@pve55:~# pveversion
pve-manager/8.4.1/2a5fa54a8503f96d (running kernel: 6.8.12-10-pve)
root@pve55:~# pvecm status
Cluster information
-------------------
Name: cluster
Config Version: 3
Transport: knet
Secure auth: on
Quorum information
------------------
Date: Tue May 6 10:44:07 2025
Quorum provider: corosync_votequorum
Nodes: 3
Node ID: 0x00000003
Ring ID: 1.175
Quorate: Yes
Votequorum information
----------------------
Expected votes: 3
Highest expected: 3
Total votes: 3
Quorum: 2
Flags: Quorate
Membership information
----------------------
Nodeid Votes Name
0x00000001 1 192.168.13.53
0x00000002 1 192.168.13.54
0x00000003 1 192.168.13.55 (local)
- メンテナンスモードの解除:
状態確認
root@pve54:~# ha-manager status
quorum OK
master pve53 (active, Tue May 6 10:44:28 2025)
lrm pve53 (active, Tue May 6 10:44:28 2025)
lrm pve54 (idle, Tue May 6 10:44:35 2025)
lrm pve55 (maintenance mode, Tue May 6 10:44:35 2025)
service vm:101 (pve53, started)
メンテナンスモードの無効化
root@pve54:~# ha-manager crm-command node-maintenance disable pve55
状態確認(無効化されるまでしばらく待つ)
root@pve54:~# ha-manager status
quorum OK
master pve53 (active, Tue May 6 10:44:58 2025)
lrm pve53 (active, Tue May 6 10:44:58 2025)
lrm pve54 (idle, Tue May 6 10:45:00 2025)
lrm pve55 (idle, Tue May 6 10:45:00 2025)
service vm:101 (pve53, started)
アップグレード後の確認事項
すべてのノードのアップグレードが完了したら、以下の確認を行います:
- クラスタ状態の確認:
pvecm status
- 各ノードのバージョン確認:
pveversion
-
仮想マシンの動作確認:
- すべての仮想マシンが正常に起動するか確認
- ネットワーク接続に問題がないか確認
- 機能やパフォーマンスに問題がないか確認
-
WebUIの表示問題がある場合:
- ブラウザのキャッシュをクリア(Ctrl+Shift+R)して強制リロード
トラブルシューティング
アップデートが失敗した場合
# パッケージ設定の修復
dpkg --configure -a
# 依存関係の修復
apt install -f
クラスタ通信の問題が発生した場合
# corosyncサービスの再起動
systemctl restart corosync
# pve-clusterサービスの再起動
systemctl restart pve-cluster
再起動後にノードがクラスタに参加しない場合
# クラスタサービスのステータス確認
systemctl status corosync
systemctl status pve-cluster
# ログの確認
tail -n 100 /var/log/pve/cluster/corosync.log
まとめ
Proxmox VE 8.3.1から8.4.0へのアップグレードは、慎重に計画し実行することで、クラスタ環境でも安全に完了できます。本記事で紹介したローリングアップデートの手順に従うことで、サービスの中断を最小限に抑えつつ、最新バージョンの新機能や改善点を活用できるようになります。
アップグレード前のバックアップ取得と、各ステップでの確認を怠らないようにしましょう。問題が発生した場合は、トラブルシューティングセクションを参考に対処してください。