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:
- Lépjen egy virtuális gépre.
- A BEÁLLÍTÁSOK területen válassza a Bővítmények elemet.
- A létrehozott új lapon válassza a + Hozzáadás, majd a PowerShell-Desired State Configuration lehetőséget.
- 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
- A PowerShell DSC-ről a PowerShell dokumentációs központjában talál további információt.
- Vizsgálja meg a DSC-bővítmény Resource Manager sablonját.
- A PowerShell DSC használatával kezelhető további funkciókért és további DSC-erőforrásokért tekintse meg a PowerShell-katalógust.
- A bizalmas paraméterek konfigurációkba való átadásával kapcsolatos részletekért lásd: Hitelesítő adatok biztonságos kezelése a DSC-bővítménykezelővel.