
前回に続き、手のひらサイズのミニPCでオーディオサーバーを作ります。
(2024/1追記)
Broadcomによるvmware社の買収が完了し、ここで紹介したvSphere Hypervisor(ESXi)にも影響が取りざたされています。はっきりしたところで記載したいと思います。
(2024/2追記)
無償版vSphere Hypervisor(ESXi)の提供終了が公式に発表されました。残念です。
(2024/7追記)
ESXiの代わりにProxmox VEで作り直しました。
仮想化オーディオサーバーをProxmox VEで再構築した
(2025/4追記)
無償版ESXi8の提供が再開されました。
前回は水色部分の仮想化基盤まで。今回はその上のOS構築まで進めます。
計画通りにはいかない、し、やらないもので・・・仮想マシンを立てては消しを繰り返しています。もう少し経験を積めば勘所もわかってくるんじゃないかな。
線の引き方がポイントです。
TrueNAS(旧FreeNAS)はFreeBSDベースのNAS用アプライアンスで、業務用サーバーにも対応可能な高速・高信頼性OSです。使ってみて安定感があるのでメインサーバーとして採用しました。
データ用SSDの接続準備
データ用の2.5インチSSDは、ESXiのRDM(Rawデバイスマッピング)という機能を使って全領域を1台の仮想マシン専用に割り当てます。
こうすると、仮想マシン上のOSのファイルシステムで物理的にフォーマットしたり、S.M.A.R.T.情報を取得することも可能になります。
公式ドキュメントでは仮想マシン作成時に設定できる、となっていますが・・・できませんでした。以下の手順で準備します。
データストアブラウザで、任意の場所にマッピングファイルの格納場所を作っておきます。
対象となるディスクのデバイスパスを確認しておきます。入力時にTABキーで補完できるので全部覚えておく必要はありません。
シェルまたはSSHコンソールから、以下のコマンドでマッピングファイルを作成します。
vmkfstools -z デバイスパス マッピングファイル.vmdk
デバイスパスは/vmfs/devices/disks、データストアは/vmfs/volumes下にあります。
目的のディスクと(表示上)同サイズのマッピングファイルが作成されていれば成功です。
仮想マシンVM1の作成
「仮想マシン」画面の「仮想マシンの作成/登録」ボタンから、ウィザード形式で作成することができます。
「新規作成」の後OSを選択。TrueNAS12のベースはFreeBSD12(64bit)です。
割り当てるメモリーやハードディスクの容量を設定。
システム用ハードディスクは、プロビジョニングポリシーを「thic (Eager Zeroed)」としてパフォーマンスを優先します。なお64GB以上割り当てると16GBのスワップファイルが設定されるそうです。
「ハードディスクの追加」-「既存のハードディスク」を選択
作成したRDM用マッピングファイルを選択。
最終確認後「完了」すると、ハードディスクが2台接続された仮想マシンが作成されます。まだ器(ハードウェア)ができただけなので、この後OSをインストールしてゆきます。
TrueNASのインストール
仮想マシンにOSをどうやってセットアップするかというと、ESXiのデータストアにインストール用ISOイメージをアップロードしておき
仮想マシンの設定を編集し、CD/DVDドライブにISOイメージを指定します。
仮想マシンを「パワーON」すると、あたかもISOイメージのメディアで起動したようにインストールが始まります。

管理画面の小窓に起動画面が表示されています。
仮想マシンのモニター出力(コンソール)はブラウザ内でウィンドウ表示させることも、VMRCという専用アプリで表示させることもできます。VMware Workstation Playerがインストールされている場合はVMRCの代わりにこれが使われます。

初めて仮想化を使うと、この
仮想と現実が錯綜する感覚!
がとても新鮮で面白いです。
インストール方法についてはこちらのブログを参考にさせてもらいました。
TrueNAS - きりしま屋
インストール完了後の設定はブラウザで行います。ESXiの管理もブラウザなので混乱しそうになりますが、ESXiと仮想マシンのIPアドレスは別になり、ネットワーク上にESXiとは別のPCが出現したように見えます。

