Site icon rpine lab Tech Blog

趣味のプログラミング(Web系・バックエンド)や自宅ラボ(Homelab)構築・マイコンを使った電子工作などを雑多に扱った技術ブログです。

☁️ ミニPCで構築するProxmox VE仮想環境:インストールから初期設定まで

はじめに

Linuxの仮想マシンを自由に作成して遊べる仮想化環境を作るため、ミニPCにLinux Debianベースのオープンソース仮想化環境であるProxmox VEをインストールしたいと思います。

本記事では、Proxmox VEのインストールから初期設定、ストレージの追加までを説明します。仮想マシンの作成については別記事で解説する予定です。

環境

今回の環境として、Intel N100 CPUが搭載されたミニPCのNiPoGi AK2Plusを利用します。内蔵ストレージに加えて2.5インチのHDD/SSDが増設できるので、家に余っているSSDを仮想マシン用のストレージとして追加して利用します。

  • ミニPCNiPoGi AK2Plus
    • CPU:Intel N100
    • メモリ:16 GB
    • 内蔵ストレージ:512 GB (M.2 SSD)
  • OS:Proxmox VE 8.3(無料版)
  • USBメモリー(OSインストール用):KIOXIA製 USB3.2 Gen1 対応 32 GB USBメモリー

Proxmox VEのインストール

インストール用USBメモリーの作成

まず、Proxmox VEの公式サイトからインストールISOファイルをダウンロードします。基本的には一番上の最新バージョンを利用すれば問題ないです。記事執筆時点での最新バージョンは8.3 (最終更新 2024/11/21)でした。

Image in a image block

ISOファイルをUSBメモリーに書き込み、インストール用USBを作成します。Etcherを使うのが簡単です。

Image in a image block

OSインストール

USBメモリーからのブート

作成したインストールUSBメモリーをミニPCに挿入します。

PCの電源を入れて起動画面が表示されたら、すぐにEscキーを押すとUEFIセットアップ画面に入れます。

UEFI画面のSave & ExitタブからBoot OverrideでUSBメモリーを選択してEnterキーを押すことで、Proxmoxのインストーラが起動します。

(やり方はPCのメーカーやUEFIベンダーによって異なります。)

ちなみに、このインストール作業をする際にモニターとキーボード・マウスを用意するのが面倒だったので、自作したPiKVMを接続してブラウザーから遠隔操作しています。以降のスクリーンショットはPiKVM経由でキャプチャした画像を利用しています。

PiKVMでキャプチャしたUEFIセットアップ画面(上にあるproxmoxのエントリーはSSDにインストール済みのもの)
PiKVMでキャプチャしたUEFIセットアップ画面(上にあるproxmoxのエントリーはSSDにインストール済みのもの)
インストールモード選択(ブートローダー)

一番上のGraphicalを選択してEnterキーを押します。しばらく待つとGUIインストーラが起動します。

Proxmox VEインストールモード選択
Proxmox VEインストールモード選択
ライセンス条項

ライセンス条項(EULA)が出てくるのでI agreeをクリックして次に進みます。

