Importowanie określonej wersji instalowanego zasobuImport a specific version of an installed resource

Dotyczy: Windows PowerShell 5,0Applies To: Windows PowerShell 5.0

W programie PowerShell 5,0 poszczególne wersje zasobów DSC można zainstalować na komputerze obok siebie.In PowerShell 5.0, separate versions of DSC resources can be installed on a computer side by side. Moduł zasobów może przechowywać osobne wersje zasobu w wersji o nazwie foldery.A resource module can store separate versions of a resource in version named folders.

Instalowanie oddzielnych wersji zasobów obok siebieInstalling separate resource versions side by side

Możesz użyć parametrów MinimumVersion , MaximumVersion i RequiredVersion polecenia cmdlet Install-module , aby określić, która wersja modułu ma zostać zainstalowana.You can use the MinimumVersion , MaximumVersion , and RequiredVersion parameters of the Install-Module cmdlet to specify which version of a module to install. Wywołanie funkcji Install-module bez określenia wersji powoduje zainstalowanie najnowszej wersji.Calling Install-Module without specifying a version installs the most recent version.

Na przykład istnieje wiele wersji modułu xFailOverCluster , z których każdy zawiera zasób xCluster .For example, there are multiple versions of the xFailOverCluster module, each of which contains an xCluster resource. Wywoływanie modułu instalacji bez określenia numeru wersji powoduje zainstalowanie najnowszej wersji modułu.Calling Install-Module without specifying the version number installs the most recent version of the module.

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, należy określić RequiredVersion 1.1.0.0.To install a specific version of a module, specify a RequiredVersion of 1.1.0.0. Spowoduje to zainstalowanie określonej wersji obok zainstalowanej wersji.This installs the specified version side by side with the installed version.

PS> Install-Module xFailOverCluster -RequiredVersion 1.1

Teraz zobaczysz obie wersje modułu na liście podczas korzystania z programu Get-DSCResource .Now, you see both version of the module listed when you use Get-DSCResource.

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 konfiguracjiSpecifying a resource version in a configuration

Jeśli na komputerze zainstalowano oddzielne wersje zasobów, należy określić wersję tego zasobu, gdy jest on używany w konfiguracji.If you have separate resource versions installed on a computer, you must specify the version of that resource when you use it in a configuration. W tym celu należy określić parametr ModuleVersion słowa kluczowego Import-DscResource .You do this by specifying the ModuleVersion parameter of the Import-DscResource keyword. W przypadku niepowodzenia określania wersji modułu zasobów zasobu, w którym jest zainstalowana więcej niż jedna wersja, konfiguracja generuje błąd.If you fail to specify the version of a resource module of a resource of which you have more than one version installed, the configuration generates an error.

W poniższej konfiguracji pokazano, jak określić wersję zasobu do wywołania:The following configuration shows how to specify the version of the resource to call:

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.The ModuleVersion parameter of Import-DscResource is not available in PowerShell 4.0. W programie PowerShell 4,0 można określić wersję modułu przez przekazanie obiektu specyfikacji modułu do parametru ModuleName polecenia import-DscResource.In PowerShell 4.0, you can specify a module version by passing a module specification object to the ModuleName parameter of Import-DscResource. Obiekt specyfikacji modułu jest tabelą skrótów, która zawiera klucze ModuleName i RequiredVersion.A module specification object is a hash table that contains ModuleName and RequiredVersion keys. Na przykład:For example:

configuration VersionTest
{
    Import-DscResource -ModuleName (@{ModuleName='xFailOverCluster'; RequiredVersion='1.1'} )

    Node 'localhost'
    {
       xCluster ClusterTest
       {
            Name                          = 'TestCluster'
            StaticIPAddress               = '10.0.0.3'
            DomainAdministratorCredential = Get-Credential
        }
     }
}

Ta funkcja będzie również działała w programie PowerShell 5,0, ale zaleca się użycie parametru ModuleVersion .This will also work in PowerShell 5.0, but it is recommended that you use the ModuleVersion parameter.

Zobacz takżeSee also