【自宅鯖】古いラックサーバーでProxmoxVE(zfs)を高速に利用するお話

まえがき?

今回は、専門学生の頃に初めて買ったラックサーバー Fujitsu製のPRIMERGY RX200 S7 にProxmoxをインストールしてメインで稼働しているProxmoxクラスタのコールドスタンバイ機として使用するためにセットアップをして行こうというお話です。
こいつは発売が2012年頃と今から考えるとかなりの年代物なのでは無いかと思います…が、DDR3であってもメモリ72GB積んでいるパソコンを使用せず眠らせておくのももったいないのではないか!と思い今回やっていきます。

マシンスペック

項目スペック詳細備考
Manufacturer / ModelFujitsu PRIMERGY
RX200 S7
1U ラックマウント型サーバー
CPUXeon E5-2670 × 2
(8c/16t × 2)
※節電の為単機で運用
RAM72GBDDR3 ECC Registered
RAID-ControllerFujitsu
D2607 SAS RAID
最大8ベイ
Storage300GB × 4
160GB × 2
600GB × 1
起動ディスクに300GB × 4のZFSRAID10
NICIntel I350
GigabitEthernet × 2
(Onboard)
AQC113C 1GbE × 1
1GbE × 2 (bonding)
1GbE × 1 (service)
Power450W × 2冗長電源
RemoteControliRMC S3Fujitsu IPMI

インストールメディアの準備

イメージのダウンロード

Proxmox公式サイトへアクセスして Proxmox Virtual Environment のイメージをダウンロードします。「Downloads」「Proxmox Virtual Environment」をクリックします。ファイルタイプは「ISO」を選択します。

2026年7月21日現時点の最新は「Proxmox VE 9.2」なので「Download」をクリックしてダウンロードします。

メディアの作成

インストールメディアにはUSBメモリを使用し、メディアの作成には「Rufus」を使用します。
Rufus公式サイトにアクセスして自身の環境にあったものをダウンロードします。今回はWin11 64bit環境なので「Windows x64」を選択します。

ダウンロードしたRufusを起動します。「デバイス」の欄には接続したUSBメモリが表示されます。このウィンドウに最初にダウンロードしたProxmoxVEイメージをドラッグ&ドロップし「DDイメージモードが適用される」というメッセージボックスは「OK」を押します。画面下の「スタート」をクリックすると「USBメモリのデータが消えるぞ!」という警告も出ますが「OK」を押します。書き込みが終わればPCからUSBメモリを取り外してください。

インストールしていく

BIOSの起動順位を変更

作成したインストールメディアをサーバー正面のUSBポートに接続して起動します。「AmericanMegatrends」のロゴが表示されたら「F2」を連打してBIOSに入り、「Boot」のタブに移動して起動順位USBメモリに変更します。

ディスクのモードをJBODに変更する

RAIDカードのディスクモードの変更には以下のサイトを参考にしました。とてもわかりやすく手順が解説されています。
https://mmurayama.blogspot.com/2013/02/setting-up-jbod-with-fujitsu-d2607-raid.html

サーバーを起動してLSI MegaRAID BIOSが起動した際に「Ctrl + Y」でRAIDカードのCLIに入ります。「AdpGetProp」コマンドで現在JBODモードが有効かどうか確認します。

-AdpGetProp -EnableJBOD -a0

無効化されている場合は、「AdpSetProp」コマンドでJBODを有効化します。

-AdpSetProp -EnableJBOD -1 -a0

「q」キーでCLIから抜けることが出来ます。一度再起動を行います。

再起動後、上記と同じ画面で「Ctrl + h」WebBIOS画面に移ります。設定を行うRAIDカードを選択し、「Start」をクリックします。

以下の画像では、すでにJBODモードを各ディスクに設定した後のものになります。初期状態では、「JBOD」と書かれた箇所が「Unconfigured Good」と表記されていると思います。「Drives」をクリックします。

設定を行うディスクを選択し、「Properties」にチェックを入れ「Go」をクリックします。

「Make JBOD」にチェックを入れて「Go」をクリックします。これでこのディスクはJBODになりました。

Make Bootable Driveを設定する

今回の構成だとDrive0、1、2、3の4つを使ってZFS-RAID10Proxmox側で構築するため、起動ディスクにしようするドライブには、WebBIOSから「Make Bootable Drive」の設定をする必要があります。Proxmoxをインストールするディスクの「Properties」に進み、「Make Bootable Drive」にチェックを入れ「Go」をクリックし設定します。(0、1、2、3の4本使う場合どれでも良いと思います)

Proxmoxのインストール

