Mi az Azure Automation State Configuration?
Az Azure Automation State Configuration használatával biztosíthatja, hogy a fürtterület virtuális gépei (virtuális gépei) konzisztens állapotban legyenek, ugyanazokkal a szoftverekkel és ugyanazokkal a konfigurációkkal.
Ebben a leckében megismerheti az Azure Automation funkcióit és képességeit, áttekintheti a PowerShell Desired State Configuration (DSC) deklaratív modelljét, és megismerheti annak előnyeit.
Az Azure Automation State Configuration a PowerShellre épülő Azure-szolgáltatás. Lehetővé teszi az erőforrások konzisztens üzembe helyezését, megbízható monitorozását és automatikus frissítését. Az Azure Automation biztosítja a konfigurációk definiálásához és azok valós vagy virtuális gépekre való alkalmazásához szükséges eszközöket.
Miért érdemes az Azure Automation State Configurationt használni?
A szolgáltatásokat futtató kiszolgálók helyes és konzisztens konfigurációjának manuális karbantartása nehéz és hibalehetőséget jelenthet. Az Azure Automation State Configuration a PowerShell DSC használatával segíti ezeknek a problémáknak a megoldását. Központilag kezeli a DSC-összetevőket és a DSC-folyamatot.
Az Azure Automation State Configuration beépített lekérési kiszolgálóval rendelkezik. Célként jelölheti ki a csomópontokat, hogy automatikusan megkapják a konfigurációkat erről a lekérési kiszolgálóról, elérjék a célállapotot, és visszajelezzenek a megfelelőségükről. Célként adhat meg virtuális vagy fizikai, Windows vagy Linux rendszerű virtuális gépeket a felhőben vagy a helyszínen is.
Az Azure Monitor-naplók használatával áttekintheti a csomópontok megfelelőségét, ha konfigurálja az Azure Automation State Configurationt az adatok elküldéséhez.
Mi a PowerShell DSC?
A PowerShell DSC egy deklaratív felügyeleti platform, amelyet az Azure Automation State Configuration a rendszerek konfigurálásához, üzembe helyezéséhez és szabályozásához használ. A deklaratív programozási nyelv elválasztja a szándékot (a kívánt műveletet) a végrehajtástól (a végrehajtás módjától). Önnek csak azt kell megadnia, hogy milyen legyen a célállapot, a többit pedig a DSC-re bízhatja. Nem kell tudnia, hogy hogyan valósítható meg vagy helyezhető üzembe egy funkció, ha elérhető egy DSC-erőforrás. Ehelyett az üzembehelyezési struktúrára összpontosíthat.
Ha már használja a PowerShellt, akkor felmerülhet a kérdés Önben, hogy miért van szüksége a DSC-re. Gondolja át a következő példát.
He megosztást szeretne létrehozni egy Windows-kiszolgálón, használhatja az alábbi PowerShell-parancsot:
# Create a file share
New-SmbShare -Name MyFileShare -Path C:\Shared -FullAccess User1 -ReadAccess User2
Ez a szkript egyszerű és könnyen érthető. Ha azonban éles környezetben használja ezt a szkriptet, számos probléma merül fel. Gondolja át, mi történhet, ha a szkript többször fut, vagy ha User2
már rendelkezik teljes hozzáféréssel a csak olvasható hozzáférés helyett.
Ez a megközelítés nem idempotens. Idempotens műveletnek azt nevezzük, amely ugyanazzal a hatással jár egyszer futtatva, mintha 10 001-szer futtatnánk. Az Idempotenciát a PowerShellben logika és hibakezelés hozzáadásával érhetnénk el. Ha a fájlmegosztás nem létezik, akkor létre kell hoznia. Ha a megosztás létezik, nem kell létrehoznia. Ha a User2
létezik, de nem rendelkezik olvasási jogosultsággal, akkor olvasási jogosultságot kell adni neki.
A PowerShell-szkript az alábbihoz hasonló lehetne:
$shareExists = $false
$smbShare = Get-SmbShare -Name $Name -ErrorAction SilentlyContinue
if($smbShare -ne $null)
{
Write-Verbose -Message "Share with name $Name exists"
$shareExists = $true
}
if ($shareExists -eq $false)
{
Write-Verbose "Creating share $Name to ensure it is Present"
New-SmbShare @psboundparameters
}
else
{
# Need to call either Set-SmbShare or *ShareAccess cmdlets
if ($psboundparameters.ContainsKey("ChangeAccess"))
{
#...etc., etc., etc
}
}
Más esetek, melyeket nem fontoltunk meg, csak problémák esetén jelentkeznek majd. A DSC automatikusan kezeli a váratlan eseteket is. A DSC-vel a végeredményt írhatja le, nem pedig azt a folyamatot, amellyel ez a végeredmény elérhető.
Erre mutat példát az alábbi DSC-kódrészlet:
Configuration Create_Share
{
Import-DscResource -Module xSmbShare
# A node describes the VM to be configured
Node $NodeName
{
# A node definition contains one or more resource blocks
# A resource block describes the resource to be configured on the node
xSmbShare MySMBShare
{
Ensure = "Present"
Name = "MyFileShare"
Path = "C:\Shared"
ReadAccess = "User1"
FullAccess = "User2"
Description = "This is an updated description for this share"
}
}
}
Az előző példa a modult xSmbShare
használja, amely megmutatja a DSC-nek , hogyan ellenőrizheti egy fájlmegosztás állapotát. A DSC-erőforráskészlet több mint 100 erőforrásmodullal rendelkezik, köztük egy IIS-webhely telepítéséhez. A DSC-erőforráskészletre mutató hivatkozást a modul végén található Összegző egységben találja.
A következő leckében többet is megtudhat a PowerShell DSC-kódstruktúrájáról.
Mi az az LCM?
A helyi konfigurációkezelő (LCM) a Windows operációs rendszeren futó Windows Management Framework (WMF) összetevője. Az LCM felel azért, hogy a csomópontok, például virtuális gépek állapota a célállapottal egyezőre legyen frissítve. Az LCM minden futtatásakor végrehajtja az alábbi lépéseket:
- Lekérés: Lekéri a csomópont aktuális állapotát.
- Teszt: Egy csomópont aktuális állapotát hasonlítja össze a kívánt állapottal egy lefordított DSC-szkript (.mof fájl) használatával.
- Beállítás: Frissítések a csomópontot, hogy megfeleljen a .mof fájlban leírt kívánt állapotnak.
A virtuális gépek Azure Automationben való regisztrálásakor konfigurálja az LCM-et.
A DSC-n belüli leküldéses/lekéréses architektúrák
Az LCM minden csomóponton kétféle mód egyikében működhet.
Leküldéses mód: A rendszergazda manuálisan küldi vagy leküldi a konfigurációkat egy vagy több csomópontra. Az LCM biztosítja, hogy minden csomópont állapota megegyezzen a konfigurációban megadottal.
Lekéréses mód: A lekéréses kiszolgáló tárolja a konfigurációs adatokat. Az egyes csomópontokon található LCM rendszeres időközönként – alapértelmezés szerint 15 percenként – lekérdezi a lekéréses kiszolgálót a legújabb konfigurációs adatok lekéréséhez. Ezek a kérések az alábbi diagram 1. lépéseként vannak jelölve. A 2. lépésben a lekéréses kiszolgáló elküldi a konfigurációs módosítások részleteit az egyes csomópontok számára.
Lekéréses módban minden csomópontnak regisztrálva kell lennie a lekérési szolgáltatásban.
Mindkét módnak vannak előnyei:
- A leküldéses mód egyszerűen beállítható. Nem igényel saját dedikált infrastruktúrát, és egy laptopon is futtatható. A leküldéses mód segít a DSC működésének tesztelésében. A leküldéses mód arra is használható, hogy egy lemezképből készített új gépet a cél-alapállapotba hozzon.
- A lekéréses mód akkor hasznos, ha egy sok gépből álló nagyvállalati rendszert üzemeltet. Az LCM rendszeresen lekérdezi a lekérési kiszolgálót, és ellenőrzi, hogy a csomópontok a célállapotban vannak-e. A külső eszközök vagy csapatok által alkalmazott gyorsjavítások, amelyek az egyes gépek konfigurációinak eltéréséhez vezethetnek, gyorsan egységesíthetők az Ön által beállított konfigurációval. Ez a folyamat segíthet a biztonsági és jogszabályi kötelezettségeknek való folyamatos megfelelőség elérésében.
Támogatott platformok és operációs rendszerek
Az Azure Automation DSC-t támogatja az Azure Cloud és más felhőszolgáltatók, a helyszíni infrastruktúra, vagy egy ezekre a környezetekre kiterjedő hibrid kombináció.
Az Azure Automation DSC az alábbi operációs rendszereket támogatja:
- Windows
- Server 2022
- Server 2019
- Server 2016
- Server 2012 R2
- Server 2012
- Server 2008 R2 SP1
- 11
- 10
- 8.1
- 7
- Linux
A PowerShell DSC minden Linux-gépen telepítve van, amelyet az Azure Automation DSC támogat.
A DSC követelményei Windows rendszeren
Windows rendszerű gépek esetén az Azure Desired State Configuration (DSC) virtuálisgép-bővítmény a WMF használatával kezeli a Windows olyan funkcióit, mint a Windows PowerShell DSC és a Windows Remote Management (WinRM). Az Azure DSC támogatja a WMF 4.0-s és újabb verzióit, így a Windows rendszerű gépeknek Windows Server 2008 R2 SP1, Windows 7 vagy újabb rendszert kell futtatniuk.
Az Azure DSC-bővítmény az első hívásakor telepíti a WMF-nek az operációs rendszerrel kompatibilis verzióját a Windows összes verziójára, kivéve a Windows Server 2016-os és az újabb verzióit. A Windows Server 2016-os és újabb verzióiban már telepítve van a WMF legújabb verziója. A WMF telepítése után a gép újraindítást igényel.
A WinRM engedélyezve van a Windows Server 2012 vagy újabb rendszert futtató gépcsomópontokon, valamint a Windows 7 vagy újabb rendszereken.
A DSC-ügynök proxy-támogatása a Windows 1809-es és újabb buildjeiben érhető el. A DSC-beli proxy-támogatás a Windows korábbi verzióihoz nem érhető el.
Egyéb DSC-követelmények
Ha a csomópontok privát hálózatban helyezkednek el, akkor DSC-nek az alábbi portra és URL-címekre van szüksége az Automation szolgáltatással való kommunikációhoz:
- Port: Csak a TCP 443 szükséges a kimenő internet-hozzáféréshez
- Globális URL-cím: *.azure-automation.net
- Az US Gov Virginia globális URL-címe: *.azure-automation.us
- Ügynökszolgáltatás: https://
<workspaceId>
.agentsvc.azure-automation.net