Delen via


Een specifieke versie van een geïnstalleerde resource importeren

Van toepassing op: Windows PowerShell 5.0

In PowerShell 5.0 kunnen afzonderlijke versies van DSC-resources naast elkaar op een computer worden geïnstalleerd. Een resourcemodule kan afzonderlijke versies van een resource opslaan in een versie met de naam van mappen.

Afzonderlijke resourceversies naast elkaar installeren

U kunt de parameters MinimumVersion, MaximumVersion en RequiredVersion van de cmdlet Install-Module gebruiken om op te geven welke versie van een module moet worden geïnstalleerd. Als u Install-Module aanroept zonder een versie op te geven, wordt de meest recente versie geïnstalleerd.

Er zijn bijvoorbeeld meerdere versies van de module xFailOverCluster , die elk een xCluster-resource bevatten. Als u Install-Module aanroept zonder het versienummer op te geven, wordt de meest recente versie van de module geïnstalleerd.

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

Als u een specifieke versie van een module wilt installeren, geeft u een RequiredVersion van 1.1.0.0 op. Hiermee wordt de opgegeven versie naast de geïnstalleerde versie geïnstalleerd.

PS> Install-Module xFailOverCluster -RequiredVersion 1.1

Nu ziet u beide versies van de module die worden weergegeven wanneer u gebruikt 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, ...

Een resourceversie opgeven in een configuratie

Als u afzonderlijke resourceversies op een computer hebt geïnstalleerd, moet u de versie van die resource opgeven wanneer u deze in een configuratie gebruikt. U doet dit door de parameter ModuleVersion van het trefwoord Import-DscResource op te geven. Als u de versie van een resourcemodule niet kunt opgeven van een resource waarvan u meer dan één versie hebt geïnstalleerd, genereert de configuratie een fout.

In de volgende configuratie ziet u hoe u de versie opgeeft van de resource die moet worden aangeroepen:

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

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

De parameter ModuleVersion van Import-DscResource is niet beschikbaar in PowerShell 4.0. In PowerShell 4.0 kunt u een moduleversie opgeven door een modulespecificatieobject door te geven aan de parameter ModuleName van Import-DscResource. Een modulespecificatieobject is een hashtabel die de sleutels ModuleName en RequiredVersion bevat. Bijvoorbeeld:

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

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

Dit werkt ook in PowerShell 5.0, maar u wordt aangeraden de parameter ModuleVersion te gebruiken.

Zie ook