Az Azure Desired State Configuration-bővítménykezelő bemutatása

Megjegyzés

A DSC-bővítmény engedélyezése előtt szeretnénk tudni, hogy a DSC egy újabb verziója már általánosan elérhető, amelyet az Azure Automange nevű gépkonfiguráció egyik funkciója felügyel. A gépkonfigurációs funkció egyesíti a Desired State Configuration (DSC) bővítménykezelőjének funkcióit, a Azure Automation State Configuration és a leggyakrabban kért funkciókat az ügyfelek visszajelzései alapján. A gépkonfiguráció a hibrid gépek Arc-kompatibilis kiszolgálókon keresztüli támogatását is magában foglalja.

Az Azure-beli virtuálisgép-ügynök és a hozzá tartozó bővítmények Microsoft Azure-infrastruktúra-szolgáltatások részét képezik. A virtuálisgép-bővítmények olyan szoftverösszetevők, amelyek kibővítik a virtuális gépek funkcióit, és leegyszerűsítik a különböző virtuálisgép-felügyeleti műveleteket.

Az Azure Desired State Configuration (DSC) bővítmény elsődleges használati esete a virtuális gép Azure Automation State Configuration (DSC) szolgáltatásba való indítása. A szolgáltatás olyan előnyöket biztosít, amelyek magukban foglalják a virtuális gép konfigurációjának folyamatos kezelését, valamint más operatív eszközökkel, például az Azure Monitorozással való integrációt. A bővítmény használatával regisztrálhatja a virtuális gépeket a szolgáltatásban, és rugalmas megoldást kínál, amely az Azure-előfizetésekben is működik.

A DSC-bővítményt az Automation DSC szolgáltatástól függetlenül is használhatja. Ez azonban csak egy konfigurációt küld le a virtuális gépre. Nem érhető el folyamatos jelentéskészítés, csak helyileg a virtuális gépen.

Ez a cikk mindkét forgatókönyvről nyújt információt: a DSC-bővítmény használata az Automation előkészítéséhez, valamint a DSC-bővítmény használata a konfigurációk virtuális gépekhez való hozzárendeléséhez az Azure SDK használatával.

Előfeltételek

  • Helyi gép: Az Azure-beli virtuálisgép-bővítmény használatához a Azure Portal vagy a Azure PowerShell SDK-t kell használnia.
  • Vendégügynök: A DSC-konfiguráció által konfigurált Azure-beli virtuális gépnek olyan operációs rendszernek kell lennie, amely támogatja a Windows Management Framework (WMF) 4.0-s vagy újabb verzióját. A támogatott operációsrendszer-verziók teljes listáját a DSC-bővítmény verzióelőzményei között találja.

Kifejezések és fogalmak

Ez az útmutató a következő fogalmak ismeretét feltételezi:

  • Konfiguráció: DSC-konfigurációs dokumentum.
  • Csomópont: Egy DSC-konfiguráció célja. Ebben a dokumentumban a csomópont mindig egy Azure-beli virtuális gépre hivatkozik.
  • Konfigurációs adatok: .psd1 fájl, amely környezeti adatokat biztosít egy konfigurációhoz.

Architektúra

Az Azure DSC-bővítmény az Azure-beli virtuálisgép-ügynök keretrendszerét használja az Azure-beli virtuális gépeken futó DSC-konfigurációk továbbítására, bevezetésére és jelentésére. A DSC-bővítmény elfogad egy konfigurációs dokumentumot és egy paraméterkészletet. Ha nincs megadva fájl, a bővítmény egy alapértelmezett konfigurációs szkriptet ágyaz be. Az alapértelmezett konfigurációs szkript csak a helyi Configuration Manager metaadatainak beállítására szolgál.

Amikor a bővítmény első alkalommal van meghívva, a WMF egy verzióját telepíti a következő logikával:

  • Ha az Azure-beli virtuális gép operációs rendszere Windows Server 2016, a rendszer nem hajt végre műveletet. Windows Server 2016 már telepítve van a PowerShell legújabb verziója.
  • Ha a wmfVersion tulajdonság meg van adva, a WMF ezen verziója lesz telepítve, kivéve, ha ez a verzió nem kompatibilis a virtuális gép operációs rendszerével.
  • Ha nincs megadva wmfVersion tulajdonság, a WMF legújabb alkalmazható verziója lesz telepítve.

