Proxmoxバージョンアップ ver7から8
なんかProxmoxのver7はサポート終了したらしい。
ええ、なんとなく聞いてはいたのだが、忙しさにかまけて放置状態であった。サポート切れの仮想環境を使うのもなんか気が引けるのでver7からver8へアップグレードするわけである。
pve7to8コマンドの実行
Proxmox ver 7.XXではpve7to8コマンドでバージョンアップ可能か調べることができる。細かいバージョンはちょっと?
早速pve7to8コマンドを実行。
= SUMMARY =
TOTAL: 42
PASSED: 32
SKIPPED: 5
WARNINGS: 4
FAILURES: 1
ATTENTION: Please check the output for detailed information!
Try to solve the problems one at a time and then run this checklist tool again.
ガーン。ダメだと言われた。
問題はクラスタで発生している模様。
= CHECKING CLUSTER HEALTH/SETTINGS =
PASS: systemd unit 'pve-cluster.service' is in state 'active'
PASS: systemd unit 'corosync.service' is in state 'active'
PASS: Cluster Filesystem is quorate.
Analzying quorum settings and state..
FAIL: 1 nodes are offline!
INFO: configured votes - nodes: 4
INFO: configured votes - qdevice: 0
INFO: current expected votes: 4
INFO: current total votes: 3
WARN: total votes < expected votes: 3/4!
pve1(Mac mini)が立ち上がってないだけか。しばらく起動させてないけど、大丈夫か?
一応は立ち上がった。
もう一度pve7to8をやってみる。
Checking for package updates..
WARN: updates for the following packages are available:
これはアップデートをサボっているからかな。
WARN: Less than 5 GB free space on root file system.
rootファイルシステムの空きがない。えーなんか削除しないといけないの?
INFO: Checking for running guests..
WARN: 2 running guest(s) detected - consider migrating or stopping them.
guestって誰?誰もゲストは招待していないが…
警告を取る
とりあえず、パッケージを更新しよう。

