zaki work log

作業ログやら生活ログやらなんやら

Proxmox VEを7から8へアップグレード

Ver7だとCPU種別で制限があるというか新しいVMで不都合があるので、Proxmox VEを7から8へインプレースアップグレードしてみた記録。
あまり使い込んでないので最小構成レベルでの作業になってる。はず。

Proxmox VEの内部的にはDebian 11(Bullseye)からDebian 12(Bookworm)へのアップグレードに相当。

pve.proxmox.com

www.debian.org

チェックリストプログラムの実行

アップグレード前にチェックすることができるのでpve7to8を実行。
問題があれば警告してくれる。

実際に動かすと以下の通り。これはゲストVMが2台起動中であることを警告してくれている。

root@pve:~# pve7to8 
= CHECKING VERSION INFORMATION FOR PVE PACKAGES =

Checking for package updates..
PASS: all packages up-to-date

Checking proxmox-ve package version..
PASS: proxmox-ve package has version >= 7.4-1

Checking running kernel version..
PASS: running kernel '5.15.108-1-pve' is considered suitable for upgrade.       
= CHECKING CLUSTER HEALTH/SETTINGS =

SKIP: standalone node.

= CHECKING HYPER-CONVERGED CEPH STATUS =

SKIP: no hyper-converged ceph setup detected!

= CHECKING CONFIGURED STORAGES =

PASS: storage 'local' enabled and active.
PASS: storage 'local-lvm' enabled and active.
PASS: storage 'pecorino' enabled and active.
PASS: storage 'wdblue1000gb' enabled and active.
INFO: Checking storage content type configuration..
PASS: no storage content problems found
PASS: no storage re-uses a directory for multiple content types.

= MISCELLANEOUS CHECKS =

INFO: Checking common daemon services..
PASS: systemd unit 'pveproxy.service' is in state 'active'
PASS: systemd unit 'pvedaemon.service' is in state 'active'
PASS: systemd unit 'pvescheduler.service' is in state 'active'
PASS: systemd unit 'pvestatd.service' is in state 'active'
INFO: Checking for supported & active NTP service..
PASS: Detected active time synchronisation unit 'chrony.service'
INFO: Checking for running guests..
WARN: 2 running guest(s) detected - consider migrating or stopping them.
INFO: Checking if the local node's hostname 'pve' is resolvable..
INFO: Checking if resolved IP is configured on local node..
PASS: Resolved node IP '192.168.0.4' configured and active on single interface. INFO: Check node certificate's RSA key size
PASS: Certificate 'pve-root-ca.pem' passed Debian Busters (and newer) security level for TLS connections (4096 >= 2048)
PASS: Certificate 'pve-ssl.pem' passed Debian Busters (and newer) security level for TLS connections (2048 >= 2048)
INFO: Checking backup retention settings..
PASS: no backup retention problems found.
INFO: checking CIFS credential location..
PASS: no CIFS credentials at outdated location found.
INFO: Checking permission system changes..
INFO: Checking custom role IDs for clashes with new 'PVE' namespace..
PASS: no custom roles defined, so no clash with 'PVE' role ID namespace enforced in Proxmox VE 8
INFO: Checking if LXCFS is running with FUSE3 library, if already upgraded..    SKIP: not yet upgraded, no need to check the FUSE library version LXCFS uses    INFO: Checking node and guest description/note length..
PASS: All node config descriptions fit in the new limit of 64 KiB
PASS: All guest config descriptions fit in the new limit of 8 KiB
INFO: Checking container configs for deprecated lxc.cgroup entries
PASS: No legacy 'lxc.cgroup' keys found.
INFO: Checking if the suite for the Debian security repository is correct..     PASS: found no suite mismatch
INFO: Checking for existence of NVIDIA vGPU Manager..
PASS: No NVIDIA vGPU Service found.
INFO: Checking bootloader configuration...
SKIP: not yet upgraded, no need to check the presence of systemd-boot
SKIP: NOTE: Expensive checks, like CT cgroupv2 compat, not performed without '--full' parameter

= SUMMARY =

TOTAL:    31
PASSED:   25
SKIPPED:  5
WARNINGS: 1
FAILURES: 0

ATTENTION: Please check the output for detailed information!
root@pve:~# 

VE 7の最新版へアップデート

apt-get update
apt-get dist-upgrade

バージョン確認

root@pve:~# pveversion 
pve-manager/7.4-16/0f39f621 (running kernel: 5.15.108-1-pve)

APTラインの更新

パッケージ用

sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list

あと自宅の環境では、無償版リポジトリ/etc/apt/sources.list.d/pve-no-subscription.listで定義してるのでこちらも修正。

sed -i 's/bullseye/bookworm/g' /etc/apt/sources.list.d/pve-no-subsc ription.list

