ProxmoxVEのインストール

この記事で実現すること

個人ユーザーでも手軽に始められる仮想環境のProxmox VE8.1のインストールを行います。セットアップは非常に簡単ですが、ポイントを絞って解説していきます。

Proxmox VEとは

Proxmox VEは、Debianベースのオープンソース仮想プラットフォームです。LinuxのKVMベースの仮装化とLXCのコンテナに対応しています。KVMはLinuxの一部であり、正統なハイパーバイザーにかなり近いですが、Linuxの中間型ともいえ、メモリ管理はあくまでLinuxとして行われるのが特徴です。Linuxにより近いことでパフォーマンスのボトルネックが少ないとも言えます。一方、セキュリティなどVMの独立性というセキュリティの面では正統なハイパーバイザーよりは劣ります。

KVMはかなりPC寄りでコマンド中心の管理となり、何らかのGUIツールと組み合わせて利用されることが一般的です。ProxmoxはGUI中心の操作で、それ単体でバックアップやスナップショットなどが実行でき、手軽で便利な仮想環境の最有力候補となります。

特にLinuxで稼動するツールなどを利用する想定だと、複数個のVMを立てる必要となりますので、最近の多数のコアのPCがあると便利です。ESXiのようにネットワークカードを厳選してしまう事もないので2.5GbEなどをはじめ多くの方が利用できるでしょう。NASとは異なり、仮想環境は一般的に大量のトラフィックを捌くものではないので、単にサーバーを立ち上げるだけであれば1GbEで十分なことも多いでしょう。さほどCPUが強力ではないミニPCを使うケースも多く見られます。
一方、ファイアウォールやルーターとして利用する場合は高速なCPUと10GbEのネットワークが必要となるケースもあり、利用方法は2分されます。

インストールは英語ですが、操作画面の言語は日本語が表示できます。

価格と安定度

Proxmoxは有償のプロダクトですが、本番環境で利用しないことを想定して無償で利用できます。それはモジュールなどのアップデートがベータ版としての扱いのモジュールが含まれることになります。これは「サブスクリプション無しのリポジトリ」と呼ばれます。セキュリティパッチなどを考えると原則パッチは当てていくことになりますが、その中に不十分なテストモジュールを含む場合があり、システム全体の安定度はあまり担保されません。自己責任ですので「お勧めしない」ということになります。また、ESXiのような、エンタープライズ向けのシステムではないのでドライバーなどがあまりこなれていないようにも見えます。

安定度への貢献のため、無償ユーザーがテストを兼ねるというのはよく考えられています。ネットワークのUbiquitiもそうですが、ホームユーザーは積極的にアルファ版のテストから参加されています。

価格と機能については以下のメニューとなっています。

一番下のCommunityでも、Enterpriseリポジトリが使えます。価格は年間、1CPUソケットあたり110ユーロ(約17,800円)です。
無償ESXiから乗り換えを検討している状況なら、VMUGというユーザーグループに加入し、VMWare製品を個人利用限定で使う場合を考えると参加費用の年間200ドル(約30,000円)が必要です。これらを両睨みで考えることになるでしょうか。費用を支払う場合は、VMWareの方が色々な製品を使えてお得なのかなと考えられますが、こういった価格帯系は急に変わることも多く悩みどころです。

私はProxmoxを検証のためしばらく利用するつもりですが、有償のリポジトリとしてはおそらく利用せず、あくまで検証や安定性に難があっても構わない領域で使っていこうと考えています。

システム要件

推奨ハードウェアは以下の通りです。

  • IntelVT/AMD-V、CPUフラグ付きのIntelEMT64またはAMD64。
  • メモリ、OSおよびProxmox VEサービス用の最低2GB。さらに、ゲスト用の指定されたメモリ。CephまたはZFSの追加メモリが必要な場合は、使用するストレージTBごとに約1GBのメモリが必要。
  • 高速で冗長なストレージ、SSDディスクで最高の結果。
  • ストレージ:バッテリーで保護された書き込みキャッシュ(BBU)を備えたハードウェアRAID、またはZFSおよびSSDキャッシュを備えた非RAID。
  • VMストレージ: ローカルストレージには、バッテリーバックアップ書き込みキャッシュ(BBU)またはZFS用の非RAIDを備えたハードウェアRAIDを使用。ZFS、CephはハードウェアRAIDコントローラと互換性無し。共有および分散ストレージも可能。
  • 冗長Gbit NIC、優先ストレージ技術とクラスターセットアップに応じて追加のNIC - 10 Gbit以上もサポート。PCI(e)パススルーには、VT-d/AMD-d CPUフラグ付きのCPUが必要。