パッケージを更新して、apt install grub-efi-amd64でパッケージを追加インストールしたら、警告がひとつ減った。
guestはコンテナやVMのことか。コンテナとVMをシャットダウンしたら警告がまたひとつ減った。
rootディスク容量が足りないのはどうしようもないなぁ。とりあえず置いておく。
pve0とpve1は空き容量が5G以上あるので全てパスした。なので、pve0からやってみるか。
アップグレードするぞー
まずは、sshでpve0にログイン。
Webコンソールでやるとなんか途中で切れてダメっぽい。
ssh root@192.168.0.3
root@192.168.0.3's password:
apt updateで更新を確認
root@pve0:~# apt update
ヒット:1 http://security.debian.org bullseye-security InRelease
ヒット:2 http://ftp.jp.debian.org/debian bullseye InRelease
取得:3 http://ftp.jp.debian.org/debian bullseye-updates InRelease [44.1 kB]
ヒット:4 http://download.proxmox.com/debian/pve bullseye InRelease
ヒット:5 http://download.proxmox.com/debian/ceph-pacific bullseye InRelease
44.1 kB を 2秒 で取得しました (24.4 kB/s)
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています… 完了
状態情報を読み取っています… 完了
パッケージはすべて最新です。
apt dist-upgradeでバージョンアップを確認
root@pve0:~# apt dist-upgrade
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています… 完了
状態情報を読み取っています… 完了
アップグレードパッケージを検出しています… 完了
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。
この時点ではバージョンアップなし。
一応バージョンを確認して。
root@pve0:~# pveversion
pve-manager/7.4-19/f98bf8d4 (running kernel: 5.15.158-2-pve)
ソースリポジトリを変更
bullseye(ver7)をbookworm(ver8)に変更すれば良いのか?
ここがキモなのか?
root@pve0:~# sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list
root@pve0:~#
root@pve0:~# cat /etc/apt/sources.list
deb http://ftp.jp.debian.org/debian bookworm main contrib
deb http://ftp.jp.debian.org/debian bookworm-updates main contrib
deb http://download.proxmox.com/debian/pve buster pve-no-subscription
security updates
deb http://security.debian.org bookworm-security main contrib
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
もう一回 apt update
変更後もう一回apt updateすると
root@pve0:~# apt update
取得:1 http://security.debian.org bookworm-security InRelease [48.0 kB]
取得:2 http://ftp.jp.debian.org/debian bookworm InRelease [151 kB]
取得:3 http://ftp.jp.debian.org/debian bookworm-updates InRelease [55.4 kB]
取得:4 http://security.debian.org bookworm-security/main amd64 Packages [258 kB]
取得:5 http://security.debian.org bookworm-security/main Translation-en [155 kB]
取得:6 http://security.debian.org bookworm-security/contrib amd64 Packages [896 B]
取得:7 http://security.debian.org bookworm-security/contrib Translation-en [652 B]
取得:8 http://ftp.jp.debian.org/debian bookworm/main amd64 Packages [8,792 kB]
取得:9 http://download.proxmox.com/debian/pve bookworm InRelease [2,768 B]
ヒット:10 http://download.proxmox.com/debian/ceph-pacific bullseye InRelease
取得:11 http://download.proxmox.com/debian/pve bookworm/pve-no-subscription amd64 Packages [467 kB]
取得:12 http://ftp.jp.debian.org/debian bookworm/main Translation-en [6,109 kB]
取得:13 http://ftp.jp.debian.org/debian bookworm/main Translation-ja [754 kB]
取得:14 http://ftp.jp.debian.org/debian bookworm/contrib amd64 Packages [54.1 kB]
取得:15 http://ftp.jp.debian.org/debian bookworm/contrib Translation-en [48.8 kB]
取得:16 http://ftp.jp.debian.org/debian bookworm-updates/main amd64 Packages [512 B]
取得:17 http://ftp.jp.debian.org/debian bookworm-updates/main Translation-en [360 B]
16.9 MB を 5秒 で取得しました (3,283 kB/s)
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています… 完了
状態情報を読み取っています… 完了
アップグレードできるパッケージが 636 個あります。表示するには 'apt list --upgradable' を実行してください。
となった。なんか行けそう。
apt dist-upgradeでバージョンアップ!
もう一回 apt dist-upgradeする。
root@pve0:~# apt dist-upgrade
パッケージリストを読み込んでいます… 完了
依存関係ツリーを作成しています… 完了
状態情報を読み取っています… 完了
アップグレードパッケージを検出しています… 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
libjaeger libsqlite3-mod-ceph python-pastedeploy-tpl telnet
これを削除するには 'apt autoremove' を利用してください。
以下のパッケージは「削除」されます:
libgnutlsxx28 libnfsidmap2 libsemanage1
以下のパッケージが新たにインストールされます:
cron-daemon-common dbus-bin dbus-daemon dbus-session-bus-common dbus-system-bus-common dbus-user-session
fonts-font-logos gcc-12-base i965-va-driver inetutils-telnet intel-media-va-driver libboost-context1.74.0
libboost-filesystem1.74.0 libboost-iostreams1.74.0 libboost-program-options1.74.0 libboost-python1.74.0
libboost-thread1.74.0 libbpf1 libcbor0.8 libdaxctl1 libdpkg-perl libdrm-amdgpu1 libdrm-intel1 libdrm-nouveau2
libdrm-radeon1 libevent-core-2.1-7 libffi8 libfile-fcntllock-perl libfile-find-rule-perl libflac12 libfmt9
libgnutlsxx30 libgprofng0 libicu72 libigdgmm12 libldap-2.5-0 libldap-common libllvm15 libmp3lame0 libmpg123-0
libndctl6 libnet-libidn2-perl libnet-subnet-perl libnfsidmap1 libnumber-compare-perl libnvme1 libpciaccess0
libperl5.36 libpmem1 libproc2-0 libprotobuf32 libpve-network-api-perl libpve-network-perl libpve-notify-perl
libpython3.11 libpython3.11-minimal libpython3.11-stdlib libregexp-ipv6-perl libsemanage2 libsepol2 libsocket6-perl
libssl3 libsubid4 libsystemd-shared libtext-glob-perl liburcu8 liburing2 libva-drm2 libva2 libvulkan1
libwayland-client0 libx11-xcb1 libxcb-dri2-0 libxcb-dri3-0 libxcb-present0 libxcb-randr0 libxcb-sync1 libxcb-xfixes0
libxshmfence1 libz3-4 mesa-va-drivers mesa-vulkan-drivers perl-modules-5.36 proxmox-default-kernel proxmox-firewall
proxmox-kernel-6.8 proxmox-kernel-6.8.12-10-pve-signed proxmox-termproxy pve-edk2-firmware-legacy
pve-edk2-firmware-ovmf pve-esxi-import-tools pve-nvidia-vgpu-helper python3-autocommand python3-ceph
python3-charset-normalizer python3-cheroot python3-inflect python3-jaraco.classes python3-jaraco.collections
python3-jaraco.context python3-jaraco.functools python3-jaraco.text python3-more-itertools python3-pastedeploy-tpl
python3-portend python3-pyparsing python3-pyvmomi python3-setuptools python3-systemd python3-tempora python3-tz
python3-wcwidth python3-zc.lockfile python3.11 python3.11-minimal sgml-base usrmerge util-linux-extra va-driver-all
virtiofsd
以下のパッケージはアップグレードされます:
adduser apparmor apt apt-utils attr avahi-daemon base-files base-passwd bash bash-completion bc bind9-dnsutils
bind9-host bind9-libs binutils binutils-common binutils-x86-64-linux-gnu bridge-utils bsd-mailx bsdextrautils
bsdutils btrfs-progs busybox bzip2 ca-certificates ceph ceph-base ceph-common ceph-fuse ceph-mds ceph-mgr
ceph-mgr-modules-core ceph-mon ceph-osd chrony cifs-utils console-setup console-setup-linux coreutils corosync cpio
criu cron cryptsetup-bin cstream curl dash dbus debconf debconf-i18n debian-archive-keyring debian-faq debianutils
diffutils dirmngr distro-info-data dmeventd dmidecode dmsetup doc-debian dpkg e2fsprogs ebtables efibootmgr eject
ethtool faketime fdisk fdutils file findutils fontconfig fontconfig-config fonts-dejavu-core
fonts-glyphicons-halflings fuse gdisk genisoimage gettext-base glusterfs-client glusterfs-common gnupg gnupg-l10n
gnupg-utils gnutls-bin gpg gpg-agent gpg-wks-client gpg-wks-server gpgconf gpgsm gpgv grep groff-base grub-common
grub-efi-amd64 grub-efi-amd64-bin grub-pc-bin grub2-common gzip hdparm hostname ifupdown2 init init-system-helpers
initramfs-tools initramfs-tools-core iperf iperf3 iproute2 ipset iptables iputils-ping isc-dhcp-client
…省略…
python3-rados python3-rbd python3-reportbug python3-requests python3-rgw python3-simplegeneric
python3-singledispatch python3-six python3-soupsieve python3-talloc python3-tempita python3-urllib3 python3-waitress
python3-webob python3-webtest python3-werkzeug python3-yaml qemu-server readline-common reportbug rpcbind rrdcached
rsync rsyslog runit-helper samba-common samba-libs sed sensible-utils smartmontools smbclient socat spiceterm spl
sqlite3 ssh ssl-cert strace sudo swtpm swtpm-libs swtpm-tools systemd systemd-sysv sysvinit-utils tar tasksel
tasksel-data tcpdump telnet thin-provisioning-tools time traceroute tzdata ucf udev uidmap usbutils util-linux
uuid-runtime vim-common vim-tiny vncterm wamerican wget whiptail xfsprogs xkb-data xsltproc xxd xz-utils
zfs-initramfs zfs-zed zfsutils-linux zlib1g zstd
アップグレード: 636 個、新規インストール: 120 個、削除: 3 個、保留: 0 個。
698 MB のアーカイブを取得する必要があります。
この操作後に追加で 925 MB のディスク容量が消費されます。
続行しますか? [Y/n] y
ここで、yを入力。
取得:1 http://security.debian.org bookworm-security/main amd64 liblzma5 amd64 5.4.1-1 [205 kB]
取得:2 http://ftp.jp.debian.org/debian bookworm/main amd64 base-files amd64 12.4+deb12u10 [70.9 kB]
取得:3 http://security.debian.org bookworm-security/main amd64 xz-utils amd64 5.4.1-1 [471 kB]
以下は省略
インストールのためのダウンロードが始まった。
しばらくすると、キーボードの選択画面になった。
日本語を選択する。
次にiperf3がどうのという画面になった。ネットワークを試験するのか?今は別にやらなくてもOK。

