Importera en specifik version av en installerad resurs

Gäller för: Windows PowerShell 5.0

I PowerShell 5.0 kan separata versioner av DSC-resurser installeras på en dator sida vid sida. En resursmodul kan lagra separata versioner av en resurs i version med namnet folders.

Installera separata resursversioner sida vid sida

Du kan använda parametrarna MinimumVersion, MaximumVersion och RequiredVersion för cmdleten Install-Module för att ange vilken version av en modul som ska installeras. Om du anropar Install-Module utan att ange någon version installeras den senaste versionen.

Det finns till exempel flera versioner av xFailOverCluster-modulen , som var och en innehåller en xCluster-resurs . Om du anropar Install-Module utan att ange versionsnumret installeras den senaste versionen av modulen.

PS> Install-Module xFailOverCluster
PS> Get-DscResource xCluster
ImplementedAs   Name          ModuleName           Version    Properties
-------------   ----          ----------           -------    ----------
PowerShell      xCluster      xFailOverCluster     1.2.0.0    {DomainAdministratorCredential, ...

Om du vill installera en specifik version av en modul anger du en RequiredVersion på 1.1.0.0. Detta installerar den angivna versionen sida vid sida med den installerade versionen.

PS> Install-Module xFailOverCluster -RequiredVersion 1.1

Nu visas båda versionerna av modulen i listan när du använder 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, ...

Ange en resursversion i en konfiguration

Om du har separata resursversioner installerade på en dator måste du ange versionen av resursen när du använder den i en konfiguration. Det gör du genom att ange parametern ModuleVersion för nyckelordet Import-DscResource . Om du inte kan ange versionen av en resursmodul för en resurs som du har fler än en version installerad för genererar konfigurationen ett fel.

Följande konfiguration visar hur du anger vilken version av resursen som ska anropas:

configuration VersionTest
{
    Import-DscResource -ModuleName xFailOverCluster -ModuleVersion 1.1

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

Parametern ModuleVersion för Import-DscResource är inte tillgänglig i PowerShell 4.0. I PowerShell 4.0 kan du ange en modulversion genom att skicka ett modulspecifikationsobjekt till parametern ModuleName för Import-DscResource. Ett modulspecifikationsobjekt är en hash-tabell som innehåller ModuleName- och RequiredVersion-nycklar. Exempel:

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

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

Detta fungerar också i PowerShell 5.0, men vi rekommenderar att du använder parametern ModuleVersion .

Se även