Testování artefaktů balíčku konfigurace počítače
Modul PowerShell GuestConfiguration obsahuje nástroje pro automatizaci testování konfiguračního balíčku mimo Azure. Pomocí těchto nástrojů můžete rychle najít problémy a iterovat před tím, než začnete testovat v připojeném prostředí Azure nebo Arc.
Než začnete s testováním, musíte nastavit prostředí pro vytváření obsahu a vytvořit artefakt vlastního konfiguračního balíčku počítače.
Důležité
Vlastní balíčky, které auditují stav prostředí a používají konfigurace, jsou ve stavu obecné dostupnosti (GA). Platí však následující omezení:
Pokud chcete používat balíčky konfigurace počítače, které používají konfigurace, vyžaduje se rozšíření konfigurace hosta virtuálního počítače Azure verze 1.26.24 nebo novější nebo agent Arc 1.10.0 nebo novější.
Modul GuestConfiguration je k dispozici pouze v Ubuntu 18 a novějších verzích. Balíček a zásady vytvořené modulem se ale dají použít v libovolné distribuci a verzi Linuxu podporované v Azure nebo Arc.
Testovací balíčky v systému macOS nejsou k dispozici.
Balíček můžete otestovat z pracovní stanice nebo prostředí kontinuální integrace a průběžného nasazování (CI/CD). Modul GuestConfiguration obsahuje stejného agenta pro vaše vývojové prostředí, jako se používá v počítačích s podporou Azure nebo Arc. Agent obsahuje samostatnou instanci PowerShellu 7.1.3 pro Windows a 7.2.0-preview.7 pro Linux. Samostatná instance zajišťuje, že prostředí skriptu, ve kterém je balíček testován, je konzistentní s počítači, které spravujete pomocí konfigurace počítače.
Služba agenta v počítačích s podporou Azure a Arc běží jako LocalSystem
účet ve Windows a rootu v Linuxu. Spuštění příkazů v tomto článku v kontextu privilegovaného zabezpečení pro nejlepší výsledky
Pokud chcete spustit PowerShell jako LocalSystem
ve Windows, použijte nástroj SysInternals PSExec.
Pokud chcete spustit PowerShell jako root v Linuxu , použijte příkaz sudo.
Ověření, že konfigurační balíček splňuje požadavky
Nejprve otestujte, že konfigurační balíček splňuje základní požadavky pomocí Get-GuestConfigurationPackageComplianceStatus
. Příkaz ověří následující požadavky na balíček.
- MOF je přítomný a platný, na správném místě
- Požadované moduly a závislosti jsou k dispozici se správnou verzí bez duplicit.
- Ověření, že je balíček podepsaný (volitelné)
- Otestujte, že
Test
aGet
vrátíte informace o stavu dodržování předpisů.
Parametry rutiny Get-GuestConfigurationPackageComplianceStatus
:
- Cesta: Cesta k souboru nebo identifikátor URI konfiguračního balíčku počítače.
- Parametr: Parametry zásad zadané jako hashovací tabulka
Při prvním spuštění tohoto příkazu se agent konfigurace počítače nainstaluje na testovací počítač v cestě C:\ProgramData\GuestConfig\bin
ve Windows a /var/lib/GuestConfig/bin
Linuxu. Tato cesta není přístupná pro uživatelský účet, takže příkaz vyžaduje zvýšení oprávnění.
Spuštěním následujícího příkazu otestujte balíček:
Ve Windows z relace PowerShellu se zvýšenými oprávněními 7.
# Get the current compliance results for the local machine
Get-GuestConfigurationPackageComplianceStatus -Path ./MyConfig.zip
V Linuxu spuštěním PowerShellu pomocí sudo.
# Get the current compliance results for the local machine
sudo pwsh -command 'Get-GuestConfigurationPackageComplianceStatus -Path ./MyConfig.zip'
Příkaz vypíše objekt obsahující stav dodržování předpisů a podrobnosti pro jednotlivé prostředky.
complianceStatus resources
---------------- ---------
True @{BuiltInAccount=localSystem; ConfigurationName=MyConfig; …
Otestování konfiguračního balíčku může použít konfiguraci
A konečně, pokud je AuditandSet
režim konfiguračního balíčku můžete otestovat, že Set
metoda může použít nastavení na místní počítač pomocí příkazu Start-GuestConfigurationPackageRemediation
.
Důležité
Tento příkaz se pokusí provést změny v místním prostředí, ve kterém se spouští.
Parametry rutiny Start-GuestConfigurationPackageRemediation
:
- Cesta: Úplná cesta konfiguračního balíčku počítače.
Ve Windows z relace PowerShellu se zvýšenými oprávněními 7.
# Test applying the configuration to local machine
Start-GuestConfigurationPackageRemediation -Path ./MyConfig.zip
V Linuxu spuštěním PowerShellu pomocí sudo.
# Test applying the configuration to local machine
sudo pwsh -command 'Start-GuestConfigurationPackageRemediation -Path ./MyConfig.zip'
Příkaz vrátí výstup pouze v případě, že dojde k chybám. K řešení potíží s podrobnostmi o událostech, ke kterým dochází během Set
, použijte -verbose
parametr.
Po spuštění příkazu Start-GuestConfigurationPackageRemediation
můžete příkaz Get-GuestConfigurationComplianceStatus
spustit znovu a ověřit, že počítač je teď ve správném stavu.