こうやってRequirementを見てみると個人向けとも言えない本格派の構成を想定しているように見受けられます。本番環境ではお勧めしないとしつつも、その目線の高さを感じられます。
最小構成など詳細は以下のリンクを参照してください。

Proxmox システム要件
https://www.proxmox.com/en/proxmox-virtual-environment/requirements?highlight=WyJoYXJkd2FyZSIsImhhcmR3YXJlJ3MiLCJjb21wYXRpYmxlIiwiY29tcGF0aWJpbGl0eSJd

モジュールのダウンロード

以下のURLからモジュールをダウンロードします。

Download ISO image
https://www.proxmox.com/en/downloads/proxmox-virtual-environment/iso

最新バージョンは8.1です。

WindowsであればRufusなどでUSBメモリにISOファイルをインストールします。

Rufus
https://rufus.ie/ja/

または、WindowsのMicrosoftストアアプリでRufusを検索してインストールします。

Proxmox 8.1はセキュアブートに対応しています。UEFIでセキュアブートでのインストールがうまくいかない場合は、 UEFIセットアップ画面でセキュアブートをOffに、CMSサポートを有効にするなどして古いブート形式で起動しセットアップを行います。

その他のOSでメディアを作成するなど、インストールに関する情報は以下を参照してください。

Installing Proxmox VE
https://pve.proxmox.com/pve-docs/chapter-pve-installation.html

インストール

インストールに入る前に、複数のネットワークカードがある場合は、どのPortをメインのマネジメントインタフェースにするか決めておく必要があるので、それぞれのNICのMACアドレスを確認しておく事をお勧めします。

セットアップを起動し、Install Proxmox VE(Graphical)を選択します。

  1. EULAへの同意
  2. Diskのフォーマット選択画面が表示されます。
  1. optionをクリックします。

  2. ファイルシステムはデフォルトはext4です。ここで、xfs、zfs、btrfsとが選択できます。
    ファイルシステムは以下の項目を参考に決定してください。

デフォルトのext4ではLVM(ブロックベース)が選択できるとのことで、コンテナはLVM-Thinが使いやすいようです。zfsはファイルとブロックベースとが利用できます。上記の内容を踏まえてご自身の利用に沿ったファイルシステムを選択します。

  1. 場所とタイムゾーンを指定します。

  2. rootでログインするパスワードとメールアドレスを指定します。

  3. ネットワークの情報です。サーバーですので固定IPアドレスを振ることをお勧めします。複数のNICがある場合はメインのNICのMACアドレスを選択します。

  4. 最後に確認画面が表示されてInstallボタンをクリックしてインストールが始まります。

初期設定

まずインストール時に決めたパスワードでログインします。ここで言語設定も変更しておきます。

最初に「有効なサブスクリプションがありません」というダイアログが出ます。これは無償で使う場合は今後も必ず表示されます。
早速、「サブスクリプション無しのリポジトリ」に切り替えます。

以下の画面から左上のホスト(インストール時のホスト名)を選択し、画面中央のリポジトリを選択します。

  1. 追加ボタンから、No-Subscriptionをプルダウンから選び追加します。
  2. 右下部分のEnterpriseの文字が含まれる2つのリポジトリをDisableボタンをクリックして無効化します。

(任意)定期的なジョブ結果を通知するメール設定

以下の画面からSMTPを選択します。

以下の画面で必要項目を入力しますが、簡単なのはGmailを送信者として自分宛のよく使うメアド宛に通知する方法です。

Googleアカウントから、セキュリティ2段階認証プロセスアプリパスワードへと進みます。

ここで、アプリ名を入力し、作成ボタンをクリックするとパスワードが生成されます。

このパスワードを前述のProxmoxの通知用メール設定の送信者のパスワードとして設定します。基本的にここで設定したGmailのアカウントが発信者として、Proxmoxをインストールした時に設定したメールアドレス宛に通知が行われることになります。
このダイアログで設定した後はTestボタンで検証可能です。

(任意)バックアップサーバー(NFSなど)への接続

以下のようにメニューから外部サーバーを選択します。

注意点としてはサーバーのNFSのバージョンと合わせます。また内容VZDumpバックアップファイルを選択します。ExportはNASなどの外部サーバーのパスを設定しますので、NASなどのマニュアルを確認して設定してください。

その他

  • SSHでログインし、/.sshにauthorized_keyがありますので、そこに公開鍵をAppendしておけば公開鍵認証が可能です。
  • あまり人にお勧めはできませんが、ProxmoxにSSHし、intel X710のファームウェアをアップデートしました(v9.4)。intelのサイトからダウンロードし、Linux用を利用しました。

まとめ

これでProxoxの一通りのセットアップが完了です。ネットワークはまだ見ていませんが、これはVMセットアップの時に確認をしていきます。