A WMF telepítéséhez újra kell indítani. Az újraindítás után a bővítmény letölti a modulesUrl tulajdonságban megadott .zip fájlt, ha meg van adva. Ha ez a hely az Azure Blob Storage-ban található, megadhat egy SAS-jogkivonatot a sasToken tulajdonságban a fájl eléréséhez. A .zip letöltése és kicsomagolása után a configurationFunction függvényben definiált konfigurációs függvény egy .mof(Managed Object Format) fájl létrehozásához fut. A bővítmény ezután a létrehozott .mof fájllal fut Start-DscConfiguration -Force . A bővítmény rögzíti a kimenetet, és beírja az Azure állapotcsatornába.

Alapértelmezett konfigurációs szkript

Az Azure DSC-bővítmény tartalmaz egy alapértelmezett konfigurációs szkriptet, amelyet a virtuális gép Azure Automation DSC szolgáltatásba való előkészítésekor kell használni. A szkript paraméterei igazodnak a Helyi Configuration Manager konfigurálható tulajdonságaihoz. A szkriptparaméterekért lásd: Alapértelmezett konfigurációs szkriptDesired State Configuration bővítményben Azure Resource Manager-sablonokkal. A teljes szkriptért tekintse meg az Azure gyorsindítási sablonját a GitHubon.

Információk az Azure Automation State Configuration (DSC) szolgáltatásban való regisztrációhoz

Ha a DSC-bővítménnyel regisztrál egy csomópontot a State Configuration szolgáltatásban, három értéket kell megadni.

  • RegistrationUrl – a Azure Automation fiók HTTPS-címe
  • RegistrationKey – egy megosztott titkos kód, amellyel a csomópontok regisztrálva lesznek a szolgáltatásban
  • NodeConfigurationName – a szolgáltatásból lekérendő csomópont-konfiguráció (MOF) neve a kiszolgálói szerepkör konfigurálásához

Ezek az információk az Azure Portal vagy a PowerShell használatával tekinthetők meg.

(Get-AzAutomationRegistrationInfo -ResourceGroupName <resourcegroupname> -AutomationAccountName <accountname>).Endpoint
(Get-AzAutomationRegistrationInfo -ResourceGroupName <resourcegroupname> -AutomationAccountName <accountname>).PrimaryKey

A Csomópont konfigurációja névnél győződjön meg arról, hogy a csomópont konfigurációja létezik az Azure State Configuration. Ha nem, a bővítmény üzembe helyezése hibát ad vissza. Győződjön meg arról is, hogy a csomópont-konfiguráció nevét használja, nem pedig a konfigurációt. A konfiguráció egy szkriptben van definiálva, amely a Node Configuration (MOF-fájl) fordítására szolgál. A név mindig a Konfiguráció lesz, amelyet egy pont . és localhost egy adott számítógépnév követ.

DSC-bővítmény Resource Manager sablonokban

A legtöbb esetben Resource Manager üzembehelyezési sablonok a DSC-bővítménnyel való együttműködés várható módjai. További információkért és példákért a DSC-bővítmény Resource Manager üzembehelyezési sablonokba való hozzáadásáról lásd: Desired State Configuration bővítmény Azure Resource Manager-sablonokkal.

DSC-bővítmény PowerShell-parancsmagjai

A DSC-bővítmény kezeléséhez használt PowerShell-parancsmagok leginkább interaktív hibaelhárítási és információgyűjtési forgatókönyvekben használhatók. A parancsmagokkal csomagolhatja, közzéteheti és monitorozhatja a DSC-bővítmények üzemelő példányait. A DSC-bővítmény parancsmagjai még nincsenek frissítve, hogy az alapértelmezett konfigurációs szkripttel működjenek.

