X

[記憶域スペースをPowerShellで使いこなす]New-StoragePool

今回は、記憶域プールを作成するコマンドレット、New-StoragePoolを紹介します。

New-StoragePool

概要

New-StoragePoolは、新しい記憶域プールを作成するときに利用するコマンドレットです。プールに追加する物理ディスクのグループ、あるいはストレージプロバイダーから提供されるストレージサブシステムを指定して、記憶域プールを作成することができます。

Windows Server 2016のPowerShellで、

Get-help New-StoragePool

を実行した出力は以下の通りです。

New-StoragePoolの詳細は、TechNetライブラリのNew-StoragePoolを参照してください。

Windows Server 2016、Windows 10 New-StoragePool
Windows Server 2012 R2、Windows 8.1 New-StoragePool
Windows Server 2012、Windows8 New-StoragePool

構文例

以下のような形で用いることができます。

例1:利用可能なすべての物理ディスクを用いて、記憶域プールを作成する

PS C:\> $PhysicalDisks = (Get-PhysicalDisk -CanPool $True)
PS C:\> New-StoragePool -FriendlyName CompanyData -StorageSubsystemFriendlyName "Windows Storage*" -PhysicalDisks $
 PhysicalDisks

1行目では、まだ記憶域プールに追加されていないすべての物理ディスクを、Get-PhysicalDiskコマンドレットを用いて取得し、変数 $PhysicalDisks に格納しています。

2行目では、変数に格納した物理ディスクを用いてストレージサブシステム”Windows Storage*”上に、”CompanyData”という名前の新しい記憶域プールを作成しています。

例2:新しい記憶域プールを作成し同時に、プール上に作成される仮想ディスクのデフォルト値を指定する

PS C:\> $PhysicalDisks = (Get-PhysicalDisk -CanPool $True)
PS C:\> New-StoragePool -FriendlyName CompanyData -StorageSubsystemFriendlyName "Windows Storage*" -PhysicalDisks $
PhysicalDisks -ResiliencySettingNameDefault Mirror -ProvisioningTypeDefault Thin –Verbose

1行目では、例1と同じようにまだ記憶域プールに追加されていないすべての物理ディスクを、Get-PhysicalDiskコマンドレットを用いて取得し、変数 $PhysicalDisks に格納しています。

2行目も例1と同じように新たに記憶域プールを作成していますが、このプール上に仮想ディスクを作成する際のデフォルト値として、プロビジョニングタイプをシンプロビジョニングに、回復性タイプをミラーに指定しています。

例3:プールを作成し、仮想ディスク、パーティション、ボリュームの作成までいっぺんに行う。

$PhysicalDisks = Get-StorageSubSystem -FriendlyName "Windows Storage*" | Get-PhysicalDisk -CanPool $True
New-StoragePool -FriendlyName "CompanyData" -StorageSubsystemFriendlyName "Windows Storage*" -PhysicalDisks $PhysicalDisks |New-VirtualDisk -FriendlyName "UserData" -Size 100GB -ProvisioningType Thin |Initialize-Disk -PassThru |New-Partition -AssignDriveLetter -UseMaximumSize |Format-Volume

1行目は、Windows Storage subsystemをストレージサブシステムとして取得し、Windows Storage subsystem内の利用可能な物理ディスクをすべて、変数 $PhysicalDisksにオブジェクトとして格納しています。

2行目では複数のコマンドレットをパイプラインでつなげることで、例1の2行目と同じように記憶域プールを作成、作成したプール上にシンプロビジョニングで100GBの仮想ディスクをフレンドリー名 “UserData”として作成。さらに、作成した仮想ディスクを初期化、パーティションを作成、そしてフォーマットまでをいっぺんに行っています。

New-Volumeコマンドレットでも同様のことが1つのコマンドでできます。

記憶域スペースを管理するPowerShellのCmdletに、その他にも主なコマンドレットの一覧を掲載しています。

ださっち: