使用单个DSC配置初始化可变数量的磁盘

时间:2017-02-09 15:46:22

标签: powershell dsc

是否可以使用单个DSC配置将所有连接的磁盘初始化为多个VM?例如,如果VM1连接了1个磁盘,DSC配置会将该磁盘初始化为磁盘F,则VM2有2个磁盘,因此完全相同的DSC配置会像F和G一样攻击磁盘。我们的想法是为多个VM重用该配置文件可变数量的磁盘而不会出错。

1 个答案:

答案 0 :(得分:4)

如果您在本地编译,这应该有效。由于该语言允许强制建立声明的状态。您可以查询磁盘并设置状态。

我样本中的驱动器号分配相当粗糙。你也应该改进它。

这使用xStorage which can be found on the PowerShell Gallery

Configuration disks
{
  $DriveLetters = 'DEFGHIJKLMNOPQSRT'
  Import-DscResource -ModuleName xStorage

  Node localhost
  {
    Get-Disk | Where-Object {$_.NumberOfPartitions -lt 1} | Foreach-Object {
      Write-Verbose "disk($($_.Number))" -Verbose
      xDisk "disk($($_.Number))"
      {
        DriveLetter = $DriveLetters[$_.Number]
        DiskNumber = $_.Number
        FSFormat = 'NTFS'        
      }
    }
  }
}