中身はこんな感じ

root@pve:~# cat /etc/apt/sources.list.d/pve-no-subscription.list 

# PVE pve-no-subscription repository provided by proxmox.com,
# NOT recommended for production use
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription

Ceph

は使っていないのでスキップ

アップグレード

この辺はDebianを使う時と同じ。

apt update
apt dist-upgrade

実行するとこんな感じ

root@pve:~# apt update
Get:1 http://ftp.jp.debian.org/debian bookworm InRelease [151 kB]
Get:2 http://ftp.jp.debian.org/debian bookworm-updates InRelease [52.1 kB]
Get:3 http://ftp.jp.debian.org/debian bookworm/main amd64 Packages [8,906 kB]
Get:4 http://security.debian.org bookworm-security InRelease [48.0 kB]
Get:5 http://security.debian.org bookworm-security/main amd64 Packages [53.2 kB]
Get:6 http://security.debian.org bookworm-security/main Translation-en [30.6 kB]
Get:7 http://ftp.jp.debian.org/debian bookworm/main Translation-en [6,078 kB]
Get:8 http://download.proxmox.com/debian/pve bookworm InRelease [2,768 B]
Get:9 http://download.proxmox.com/debian/pve bookworm/pve-no-subscription amd64 Packages [124 kB]
Get:10 http://ftp.jp.debian.org/debian bookworm/contrib amd64 Packages [54.3 kB]
Get:11 http://ftp.jp.debian.org/debian bookworm/contrib Translation-en [48.7 kB]
Get:12 http://ftp.jp.debian.org/debian bookworm-updates/main amd64 Packages [4,732 B]
Get:13 http://ftp.jp.debian.org/debian bookworm-updates/main Translation-en [3,528 B]
Fetched 15.6 MB in 4s (3,687 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
589 packages can be upgraded. Run 'apt list --upgradable' to see them.
root@pve:~# apt dist-upgrade 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
The following package was automatically installed and is no longer required:
  telnet
Use 'apt autoremove' to remove it.
The following packages will be REMOVED:
  libgnutlsxx28 libnfsidmap2 libsemanage1
The following NEW packages will be installed:
  cron-daemon-common dbus-bin dbus-daemon dbus-session-bus-common
  dbus-system-bus-common dbus-user-session ethtool gcc-12-base i965-va-driver
  inetutils-telnet intel-media-va-driver libboost-context1.74.0

  [...]

589 upgraded, 88 newly installed, 3 to remove and 0 not upgraded.
Need to get 558 MB of archives.
After this operation, 885 MB of additional disk space will be used.
Do you want to continue? [Y/n]

いくつかの設定ファイルで更新するかどうかを確認される。この辺りはアップグレードのドキュメントに推奨値が載っているので参考にする。

apt-listchanges: Mailing root: apt-listchanges: news for pve
Extracting templates from packages: 100%
Preconfiguring packages ...
(Reading database ... 51225 files and directories currently installed.)
Preparing to unpack .../base-files_12.4+deb12u1_amd64.deb ...
Unpacking base-files (12.4+deb12u1) over (11.1+deb11u7) ...
Setting up base-files (12.4+deb12u1) ...
Installing new version of config file /etc/debian_version ...

Configuration file '/etc/issue'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** issue (Y/I/N/O/D/Z) [default=N] ?
Progress: [  0%] [..........................................................] 
  • /etc/issue: N
  • /etc/lvm/lvm.conf: Y
  • /etc/apt/sources.list.d/pve-enterprise.list: N

アップグレード後のチェック

apt dist-upgradeが完了したら、再度pve7to8でチェック実施。
手元の環境では以下の通り。要はリブートしろってことね。

root@pve:~# pve7to8 
= CHECKING VERSION INFORMATION FOR PVE PACKAGES =

[...]

Checking running kernel version..
WARN: a suitable kernel (proxmox-kernel-6.2) is intalled, but an unsuitable (5.15.108-1-pve) is booted, missing reboot?!

[...]

INFO: Checking if LXCFS is running with FUSE3 library, if already upgraded..
WARN: systems seems to be upgraded but LXCFS is still running with FUSE 2 library, not yet rebooted?

[...]

= SUMMARY =

TOTAL:    31
PASSED:   25
SKIPPED:  4
WARNINGS: 2
FAILURES: 0

ATTENTION: Please check the output for detailed information!

問題無ければrebootを実行する。

起動確認

無事にアップグレードできました。

root@pve:~# pveversion 
pve-manager/8.0.4/d258a813cfa6b390 (running kernel: 6.2.16-6-pve)

バージョン8になったことで、VMのCPU種別にx-86-64-v2が選択可能になりました。