Importowanie określonej wersji instalowanego zasobu
Dotyczy: Windows PowerShell 5.0
W programie PowerShell 5.0 można zainstalować oddzielne wersje zasobów DSC obok siebie. Moduł zasobów może przechowywać oddzielne wersje zasobu w wersji o nazwie foldery.
Instalowanie oddzielnych wersji zasobów obok siebie
Możesz użyć parametrów MinimumVersion, MaximumVersion i RequiredVersion polecenia cmdlet Install-Module , aby określić wersję modułu do zainstalowania. Wywoływanie modułu instalacji bez określania wersji instaluje najnowszą wersję.
Na przykład istnieje wiele wersji modułu xFailOverCluster , z których każdy zawiera zasób xCluster . Wywoływanie modułu instalacji bez określenia numeru wersji instaluje najnowszą wersję modułu.
PS> Install-Module xFailOverCluster
PS> Get-DscResource xCluster
ImplementedAs Name ModuleName Version Properties
------------- ---- ---------- ------- ----------
PowerShell xCluster xFailOverCluster 1.2.0.0 {DomainAdministratorCredential, ...
Aby zainstalować określoną wersję modułu, określ wartość RequiredVersion 1.1.0.0. Spowoduje to zainstalowanie określonej wersji obok zainstalowanej wersji.
PS> Install-Module xFailOverCluster -RequiredVersion 1.1
Teraz podczas korzystania z programu Get-DSCResource
zobaczysz obie wersje modułu .
PS> Get-DscResource xCluster
ImplementedAs Name ModuleName Version Properties
------------- ---- ---------- ------- ----------
PowerShell xCluster xFailOverCluster 1.1 {DomainAdministratorCredential, Name, ...
PowerShell xCluster xFailOverCluster 1.2.0.0 {DomainAdministratorCredential, Name, ...
Określanie wersji zasobu w konfiguracji
Jeśli na komputerze są zainstalowane oddzielne wersje zasobów, należy określić wersję tego zasobu podczas korzystania z niego w konfiguracji. W tym celu należy określić parametr ModuleVersion słowa kluczowego Import-DscResource . Jeśli nie określisz wersji modułu zasobów zasobu, z którego zainstalowano więcej niż jedną wersję, konfiguracja generuje błąd.
Poniższa konfiguracja pokazuje, jak określić wersję zasobu do wywołania:
configuration VersionTest
{
Import-DscResource -ModuleName xFailOverCluster -ModuleVersion 1.1
Node 'localhost'
{
xCluster ClusterTest
{
Name = 'TestCluster'
StaticIPAddress = '10.0.0.3'
DomainAdministratorCredential = Get-Credential
}
}
}
Parametr ModuleVersion Import-DscResource nie jest dostępny w programie PowerShell 4.0. W programie PowerShell 4.0 można określić wersję modułu, przekazując obiekt specyfikacji modułu do parametru ModuleName elementu Import-DscResource. Obiekt specyfikacji modułu to tabela skrótów zawierająca klucze ModuleName i RequiredVersion. Na przykład:
configuration VersionTest
{
Import-DscResource -ModuleName (@{ModuleName='xFailOverCluster'; RequiredVersion='1.1'} )
Node 'localhost'
{
xCluster ClusterTest
{
Name = 'TestCluster'
StaticIPAddress = '10.0.0.3'
DomainAdministratorCredential = Get-Credential
}
}
}
Będzie to również działać w programie PowerShell 5.0, ale zaleca się użycie parametru ModuleVersion .