次にサービスを自動で再起動するかどうかの質問。いちいち止まるのは面倒なので「はい」を選択。

なんか設定ファイルが変更されているといちいち聞いてくる。「デフォルトでいいか」ということでエンター。
20分くらいで終了。
再起動して確認
pve0を再起動してバージョンを確認する。
root@pve0:~# pveversion
pve-manager/8.4.1/2a5fa54a8503f96d (running kernel: 6.8.12-10-pve)
ちゃんとバージョンアップしてる!
よしよし、ということで他のノードもバージョンアップしちゃうよ…
pve0やったので、pve1をやる…OK
pve4もやる…OK
pvemだけrootファイルシステムの空き容量が足りない。なぜかこいつだけやけにrootのディスクが小さい。どうやってインストールしたんだっけか?
なんとか拡張できないの?
pve-rootのリサイズ
なんかできるみたいなので、やってみよう。
root@pvem:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
loop0 7:0 0 8G 0 loop
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 1007K 0 part
├─sda2 8:2 0 512M 0 part /boot/efi
└─sda3 8:3 0 31.5G 0 part
├─pve-swap 253:0 0 3.9G 0 lvm [SWAP]
├─pve-root 253:1 0 7.8G 0 lvm /
├─pve-data_tmeta 253:2 0 1G 0 lvm
│ └─pve-data 253:4 0 14G 0 lvm
└─pve-data_tdata 253:3 0 14G 0 lvm
└─pve-data 253:4 0 14G 0 lvm
lsblkでpve-rootのサイズを確認。sdaは120Gあるが、pve-rootには8Gしか割り当てられてない。
root@pvem:~# gdisk -l /dev/sda
GPT fdisk (gdisk) version 1.0.6
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 250069680 sectors, 119.2 GiB
Model: TS128GSSD230S
Sector size (logical/physical): 512/512 bytes
Disk identifier (GUID): 55F61811-D06D-4B5D-AFFE-E627BC2E25E9
Partition table holds up to 128 entries
Main partition table begins at sector 2 and ends at sector 33
First usable sector is 34, last usable sector is 250069646
Partitions will be aligned on 2-sector boundaries
Total free space is 182960782 sectors (87.2 GiB)
Number Start (sector) End (sector) Size Code Name
1 34 2047 1007.0 KiB EF02
2 2048 1050623 512.0 MiB EF00
3 1050624 67108864 31.5 GiB 8E00
パーティションはGPTスタイルらしい。sda3が31Gはあるみたいだけど、ここを拡張すれば良いのか?拡張するには削除して追加すれば良いみたいだが...
root@pvem:~# gdisk /dev/sda
GPT fdisk (gdisk) version 1.0.6
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Command (? for help): d
Partition number (1-3): 3
Command (? for help): n
Partition number (3-128, default 3): 3
First sector (1050624-250069646, default = 1050624) or {+-}size{KMGTP}:
Last sector (1050624-250069646, default = 250069646) or {+-}size{KMGTP}:
Current type is 8300 (Linux filesystem)
Hex code or GUID (L to show codes, Enter = 8300): 8E00
Changed type of partition to 'Linux LVM'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sda.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)
The operation has completed successfully.
ここで一回リブート。その前にコンテナを落とす。
LVMの拡張
次にLVMを拡張しないといけないらしい。
root@pvem:~# pvdisplay
--- Physical volume ---
PV Name /dev/sda3
VG Name pve
PV Size <31.50 GiB / not usable 3.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 8063
Free PE 992
Allocated PE 7071
PV UUID cdrK6v-0qC4-IR3d-r1jx-VEck-II2V-M7QGyY
pvresizeコマンドで物理ボリュームを拡張できるみたい。やってみる。
root@pvem:~# pvresize /dev/sda3
Physical volume "/dev/sda3" changed
1 physical volume(s) resized or updated / 0 physical volume(s) not resized
root@pvem:~# pvdisplay
--- Physical volume ---
PV Name /dev/sda3
VG Name pve
PV Size 118.74 GiB / not usable <2.32 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 30397
Free PE 23326
Allocated PE 7071
PV UUID cdrK6v-0qC4-IR3d-r1jx-VEck-II2V-M7QGyY
あーなんかできたっぽい。
pve-rootは論理ボリュームなので、lvextendコマンドでやるらしい。とりあえずは20G程度増やしてみよう。--testオプションを付けて一回試験してみる。
root@pvem:~# lvextend --test -L +20G /dev/pve/root
TEST MODE: Metadata will NOT be updated and volumes will not be (de)activated.
Size of logical volume pve/root changed from 7.75 GiB (1984 extents) to 27.75 GiB (7104 extents).
Logical volume pve/root successfully resized.
successfullyと出たのでOKでしょう。
root@pvem:~# lvextend -L +20G /dev/pve/root
Size of logical volume pve/root changed from 7.75 GiB (1984 extents) to 27.75 GiB (7104 extents).
Logical volume pve/root successfully resized.
root@pvem:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 119.2G 0 disk
├─sda1 8:1 0 1007K 0 part
├─sda2 8:2 0 512M 0 part /boot/efi
└─sda3 8:3 0 118.7G 0 part
├─pve-swap 253:0 0 3.9G 0 lvm [SWAP]
├─pve-root 253:1 0 27.8G 0 lvm /
├─pve-data_tmeta 253:2 0 1G 0 lvm
│ └─pve-data 253:4 0 14G 0 lvm
└─pve-data_tdata 253:3 0 14G 0 lvm
└─pve-data 253:4 0 14G 0 lvm
できた!
ファイルシステムのリサイズ
しかし、dfしてみると拡張されていない。ファイルシステムも拡張する必要があるのか。ファイルシステムはresize2fsコマンドでリサイズする。
root@pvem:~# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
udev 7.7G 0 7.7G 0% /dev
tmpfs 1.6G 1.2M 1.6G 1% /run
/dev/mapper/pve-root 7.6G 5.1G 2.2G 71% /
tmpfs 7.8G 48M 7.7G 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda2 511M 336K 511M 1% /boot/efi
ssdshare1 893G 470G 424G 53% /ssdshare1
ssdshare1/subvol-100-disk-0 8.0G 5.3G 2.8G 66% /ssdshare1/subvol-100-disk-0
hddshare2 899G 886G 13G 99% /hddshare2
/dev/fuse 128M 48K 128M 1% /etc/pve
192.168.0.7:/hddshare2 899G 886G 13G 99% /mnt/pve/nfshdd2
192.168.0.6:/ssdshare2 450G 16G 435G 4% /mnt/pve/nfsssd2
192.168.0.7:/ssdshare1 893G 470G 424G 53% /mnt/pve/nfsssd1
tmpfs 1.6G 0 1.6G 0% /run/user/0
root@pvem:~# resize2fs /dev/mapper/pve-root
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/mapper/pve-root is mounted on /; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 4
The filesystem on /dev/mapper/pve-root is now 7274496 (4k) blocks long.
root@pvem:~# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
udev 7.7G 0 7.7G 0% /dev
tmpfs 1.6G 1.2M 1.6G 1% /run
/dev/mapper/pve-root 28G 5.1G 21G 20% /
tmpfs 7.8G 48M 7.7G 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda2 511M 336K 511M 1% /boot/efi
ssdshare1 893G 470G 424G 53% /ssdshare1
ssdshare1/subvol-100-disk-0 8.0G 5.3G 2.8G 66% /ssdshare1/subvol-100-disk-0
hddshare2 899G 886G 13G 99% /hddshare2
/dev/fuse 128M 48K 128M 1% /etc/pve
192.168.0.7:/hddshare2 899G 886G 13G 99% /mnt/pve/nfshdd2
192.168.0.6:/ssdshare2 450G 16G 435G 4% /mnt/pve/nfsssd2
192.168.0.7:/ssdshare1 893G 470G 424G 53% /mnt/pve/nfsssd1
tmpfs 1.6G 0 1.6G 0% /run/user/0
見事pve-rootが拡張できた!
そういえば、EC2のルートファイルシステムを拡張するときもこんな感じでやっていたっけか。手順を整理すると
- 物理ボリュームをリサイズ
- 論理ボリュームをリサイズ
- ファイルシステムをリサイズ
の順でやれば良い。
今回は、パーティッションを拡張できたので問題なかったが、拡張したいパーティッションの後に別のパーティッションが存在していると拡張できないと思われるので注意されたし。
これで、Proxmoxのバージョンアップが完了した。

投稿者プロフィール

-
システムエンジニア
喋れる言語:日本語、C言語、SQL、JavaScript
最新の投稿
コンピューター関係の記事2025年5月5日Proxmoxバージョンアップ ver7から8
コンピューター関係の記事2025年4月30日データベースのレプリケーションの話【リードレプリカ】
コンピューター関係の記事2025年4月29日Nodejsの同期、非同期について【Promiseとか】
コンピューター関係の記事2025年4月26日アイキャッチ画像にSQLアイコンとJSONアイコンが欲しい