管理画面のトップは、こんな洗練されたデザインのダッシュボードです。
サーバーの設定
設定方法についても先ほどのブログが詳しいです。ありがとうございます!
・ユーザーの追加
・プールの作成
・メール通知の設定(任意)
・SMB(Windows)共有サービスの追加
・S.M.A.R.T.監視タスクの設定(任意)
バックアップ用HDDの接続と仮想マシンVM2の作成
シングルドライブのNASでは(RAIDであってもリビルド中の連鎖故障を考えれば)バックアップは必須です。SSDの長期保存性はどうなんだろう?実績のHDDにしました。
LHD-ENA020U3WR(ロジテック)
ロジクールじゃない方のロジテックで、今や珍しい国産品。Amazonで注文したら信州は伊那の工場から直送されてきました。中のドライブがNAS用のWD Red plusなのも良し。
バックアップ用HDDは万一の場合に他のPCでも読めるようにしたいので、フォーマットをexFATとします。TrueNASはZFSという耐障害性の高いファイルシステムを採用していてexFATを使えないため、バックアップサーバーとして
OpenMediaVault(OMV)の仮想マシンを立てました。OMVも標準ではexFATに対応しないのですが、ベースがDebianなので簡単にパッケージで追加できます。
インストール方法はTrueNASと同じ、というかどのOSでも同様で、仮想マシンを設定し、ISOイメージを読み込ませて起動します。OMV5のベースOSはDebian10(64bit)です。
OMVもシステム用とデータ用ドライブを別々に割り当てる必要がありますが、最初はシステム用だけでインストール可能です。USBコントローラーは2.0と3.0が選択でき、USB3.0はワーニングが出ますが選択可能です。
言語・キーボード・地域・ホスト名・ドメイン名・ルートパスワードの設定の後、インストールするディスクを選択。

この後のアーカイブミラーは日本のrikenあたりにします。インストールが終了して「メディアを取り出し」と言われたら管理画面からISOイメージの接続を外します。
インストール完了。直後はIPアドレスが正しくありませんが、再起動後は実世界のDHCPから取得されます。
表示されているIPアドレスをブラウザで開くとこんな管理画面になります。ログインユーザーはadminで、インストール中に設定したrootではないので注意。
同じIPアドレスでSSHコンソールを開きrootでログイン、exFATファイルシステムをインストールします。
root@openmediavault5:~# apt update
root@openmediavault5:~# apt install exfat-fuse exfat-utils
root@openmediavault5:~# apt install open-vm-tools
open-vm-toolsは、esxiからゲストOSのシャットダウン操作などを可能とするユーティリティでこれも入れておきます。
バックアップ用HDDは、ESXiの「USBパススルー」という機能でデバイスごと仮想マシンに接続します。最初にWindowsPCにつなぎexFAT形式でフォーマットしてからESXiに接続し直します。ボリュームラベルが日本語だとマウントに失敗するので注意。
OMVをシャットダウンし、ESXi管理画面で仮想マシンの設定を編集、「その他のデバイスの追加」「USBデバイス」でHDDを割り当てます。
OMVを起動すると、「ファイルシステム」画面でHDDが認識されているのでマウントします。
(2021/9/19追記)
exFATはlinux用のファイルシステムではないため、アクセス権の設定ができず共有フォルダ作成時にエラーが発生します。そのままでも使用は可能ですが、/etc/default/openmediavaultにnofailオプションを追加しておきました。
OMV_FSTAB_MNTOPS_EXFAT="defaults,nofail,uid=0,gid=100,umask=0000"
あとはRsyncなどを使ってTrueNASからOpenMediaVaultへバックアップタスクを走らせるよう設定すればファイルサーバーの完成です。
そろそろ
飽きて力尽きかけてますが、次回ようやくオーディオサーバーをインストールできそうです。
(2021/9/21追記)
TrueNASの性能を計測してみました。

ベンチマークアプリでは、最高値でほぼネットワークの上限速度(1Gbps=125MB/s)が出ており良しとします。
これを見る限り、ネットワークがボトルネックになるのはごく限られた条件だけなので、実用上はまだ1GbEで問題ないと思います。次にPCを更新する頃、2.5GbEや10GbEが安くなっていたら移行しましょうかね。