A Publish-AzVMDscConfiguration parancsmag egy konfigurációs fájlt vesz fel, megvizsgálja a függő DSC-erőforrásokat, majd létrehoz egy .zip fájlt. A .zip fájl tartalmazza a konfiguráció létrehozásához szükséges konfigurációt és DSC-erőforrásokat. A parancsmag helyileg is létrehozhatja a csomagot a -OutputArchivePath paraméterrel. Ellenkező esetben a parancsmag közzéteszi a .zip fájlt a blobtárolóban, majd egy SAS-jogkivonattal védi.

A parancsmag által létrehozott .ps1 konfigurációs szkript az archív mappa gyökerében található .zip fájlban található. A modulmappa az erőforrások archívummappájába kerül.

A Set-AzVMDscExtension parancsmag beszúrja a PowerShell DSC-bővítmény által igényelt beállításokat egy virtuálisgép-konfigurációs objektumba.

A Get-AzVMDscExtension parancsmag lekéri egy adott virtuális gép DSC-bővítményének állapotát.

A Get-AzVMDscExtensionStatus parancsmag lekéri a DSC-bővítménykezelő által bevezetett DSC-konfiguráció állapotát. Ez a művelet végrehajtható egyetlen virtuális gépen vagy virtuális gépek egy csoportján.

A Remove-AzVMDscExtension parancsmag eltávolítja a bővítménykezelőt egy adott virtuális gépről. Ez a parancsmag nem távolítja el a konfigurációt, nem távolítja el a WMF-et, és nem módosítja a virtuális gépen alkalmazott beállításokat. Csak a bővítménykezelőt távolítja el.

Fontos információk Resource Manager DSC-bővítmény parancsmagjairól:

  • Az Azure Resource Manager-parancsmagok szinkronban vannak.
  • A ResourceGroupName, a VMName, az ArchiveStorageAccountName, a Version és a Location paraméterek mindegyike kötelező.
  • Az ArchiveResourceGroupName nem kötelező paraméter. Ezt a paramétert akkor adhatja meg, ha a tárfiók egy másik erőforráscsoporthoz tartozik, mint amelyikbe a virtuális gépet létrehozták.
  • Az Automatikus frissítés kapcsolóval automatikusan frissítheti a bővítménykezelőt a legújabb verzióra, amikor az elérhető. Ez a paraméter újraindítást okozhat a virtuális gépen a WMF új verziójának kiadásakor.

A parancsmagok használatának első lépései

Az Azure DSC-bővítmény DSC-konfigurációs dokumentumokkal közvetlenül konfigurálhatja az Azure-beli virtuális gépeket az üzembe helyezés során. Ez a lépés nem regisztrálja a csomópontot az Automationben. A csomópont nincs központilag felügyelve.

Az alábbi példa egy egyszerű konfigurációs példát mutat be. Mentse a konfigurációt helyileg iisInstall.ps1.

configuration IISInstall
{
    node "localhost"
    {
        WindowsFeature IIS
        {
            Ensure = "Present"
            Name = "Web-Server"
        }
    }
}

A következő parancsok a iisInstall.ps1 szkriptet a megadott virtuális gépen helyezik el. A parancsok végrehajtják a konfigurációt is, majd jelentést készítnek az állapotról.

$resourceGroup = 'dscVmDemo'
$vmName = 'myVM'
$storageName = 'demostorage'
#Publish the configuration script to user storage
Publish-AzVMDscConfiguration -ConfigurationPath .\iisInstall.ps1 -ResourceGroupName $resourceGroup -StorageAccountName $storageName -force
#Set the VM to run the DSC configuration
Set-AzVMDscExtension -Version '2.76' -ResourceGroupName $resourceGroup -VMName $vmName -ArchiveStorageAccountName $storageName -ArchiveBlobName 'iisInstall.ps1.zip' -AutoUpdate -ConfigurationName 'IISInstall'

Azure CLI üzembe helyezése

Az Azure CLI használatával üzembe helyezheti a DSC-bővítményt egy meglévő virtuális gépen.

Windows rendszerű virtuális gép esetén:

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name DSC \
  --publisher Microsoft.Powershell \
  --version 2.77 --protected-settings '{}' \
  --settings '{}'

Linux rendszerű virtuális gép esetén:

