-
Notifications
You must be signed in to change notification settings - Fork 65
Vhd
dscbot edited this page Jun 12, 2022
·
3 revisions
Parameter | Attribute | DataType | Description | Allowed Values |
---|---|---|---|---|
Name | Key | String | The desired VHD file name. | |
Path | Key | String | The desired Path where the VHD will be created. | |
ParentPath | Write | String | Parent VHD file path, for differencing disk. | |
MaximumSizeBytes | Write | UInt64 | Maximum size of VHD to be created. | |
Generation | Write | String | Virtual disk format. The default value is Vhd . |
Vhd , Vhdx
|
Ensure | Write | String | Specifies if the virtual disk should be present (if not it will be created) or absent (if present it will be removed). Default value is Present . |
Present , Absent
|
ID | Read | String | Returns the virtual disk identifier. | |
Type | Write | String | The type of virtual disk. The default value is Dynamic . |
Dynamic , Fixed , Differencing
|
FileSizeBytes | Read | UInt64 | Returns the current size of the virtual disk. | |
IsAttached | Read | Boolean | Returns if the virtual disk is attached to a VM. |
Manages VHDs in a Hyper-V host.
- The Hyper-V Role has to be installed on the machine.
- The Hyper-V PowerShell module has to be installed on the machine.
Description not yet written.
configuration Example
{
param
(
[Parameter()]
[System.String[]]
$NodeName = 'localhost',
[Parameter(Mandatory = $true)]
[System.String]
$Name,
[Parameter(Mandatory = $true)]
[System.String]
$Path,
[Parameter(Mandatory = $true)]
[System.UInt64]
$MaximumSizeBytes,
[Parameter()]
[ValidateSet('Vhd', 'Vhdx')]
[System.String]$Generation = 'Vhd',
[Parameter()]
[ValidateSet('Present', 'Absent')]
[System.String]
$Ensure = 'Present'
)
Import-DscResource -ModuleName 'HyperVDsc'
Node $NodeName
{
# Install HyperV feature, if not installed - Server SKU only
WindowsFeature HyperV
{
Ensure = 'Present'
Name = 'Hyper-V'
}
WindowsFeature HyperVPowerShell
{
Ensure = 'Present'
Name = 'Hyper-V-PowerShell'
}
Vhd NewVhd
{
Ensure = $Ensure
Name = $Name
Path = $Path
Generation = $Generation
MaximumSizeBytes = $MaximumSizeBytes
DependsOn = '[WindowsFeature]HyperV', '[WindowsFeature]HyperVPowerShell'
}
}
}
Description not yet written.
configuration Example
{
param
(
[Parameter(Mandatory = $true)]
[System.String]
$Name,
[Parameter(Mandatory = $true)]
[System.String]
$Path,
[Parameter(Mandatory = $true)]
[System.String]
$ParentPath,
[Parameter(Mandatory = $true)]
[System.String]
$MaximumSizeBytes,
[Parameter()]
[ValidateSet('Vhd', 'Vhdx')]
[System.String]
$Generation = 'Vhd',
[Parameter()]
[ValidateSet('Present', 'Absent')]
[System.String]
$Ensure = 'Present'
)
Import-DscResource -ModuleName 'HyperVDsc'
Node localhost
{
Vhd WrongVHD
{
Ensure = $Ensure
Name = $Name
Path = $Path
ParentPath = $ParentPath
MaximumSizeBytes = $MaximumSizeBytes
Generation = $Generation
}
}
}
Description not yet written.
configuration Example
{
param
(
[Parameter()]
[System.String[]]
$NodeName = 'localhost',
[Parameter(Mandatory = $true)]
[System.String]
$Name,
[Parameter(Mandatory = $true)]
[System.String]
$Path,
[Parameter(Mandatory = $true)]
[System.String]
$ParentPath,
[Parameter()]
[ValidateSet('Vhd', 'Vhdx')]
[System.String]
$Generation = 'Vhd',
[Parameter()]
[ValidateSet('Dynamic', 'Fixed', 'Differencing')]
[System.String]$Type = 'Differencing',
[Parameter()]
[ValidateSet('Present', 'Absent')]
[System.String]
$Ensure = 'Present'
)
Import-DscResource -ModuleName 'HyperVDsc'
Node $NodeName
{
# Install HyperV feature, if not installed - Server SKU only
WindowsFeature HyperV
{
Ensure = 'Present'
Name = 'Hyper-V'
}
WindowsFeature HyperVPowerShell
{
Ensure = 'Present'
Name = 'Hyper-V-PowerShell'
}
Vhd DiffVhd
{
Ensure = $Ensure
Name = $Name
Path = $Path
ParentPath = $ParentPath
Generation = $Generation
Type = $Type
DependsOn = '[WindowsFeature]HyperV', '[WindowsFeature]HyperVPowerShell'
}
}
}
Description not yet written.
configuration Example
{
param
(
[Parameter()]
[System.String[]]
$NodeName = 'localhost',
[Parameter(Mandatory = $true)]
[System.String]
$Name,
[Parameter(Mandatory = $true)]
[System.String]
$Path,
[Parameter()]
[ValidateSet('Vhd', 'Vhdx')]
[System.String]
$Generation = 'Vhd',
[Parameter()]
[ValidateSet('Dynamic', 'Fixed', 'Differencing')]
[System.String]
$Type = 'Fixed',
[Parameter()]
[ValidateSet('Present', 'Absent')]
[System.String]
$Ensure = 'Present'
)
Import-DscResource -ModuleName 'HyperVDsc'
Node $NodeName
{
# Install HyperV feature, if not installed - Server SKU only
WindowsFeature HyperV
{
Ensure = 'Present'
Name = 'Hyper-V'
}
WindowsFeature HyperVPowerShell
{
Ensure = 'Present'
Name = 'Hyper-V-PowerShell'
}
Vhd DiffVhd
{
Ensure = $Ensure
Name = $Name
Path = $Path
Generation = $Generation
Type = $Type
DependsOn = '[WindowsFeature]HyperV', '[WindowsFeature]HyperVPowerShell'
}
}
}
Description not yet written.
configuration Example
{
param
(
[Parameter(Mandatory = $true)]
[System.String]
$Name,
[Parameter(Mandatory = $true)]
[System.String]
$Path,
[Parameter()]
[ValidateSet('Vhd', 'Vhdx')]
[System.String]
$Generation = 'Vhd',
[Parameter()]
[ValidateSet('Present', 'Absent')]
[System.String]
$Ensure = 'Present'
)
Import-DscResource -ModuleName 'HyperVDsc'
Node localhost
{
Vhd WrongVHD
{
Ensure = $Ensure
Name = $Name
Path = $Path
Generation = $Generation
}
}
}