Windows ServerでRAMディスクを作成する方法
本方法は、Windows Server 2016で試したが、2019でも同様のことは可能。
下記のサイトが参考になったので、日本語訳しつつ紹介する
まず、「役割と機能の追加ウィザード」からiSCSI ターゲットサーバーをインストールしておく
次に、管理者権限でPowerShellを起動し、コマンドライン上でRAMディスク(iSCSIターゲット)を作成する
ある名前の新しいiSCSI ターゲットオブジェクトを作成する→指定したiSCSIターゲットの設定を変更する→指定したファイルパスとサイズでiSCSI仮想ディスクを作成する
New-iscsiservertarget -TargetName "testramdisk" Set-IscsiServerTarget -TargetName "testramdisk" -InitiatorId "IQN:*" New-IscsiVirtualDisk -Path "ramdisk:test.vhdx" -Size 50GB
ここではディスクサイズを50GBとしているが、搭載しているRAMサイズは超えないようにする。
仮想ディスクをiSCSIターゲットに割り当てる
Add-IscsiVirtualDiskTargetMapping -TargetName "testramdisk" -Path "ramdisk:test.vhdx"
PowerShell上での作業は以上。
ダッシュボードの「ツール」から「iSCSI イニシエーター」を起動する
「ターゲット」にローカルIPアドレスを入れ、「クイック接続」し「完了」する。
ディスク管理からディスクが確認できる
「オンライン」にして「新しいシンプルボリューム」にしてCrystalDiskMarkで遊んだ結果が以下の通り。
削除するとき
設定と逆順で削除していく。
「ディスク管理」から「ボリュームを削除」し「オフライン」にする
「iSCSI イニシエーター」から「切断」する
指定されたiSCSI仮想ディスクと指定されたiSCSIターゲット間の割り当てを削除する→指定されたiSCSIターゲットを削除する→バーチャルハードディスク(VHD)ファイルを削除せずにバーチャルディスクオブジェクトを削除する
Remove-IscsiVirtualDiskTargetMapping -TargetName "testramdisk" -DevicePath "ramdisk:test.vhdx" Remove-IscsiServerTarget -TargetName "testramdisk" Remove-IscsiVirtualDisk -Path "ramdisk:test.vhdx"