Mi az Azure Automation állapotkonfigurációja?
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 egy 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 eszközöket biztosít a konfigurációk meghatározásához és valós és virtuális gépekre való alkalmazásához.
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ít a kihívások megoldásában. Központilag kezeli a DSC-összetevőket és a DSC-folyamatot.
Az Azure Automation State Configuration beépített lekéréses kiszolgálóval rendelkezik. Megcélzhatja a csomópontokat, hogy automatikusan fogadják a konfigurációkat erről a lekéréses kiszolgálóról, megfeleljenek a kívánt állapotnak, és jelentést készíthessenek a megfelelőségükről. Virtuális vagy fizikai Windows- vagy Linux-gépeket célozhat meg a felhőben vagy a helyszínen.
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 az a PowerShell DSC?
A PowerShell DSC egy deklaratív felügyeleti platform, amelyet az Azure Automation State Configuration használ a rendszerek konfigurálásához, üzembe helyezéséhez és vezérléséhez. 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). Adja meg a kívánt állapotot, és hagyja, hogy a DSC végezze el a munkát. Nem kell tudnia, hogyan implementálhat vagy helyezhet üzembe egy funkciót, ha elérhető egy DSC-erőforrás. Ehelyett az üzembehelyezési struktúrára összpontosíthat.
Ha már használja a PowerShellt, felmerülhet a kérdés, hogy miért van szüksége a DSC-re. Consider the following example.
Ha megosztást szeretne létrehozni egy Windows-kiszolgálón, használhatja ezt a 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. Az idempotencia olyan műveletet ír le, amelynek ugyanaz a hatása, akár egyszer, akár 10 001 alkalommal futtatja. Az idempotencia PowerShellben való eléréséhez logikát és hibakezelést kell hozzáadnia. Ha a fájlmegosztás nem létezik, akkor létre kell hoznia. Ha a megosztás létezik, nem kell létrehozni. Ha User2
létezik, de nem rendelkezik olvasási hozzáféréssel, olvasási hozzáférést adhat hozzá.
A PowerShell-szkript a következőképpen nézne ki:
$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 különleges esetek, amelyeket nem vett figyelembe, csak akkor merülhetnek fel, ha problémák merülnek fel. A DSC automatikusan kezeli a váratlan eseteket. A DSC-vel az eredményt kell leírnia, nem pedig az eredmény elérésének folyamatát.
A következő DSC-kódrészlet egy példát mutat be:
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 LCM?
A helyi konfigurációkezelő (LCM) a Windows operációs rendszeren futó Windows Management Framework (WMF) összetevője. Az LCM feladata, hogy a kívánt állapotnak megfelelően frissítse a csomópont állapotát, például egy virtuális gépet. Az LCM minden futtatásakor végrehajtja a következő 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.
Leküldéses és lekéréses architektúrák a DSC-ben
Az egyes csomópontok LCM-jének működése két módban lehet.
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 gondoskodik arról, hogy az egyes csomópontok állapota megegyezik a konfiguráció által megadott értékekkel.
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ópontot regisztrálni kell a lekéréses szolgáltatásban.
Mindkét módnak vannak előnyei:
- A leküldéses mód egyszerűen beállítható. Nincs szüksége saját dedikált infrastruktúrára, és laptopon is futtatható. A leküldéses mód hasznos a DSC funkcióinak teszteléséhez. Leküldéses móddal is lekérheti az újonnan rendszerképezett gépet az alapkonfiguráció kívánt állapotára.
- A lekéréses mód nagy számú gépet felölelő vállalati üzemelő példányokban hasznos. Az LCM rendszeresen lekérdezi a lekéréses kiszolgálót, és gondoskodik arról, hogy a csomópontok a kívánt állapotban legyenek. Ha egy külső eszköz vagy csapat olyan gyorsjavításokat alkalmaz, amelyek konfigurációs eltérést okoznak az egyes gépeken, a rendszer gyorsan visszahozza ezeket a gépeket a beállított konfigurációnak megfelelően. Ez a folyamat segíthet a biztonsági és szabályozási kötelezettségek folyamatos betartásának elérésében.
Támogatott platformok és operációs rendszerek
Az Azure Automation DSC-t az Azure Cloud Services és más felhőszolgáltatók, a helyszíni infrastruktúra vagy az összes ilyen környezet hibridje támogatja.
Az Azure Automation DSC a következő operációs rendszereket támogatja:
- Windows
- 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 Windows DSC követelményei
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 első meghívásakor telepíti a WMF operációsrendszer-kompatibilis verzióját a Windows Server 2016 és újabb verziók kivételével minden Windows-verzióra. 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 proxytámogatása a Windows 1809-ben és újabb verzióiban érhető el. A proxytámogatás nem érhető el a DSC-ben a Windows korábbi verzióihoz.
Egyéb DSC-követelmények
Ha a csomópontok privát hálózaton találhatók, a DSC-nek a következő portokra és URL-címekre van szüksége az Azure Automationnel 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 USA Gov Virginia globális URL-címe: *.azure-automation.us
- Ügynökszolgáltatás: https://
<workspaceId>
.agentsvc.azure-automation.net