az vm extension set \
  --resource-group myResourceGroup \
  --vm-name myVM \
  --name DSCForLinux \
  --publisher Microsoft.OSTCExtensions \
  --version 2.7 --protected-settings '{}' \
  --settings '{}'

Azure Portal funkciók

A DSC beállítása a portálon:

  1. Lépjen egy virtuális gépre.
  2. A BEÁLLÍTÁSOK területen válassza a Bővítmények elemet.
  3. A létrehozott új lapon válassza a + Hozzáadás, majd a PowerShell-Desired State Configuration lehetőséget.
  4. Kattintson a bővítményinformációs oldal alján található Létrehozás gombra.

A portál a következő bemenetet gyűjti:

  • Konfigurációs modulok vagy szkript: Ez a mező kötelező (az űrlap nem lett frissítve az alapértelmezett konfigurációs szkripthez). A konfigurációs modulokhoz és szkriptekhez olyan .ps1 fájlra van szükség, amely rendelkezik egy konfigurációs szkripttel vagy egy .zip fájllal, amely a gyökérkiszolgálón található .ps1 konfigurációs szkripttel rendelkezik. Ha .zip fájlt használ, az összes függő erőforrásnak szerepelnie kell a .zip modulmappáiban. A .zip fájlt az Azure PowerShell SDK-ban található Publish-AzureVMDscConfiguration -OutputArchivePath parancsmaggal hozhatja létre. A .zip-fájlt a rendszer feltölti a felhasználói blobtárolóba, és egy SAS-jogkivonat védi.

  • A konfiguráció modulalapú neve: Több konfigurációs függvényt is felvehet egy .ps1 fájlba. Adja meg a konfigurációs .ps1 szkript nevét, majd a \ és a konfigurációs függvény nevét. Ha például a .ps1 szkript neve configuration.ps1, és a konfiguráció IisInstall, írja be a configuration.ps1\IisInstall nevet.

  • Konfigurációs argumentumok: Ha a konfigurációs függvény argumentumokat vesz fel, adja meg őket itt argumentumNév1=érték1,argumentumNév2=érték2 formátumban. Ez a formátum egy másik formátum, amelyben a konfigurációs argumentumok a PowerShell-parancsmagokban vagy Resource Manager-sablonokban fogadhatók el.

  • Konfigurációs adatok PSD1-fájl: Ha a konfigurációhoz konfigurációs adatfájlra van szükség a fájlban .psd1, ezen a mezőben jelölje ki az adatfájlt, és töltse fel a felhasználói blobtárolóba. A konfigurációs adatfájlt egy SAS-jogkivonat védi a Blob Storage-ban.

  • WMF-verzió: A virtuális gépre telepíteni kívánt Windows Management Framework (WMF) verzióját adja meg. Ha ezt a tulajdonságot a legújabbra állítja, a WMF legújabb verzióját telepíti. Jelenleg ennek a tulajdonságnak az egyetlen lehetséges értéke a 4.0, 5.0, 5.1 és újabb. Ezekre a lehetséges értékekre frissítések vonatkoznak. Az alapértelmezett érték a legújabb.

  • Adatgyűjtés: Meghatározza, hogy a bővítmény telemetriai adatokat gyűjt-e. További információ: Azure DSC-bővítmény adatgyűjtése.

  • Verzió: A telepítendő DSC-bővítmény verzióját adja meg. A verziókkal kapcsolatos információkért lásd: DSC-bővítmény verzióelőzményei.

  • Alverzió automatikus frissítése: Ez a mező leképezést biztosít a parancsmagok Automatikus frissítés kapcsolójára, és lehetővé teszi, hogy a bővítmény automatikusan a legújabb verzióra frissüljön a telepítés során. Az Igen utasítást ad a bővítménykezelőnek a legújabb elérhető verzió használatára, a Nem pedig a megadott verzió telepítésére kényszeríti. Az Igen és a Nem lehetőség kiválasztása nem ugyanaz, mint a Nem.

Naplók

A bővítmény naplói a következő helyen vannak tárolva: C:\WindowsAzure\Logs\Plugins\Microsoft.Powershell.DSC\<version number>

Következő lépések