Gépkonfigurációs csomag összetevőinek tesztelése

A PowerShell-modul Vendégkonfigurációja olyan eszközöket tartalmaz, amelyekkel automatizálhatja egy konfigurációs csomag tesztelését az Azure-on kívül. Ezekkel az eszközökkel gyorsan megtalálhatja a problémákat, és gyorsan iterálhat, mielőtt továbblépne a tesztelésre egy Azure- vagy Arc-alapú környezetben.

A tesztelés megkezdése előtt be kell állítania a szerzői környezetet , és létre kell hoznia egy egyéni gépkonfigurációs csomag összetevőt.

Fontos

A környezet állapotát naplózható és konfigurációkat alkalmazó egyéni csomagok általánosan elérhető (GA) támogatási állapotban vannak. A következő korlátozások azonban érvényesek:

A konfigurációkat alkalmazó gépkonfigurációs csomagok használatához az Azure-beli virtuális gép vendégkonfigurációs bővítményének 1.26.24-es vagy újabb verziójára vagy az Arc-ügynök 1.10.0-s vagy újabb verziójára van szükség.

A GuestConfiguration modul csak az Ubuntu 18-on és újabb verziókban érhető el. A modul által létrehozott csomag és szabályzatok azonban bármely, az Azure-ban vagy az Arcban támogatott Linux-disztribúción/verzión használhatók.

A csomagok tesztelése macOS rendszeren nem érhető el.

A csomagot a munkaállomásról vagy a folyamatos integrációs és folyamatos üzembe helyezési (CI/CD) környezetből tesztelheti. A GuestConfiguration modul ugyanazt az ügynököt tartalmazza a fejlesztési környezethez, mint amelyet az Azure- vagy Arc-kompatibilis gépeken használnak. Az ügynök a WindowsHoz készült PowerShell 7.1.3 és a Linux 7.2.0-preview.7 különálló példányát tartalmazza. A különálló példány biztosítja, hogy a csomag tesztelési környezete összhangban legyen a gépkonfigurációval kezelt gépekkel.

Az Ügynökszolgáltatás az Azure-ban és az Arc-kompatibilis gépeken fiókként fut a Windowsban és a LocalSystem Gyökér linuxos rendszerben. A legjobb eredmény érdekében futtassa a cikkben szereplő parancsokat kiemelt biztonsági környezetben.

A PowerShell LocalSystem windowsos futtatásához használja a SysInternals eszköz P Standard kiadás xec eszközét.

A PowerShell linuxos gyökérként való futtatásához használja a sudo parancsot.

Annak ellenőrzése, hogy a konfigurációs csomag megfelel-e a követelményeknek

Először tesztelje, hogy a konfigurációs csomag megfelel-e az alapvető követelményeknek a használatával Get-GuestConfigurationPackageComplianceStatus. A parancs a következő csomagkövetelményeket ellenőrzi.

  • Az MOF jelen van és érvényes, a megfelelő helyen
  • A szükséges modulok/függőségek a megfelelő verzióval vannak jelen, ismétlődések nélkül
  • A csomag aláírásának ellenőrzése (nem kötelező)
  • Test Ennek tesztelése és Get a megfelelőségi állapotra vonatkozó információk visszaadása

A parancsmag paraméterei Get-GuestConfigurationPackageComplianceStatus :

  • Elérési út: A gép konfigurációs csomagjának fájl elérési útja vagy URI-ja.
  • Paraméter: Kivonattáblaként megadott szabályzatparaméterek.

Amikor ez a parancs első alkalommal fut, a gépkonfigurációs ügynök telepítve lesz a tesztgépre a Windowson és /var/lib/GuestConfig/bin Linuxon futó útvonalonC:\ProgramData\GuestConfig\bin. Ez az elérési út nem érhető el egy felhasználói fiók számára, ezért a parancs jogosultságszint-emelést igényel.

Futtassa a következő parancsot a csomag teszteléséhez:

Windows rendszerben egy emelt szintű PowerShell 7-munkamenetből.

# Get the current compliance results for the local machine
Get-GuestConfigurationPackageComplianceStatus -Path ./MyConfig.zip

Linuxon a PowerShell sudo használatával történő futtatásával.

# Get the current compliance results for the local machine
sudo pwsh -command 'Get-GuestConfigurationPackageComplianceStatus -Path ./MyConfig.zip'

A parancs egy objektumot ad ki, amely az erőforrásonkénti megfelelőségi állapotot és részleteket tartalmazza.

  complianceStatus  resources
  ----------------  ---------
  True              @{BuiltInAccount=localSystem; ConfigurationName=MyConfig; …

A konfigurációs csomag tesztelése konfigurálást alkalmazhat

Végül, ha a konfigurációs csomag üzemmódja van AuditandSet , tesztelheti, hogy a Set metódus a parancs használatával Start-GuestConfigurationPackageRemediationalkalmazhat-e beállításokat egy helyi gépre.

Fontos

Ez a parancs módosításokat kísérel meg abban a helyi környezetben, ahol fut.

A parancsmag paraméterei Start-GuestConfigurationPackageRemediation :

  • Elérési út: A gép konfigurációs csomagjának teljes elérési útja.

Windows rendszerben egy emelt szintű PowerShell 7-munkamenetből.

# Test applying the configuration to local machine
Start-GuestConfigurationPackageRemediation -Path ./MyConfig.zip

Linuxon a PowerShell sudo használatával történő futtatásával.

# Test applying the configuration to local machine
sudo pwsh -command 'Start-GuestConfigurationPackageRemediation -Path ./MyConfig.zip'

A parancs csak hibák esetén ad vissza kimenetet. A paraméter használatával elháríthatja az -verbose események Setrészleteinek elhárítását.

A parancs Start-GuestConfigurationPackageRemediationfuttatása után újra futtathatja a parancsot Get-GuestConfigurationComplianceStatus , hogy meggyőződjön arról, hogy a gép most a megfelelő állapotban van.

Következő lépés