I agreeボタンが見えない場合は画面解像度の問題の可能性があります。(PiKVMの場合の補足を参照

インストール先ディスク選択

Proxmoxをインストールするディスクを選択します。複数ディスクがある場合は品番やディスク容量から識別できます。

Image in a image block
地域・タイムゾーン・キーボード種別選択

CountryにJapanを設定します。そうすると自動的にTime Zoneが日本時間(Asia/Tokyo)に設定されます。

Keyboard LayoutもJapaneseが自動的に選択されるので、日本語キーボードであればそのままでよく、英語キーボードであればU.S. Englishに変更します。

Image in a image block
管理者パスワード設定

PasswordとConfirmに、rootユーザーに設定するパスワードを入力します。

Emailに入力したメールアドレスには重要な通知(バックアップの失敗・SMARTエラーなど)が来ます。(25番ポートがブロックされてると多分無理)ちなみにデフォルトで入力されているメールアドレスのままだと次に進めません。

Image in a image block
ネットワーク設定

ここで設定するホスト名はFQDN、つまりドメイン名込みの形式にする必要があります。独自ドメインを持ってなかったら適当なマシン名の後に.homeを付けとけばいいと思います。

IPアドレスはDHCPでの自動設定をさせてもらえないので全て手動で設定します。

Image in a image block
確認画面

これまでの設定の確認画面が出てくるので、内容に問題なければInstallをクリックしてください。

インストールが終わったら再起動してProxmox VEが立ち上がります。再起動したらインストール用USBメモリーは抜いて大丈夫です。

補足:PiKVMでインストールする際に必要な設定

PiKVM V3でHDMIキャプチャする場合、解像度の初期設定は720p(1280×720)になっています。この状態でProxmoxのインストーラを起動するとGUIの画面の下の方が切れてしまい、丁度次の画面に進むためのボタンが表示されずにクリックできないことがあります。

その場合はPiKVM上で次のコマンドを実行して解像度を1080p(1920×1080)に切り替えることで、正常に表示できるようになります。

[root@pikvm ~]# rw
[root@pikvm ~]# kvmd-edidconf --import-preset=v3.1080p-by-default
[root@pikvm ~]# reboot
PiKVMの解像度変更コマンド

参考:PiKVMのドキュメント(Tuning HDMI EDID):Proxmoxに関する記載あり

Proxmox VEの初期設定

起動完了画面

起動が完了すると、Web GUIにアクセスするためのアドレスが表示されます。アドレスはhttps://IPアドレス:8006/の形です。

Image in a image block

Web GUIにアクセス

起動画面に表示されたアドレスにブラウザでアクセスします。初回は自己署名(オレオレ)証明書の警告が出ると思うので指示に従い適当にスキップしてください。

ログイン画面が表示されたら、ユーザー名にrootと設定したパスワードでログインしてください。

No valid subscriptionのメッセージが出てきたらOKを押して閉じてください。(有料版ライセンスがあれば表示されません。無料版で消す方法は検索するとありますが自己責任でお願いします。)

Image in a image block

無料版リポジトリーの設定

有料ライセンスがない場合、初期状態ではOSが更新できないので、APTリポジトリーを無料版のものに変更する必要があります。

  1. 一番左のサイドバーでサーバーを選択し、Updates > Repositoriesを選択してAPTリポジトリーの設定画面を表示します。
    リポジトリー設定画面(設定前)
    リポジトリー設定画面(設定前)
  2. Addボタンを押して、リストの中からNo-Subscriptionリポジトリーを探して追加します。
  3. 有料版リポジトリーを無効化するため、一番右の列にenterpriseが付いているリポジトリー(pveとcephの有料版リポジトリー)を選択してDisableボタンを押します。
    リポジトリー設定画面(設定後)
    リポジトリー設定画面(設定後)

OSアップデート

  1. 左のサイドバーでサーバーを選択し、Updatesタブをクリックすると更新画面が表示されます。
  2. Refreshボタンを押すとapt-get updateが実行されて、更新があるパッケージ一覧が表示されます。
  3. Upgradeボタンを押してアップデートを開始します。
  4. カーネル更新があるとターミナル出力の最後にrebootしたほうがいいよみたいなメッセージが出てくると思うので、必要に応じてマシンを再起動します。マシンの電源は上の方にあるRebootボタンやShutdownボタンから操作できます。
  5. Updates画面で再度Refreshボタンを押して、更新パッケージが1つも表示されなければ更新完了です。
OSアップデート完了後
OSアップデート完了後

ストレージ設定

初期状態では、LVMによりインストール先のSSDの約100 GBがOS用(/+swap)に確保され、残りが仮想マシン用(data LV)に割り当てられます。

root@ak2p:~# lvs 
  LV   VG  Attr       LSize    Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  data pve twi-a-tz-- <348.82g             0.00   0.48                            
  root pve -wi-ao----   96.00g                                                    
  swap pve -wi-ao----    8.00g                                                    
root@ak2p:~# 
lvsコマンドの実行結果

足りない場合は、PCに別のストレージ(SATA SSDなど)を追加するか、NASなどのファイルサーバー(NFSやiSCSI)を利用することになります。

今回は1TBのCrucial MX500 SSDをミニPCに追加してVMストレージ用として利用します。

SSD増設

今回利用しているミニPCはSATA接続の2.5インチSSDが増設できるようになっているので、ケースを開けてCrucial MX500を増設します。

ケースを開けてミニPCにCrucial MX500 SSDを増設した様子
ケースを開けてミニPCにCrucial MX500 SSDを増設した様子

ディスク初期化

左のサイドバーでサーバーを選択した後Disksタブをクリックします。すると接続されているディスク一覧が出てくるので、使うディスクにパーティションが残っていたらWipe Diskでディスク全体を消去します。

ディスク一覧
ディスク一覧

ストレージ追加

ストレージの種類としてはLVM (thinpool)とZFSが選べます。今回は圧縮機能などがあって高機能なZFSを使ってみます。

Disksの下のZFSを選択して、上のCreate: ZFSボタンをクリックします。

  • Name: Proxmox上でのストレージIDになります。今回はdata-zfsとしました。
  • Compression: ZFSの圧縮機能を有効にします。今回はzstdに変更しました。
  • デバイス一覧(下):使うディスクにチェックを入れます。ディスクが複数あればZFSの機能でソフトウェアRAIDが使えます。
ストレージ追加画面(ZFS)
ストレージ追加画面(ZFS)

CreateボタンをクリックするとZFSプールがディスクに作成され、Proxmoxにストレージとして追加されます。

追加したストレージ
追加したストレージ

まとめ

本記事では、Proxmox VEのインストールから初期設定、ストレージの追加までを解説しました。これにより仮想化環境を構築する基盤が整いました。

次の記事では実際に仮想マシンを作成する方法について解説する予定です。

参考サイト