この文書について
VMware vSphere ESXiの代わりに、無償で便利に使える仮想化ソフトウェアのProxmox VE。
ただ、bare-metal ISO installerを使うと、インストール先のストレージを全消しされてしまう。
消されたくない、パーティションをカスタマイズしたい、といった場合の参考にどうぞ。
公式手順はこちら
自宅とか少人数のネットワークで使うことを想定して書いています。
用意するもの
最小セットアップしたDebian 12 Bookworm (amd64)。
(Proxmox VEはarm64には対応していない)
つまり「標準システムユーティリティ」と「SSHサーバー」の2つだけチェックを入れてセットアップしたヤツ。
デスクトップ環境は要らない。
最小セットアップではsudoすら入っていないので su -
でrootになってインストールし、自分のユーザーをsudoグループに追加しておく。
$ su -
# apt install sudo
# usermod -aG sudo 自分のユーザー名
IPアドレスは静的IPアドレスを設定して固定する。
Proxmox VEはブリッジインターフェースを使うのでパッケージ追加。
sudo apt install bridge-utils
セットアップ完了後にWeb GUIから設定してもいいけど、どうせ必要なので最初に設定しておく。
Proxmox VEはsystemd-networkdではなく旧来の/etc/network/interfacesを使う必要がある。
OSセットアップ直後はDHCPになっていると思うので、man interfaces
を見ながら修正する。
こんな感じ。
#iface enp3s0 inet dhcp # DHCPをコメントアウトするか削除
iface ens3s0 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.100.10/24
gateway 192.168.100.1
bridge-ports ens3s0
bridge-stp off
bridge-fd 0
ブリッジインターフェース名は、Proxmox VEが認識できるように「vmbr0」にしておく。
修正したらnetworkingサービスを再起動して、ブリッジインターフェースに静的IPアドレスが設定されたことを確認する。
sudo systemctl restart networking
ip a
手順
ホスト名を解決できるようにする
/etc/hosts にホスト名とIPアドレスを書く。
元々書かれている 127.0.1.1 ホスト名
は削除しておく。
以下を実行して、127.0.1.1
ではないIPアドレスが返ってくれば良し。
hostname --ip-address
hostsを修正せず127.0.1.1のまま進めると、proxmox-veパッケージインストール時に以下のエラーが出る。
pve-manager (8.1.3) を設定しています ...
Could not execute systemctl: at /usr/bin/deb-systemd-invoke line 145.
dpkg: パッケージ pve-manager の処理中にエラーが発生しました (--configure):
installed pve-manager package post-installation script subprocess returned error exit status 1
dpkg: 依存関係の問題により proxmox-ve の設定ができません:
proxmox-ve は以下に依存 (depends) します: pve-manager (>= 8.0.4) ...しかし:
パッケージ pve-manager はまだ設定されていません。
dpkg: パッケージ proxmox-ve の処理中にエラーが発生しました (--configure):
依存関係の問題 - 設定を見送ります
処理中にエラーが発生しました:
pve-manager
proxmox-ve
Proxmox VEをインストール
リポジトリ修正
Proxmox VEリポジトリを追加
sudo sh -c 'echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list'
GPG鍵追加
sudo wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg
更新
sudo apt update && sudo apt full-upgrade
Proxmox VEカーネルインストール
sudo apt install proxmox-default-kernel
OS再起動
sudo systemctl reboot
再起動前のカーネルバージョン
$ uname -r
6.1.0-13-amd64
再起動後のカーネルバージョン、pveが付いていれば成功している。
$ uname -r
6.5.11-7-pve
Proxmox VEパッケージインストール
sudo apt install proxmox-ve postfix open-iscsi chrony
途中、Postfixの設定について尋ねられた時、何を選ぶべきか分からない場合は「ローカルのみ」を選んでおけば手堅い。
もちろん、メール送信についてどう設定すべきか分かっているなら、適切に設定すれば良い。
デフォルトのDebianカーネル削除
sudo apt remove linux-image-amd64 'linux-image-6.1*'
デュアルブートの設定をしておらず、Proxmox VEしか起動するOSがないなら os-prober
パッケージを削除しておく。
sudo apt remove os-prober
手順では、先にupdate-grubを実行しているけど、os-proberを削除する前に実行するとWarning↓ が出た。
$ sudo update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.5.11-7-pve
Found initrd image: /boot/initrd.img-6.5.11-7-pve
Warning: os-prober will not be executed to detect other bootable partitions.
Systems on them will not be added to the GRUB boot configuration.
Check GRUB_DISABLE_OS_PROBER documentation entry.
done
ちょっと気持ち悪いから先に削除しておく。
GRUB設定更新
sudo update-grub
先にos-broberを削除しておけばWarningは出ない↓
$ sudo update-grub
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.5.11-7-pve
Found initrd image: /boot/initrd.img-6.5.11-7-pve
done
Proxmox VE Web GUI設定
ここまで完了すれば、TCP:8006でリッスンしているはず。
$ ss -lnt | grep :8006
LISTEN 0 4096 *:8006 *:*
Webブラウザで https://Proxmox VEのIPアドレス:8006
にアクセスする。
特権ユーザーはrootで、Debian 12セットアップ時に設定したrootパスワードでログインできる。
『有効なサブスクリプションがありません』と表示されるが、とりあえず『OK』を押しておく。
Linux Bridge作成確認
Proxmox VEで仮想マシンを作る際のNICとして使うLinux Bridgeは、OSセットアップ時に作成したはず。
Web GUIでサーバーを選択し、システム→ネットワークを選択、vmbr0の種別がLinux Bridgeで、稼働中であることを確認する。
Proxmoxリポジトリ設定
Web GUIのアップデート→リポジトリを選択。
「追加」ボタンを押し、「No-Subscription」を追加。
リポジトリ一覧の「pve-enterprise」を選択して「disable」ボタンを押して無効化。