「Install Proxmox VE (Graphical)」を選択してインストールを進めます。物理サーバーでの構築キャプチャを取っていなかったので途中までVM環境で作業を行っていきます。

利用規約に目を通して「I agree」をクリック

ここでTarget Harddiskの右の「Options」をクリックします。

「Filesystem」ドロップダウンメニューを選択して初期の ext4 から今回使用する「zfs(RAID10)」を選択します。

Filesystem『zfs(RAID10)』を選択すると、インストールに使用するディスクを選択することが出来るようになります。複数ディスクを搭載している場合、自動選択されたディスクが考えているものとは違う場合もあるため一度「Deselect All」をクリックして選択し直すことをおすすめします。
対象ディスクを選択したら「OK」を押して、「Next」をクリックします。

「Country」「Time zone」「keyboard Layout」をそれぞれ設定して「Next」をクリックします。

ProxmoxVE へログインする際に使用するrootユーザーのパスワードと通知などに使用するメールアドレスを入力します。入力したら「Next」をクリック

マネジメントに使用するNICを選択して各ネットワーク情報とホスト名を設定していきます。設定したら「Next」

設定情報を再度確認して「Install」

ディスクにキャッシュを割り当てる

NVMe SSD のパーティション分け

proxmox ホストシェルから操作を行います。
最初にNVMe SSDの場所を確認して初期化します。

root@pve03:~# sgdisk --zap-all /dev/nvme0n1
Creating new GPT entries in memory.
GPT data structures destroyed! You may now partition the disk using fdisk or other utilities.

今回は、全256GBのSSDなのでキャッシュ用途に3つのパーティションに区切ります。
60GB、60GB、その他(余り136GB)に分けます。
まず1つ目のパーティション(60GB)

root@pve03:~# sgdisk -n 1:0:+60G -t 1:BF01 /dev/nvme0n1
Creating new GPT entries in memory.
The operation has completed successfully.

次に2つ目のパーティション(60GB)

root@pve03:~# sgdisk -n 2:0:+60G -t 2:BF01 /dev/nvme0n1
The operation has completed successfully.

最後に3つ目のその他パーティション(約136GB)

root@pve03:~# sgdisk -n 3:0:0 -t 3:BF01 /dev/nvme0n1
The operation has completed successfully.

パーティションをコマンドで確認します

root@pve03:~# lsblk /dev/nvme0n1
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
nvme0n1     259:0    0 238.5G  0 disk 
├─nvme0n1p1 259:2    0    60G  0 part 
├─nvme0n1p2 259:4    0    60G  0 part 
└─nvme0n1p3 259:6    0 118.5G  0 part 

zfsストレージのキャッシュ設定

zfsストレージの現状を確認します。今回この「rpool」がRAID10相当を設定したproxmoxのbootディスクです。VMのストレージとしても利用する予定です。

root@pve03:~# zpool status
  pool: rpool
 state: ONLINE
config:

        NAME                              STATE     READ WRITE CKSUM
        rpool                             ONLINE       0     0     0
          mirror-0                        ONLINE       0     0     0
            scsi-aaaaaaaaaaaaaaaaa-part3  ONLINE       0     0     0
            scsi-bbbbbbbbbbbbbbbbb-part3  ONLINE       0     0     0
          mirror-1                        ONLINE       0     0     0
            scsi-ccccccccccccccccc-part3  ONLINE       0     0     0
            scsi-ddddddddddddddddd-part3  ONLINE       0     0     0

errors: No known data errors

パーティション分けした60GB分を rpool に割り当てます。

root@pve03:~# zpool add rpool cache /dev/nvme0n1p1

再度 status コマンドで確認します。

root@pve03:~# zpool status
  pool: rpool
 state: ONLINE
config:

        NAME                              STATE     READ WRITE CKSUM
        rpool                             ONLINE       0     0     0
          mirror-0                        ONLINE       0     0     0
            scsi-aaaaaaaaaaaaaaaaa-part3  ONLINE       0     0     0
            scsi-bbbbbbbbbbbbbbbbb-part3  ONLINE       0     0     0
          mirror-1                        ONLINE       0     0     0
            scsi-ccccccccccccccccc-part3  ONLINE       0     0     0
            scsi-ddddddddddddddddd-part3  ONLINE       0     0     0
        cache
          nvme0n1p1                       ONLINE       0     0     0

errors: No known data errors

/dev/nvme0n1p1がcacheとして割り当てられていることが確認できます。

Proxmox管理画面左の「サーバ表示」「pve03」ホストを選択→「ディスク」「ZFS」「rpool」(対象ディスク)→「詳細」をクリックすることでGUIからでも確認が出来ます。

コメントを残す