일반적으로 PVE 구축 시 iso 이미지를 사용하여 운영체제를 설치하지만 데비안에서는 설치 후 커널을 Proxmox로 바꾸고 부팅하면 된다는 글이 있었습니다.
널리 사용되는 데비안 계열의 Ubuntu 24.04 운영체제에 Proxmox 노드 구축이 될까 싶어서 테스트를 진행하였습니다.
최종 목표는 iso 이미지로 기존에 구축되어 있는 pve1에 연결하여 두 개의 노드를 연결하는 것입니다.
hostnamectl set-hostname pve2
apt update -y && apt full-upgrade -y
apt install -y wget curl vim
pve 간 시간이 일치해야 하기 때문에 pve1의 Asia/Seoul에 맞춰 시간을 동기화해줍니다.
# pve1 확인 시
root@pve1:~# timedatectl
===
Local time: Thu 2024-09-05 11:05:25 KST
Universal time: Thu 2024-09-05 02:05:25 UTC
RTC time: Thu 2024-09-05 02:05:25
Time zone: Asia/Seoul (KST, +0900)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
===
그냥 proxmox 설치 시 perl 5.36.0 의존성 패키지 관련 에러가 발생합니다.
The following packages have unmet dependencies:
libpve-rs-perl : Depends: perlapi-5.36.0 but it is not installable
libpve-u2f-server-perl : Depends: perlapi-5.36.0 but it is not installable
librados2-perl : Depends: perlapi-5.36.0 but it is not installable
lxc-pve : Depends: criu (>= 1.5.2-1) but it is not installable
Depends: libgnutlsxx30 but it is not installable
proxmox-ve : Depends: pve-qemu-kvm but it is not installable
pve-cluster : Depends: perlapi-5.36.0 but it is not installable
qemu-server : Depends: pve-qemu-kvm (>= 7.1~) but it is not installable
spiceterm : Depends: pve-qemu-kvm but it is not installable
vncterm : Depends: libjpeg62-turbo (>= 1.3.1) but it is not installable
E: Unable to correct problems, you have held broken packages.
Ubuntu 24.04 기본 perl은 v5.38.2 이므로 다운그레이드를 위해 두 가지 방법 중 하나를 골라 설치합니다.
apt install -y build-essential libreadline-dev zlib1g-dev
cd /usr/local/src
wget https://www.cpan.org/src/5.0/perl-5.36.0.tar.gz
tar -xzf perl-5.36.0.tar.gz
cd perl-5.36.0
./Configure -des -Dprefix=/usr/local/perl-5.36.0
make -j $CORE_NUM && make install
/usr/local/perl-5.36.0/bin/perl -v
===
This is perl 5, version 36, subversion 0 (v5.36.0) built for x86_64-linux
Copyright 1987-2022, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl". If you have access to the
Internet, point your browser at https://www.perl.org/, the Perl Home Page.
===

이제 환경변수에 우선순위로 추가해줍니다.
# origin PATH 백업
echo $PATH
vi ~/.bashrc
===
# PATH ori 240904
# /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
export PATH="/usr/local/perl-5.36.0/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"
===
source ~/.bashrc
이제 그냥 perl -v만 해도 바로 v5.36.0 으로 출력됩니다.
apt install -y perlbrew
perlbrew init
perlbrew install perl-5.36.0
perlbrew switch perl-5.36.0
현재 pve1의 proxmox 버전은 8.2.2 입니다.
https://pve.proxmox.com/wiki/FAQ#faq-support-table
vi /etc/apt/sources.list.d/pve-install-repo.list
===
deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription
===
wget http://download.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
apt update -y && apt dist-upgrade -y
패키지 버전이 몇으로 설치되는지 확인합니다.
apt show proxmox-ve
===
Package: proxmox-ve
Version: 8.2.0
Priority: optional
Section: admin
Maintainer: Proxmox Support Team <support@proxmox.com>
Installed-Size: 27.6 kB
Provides: proxmox-virtual-environment
Depends: apt, openssh-client, openssh-server, proxmox-archive-keyring, proxmox-default-kernel, proxmox-kernel-helper (>= 8.0.3), pve-manager (>= 8.0.4), pve-qemu-kvm, qemu-server, systemd-sysv
Homepage: https://www.proxmox.com
Download-Size: 5196 B
APT-Sources: http://download.proxmox.com/debian/pve bookworm/pve-no-subscription amd64 Packages
Description: Proxmox Virtual Environment
The Proxmox Virtual Environment is an easy to use Open Source
virtualization platform for running Virtual Appliances and Virtual
Machines. This is a meta package which will install everything
needed.
===

apt install -y proxmox-ve postfix open-iscsi
perlapi-5.36.0 패키지(모듈) 찾기가 어려움이 있어 중간에 iso 이미지로 구축된 노드 서버로 변경하였습니다.