Makine yapılandırma paketi yapıtlarını test etme
GuestConfiguration PowerShell modülü, Azure dışında bir yapılandırma paketini test etme işlemini otomatikleştirmeye yönelik araçlar içerir. Azure veya Arc bağlantılı bir ortamda teste geçmeden önce sorunları bulmak ve hızla yinelemek için bu araçları kullanın.
Test etmeye başlamadan önce yazma ortamınızı ayarlamanız ve özel makine yapılandırma paketi yapıtı oluşturmanız gerekir.
Önemli
Bir ortamın durumunu denetleen ve yapılandırmaları uygulayan özel paketler Genel Kullanılabilir (GA) destek durumundadır. Ancak aşağıdaki sınırlamalar geçerlidir:
Yapılandırmaları uygulayan makine yapılandırma paketlerini kullanmak için Azure VM konuk yapılandırma uzantısı sürüm 1.26.24 veya üzeri ya da Arc aracısı 1.10.0 veya üzeri gereklidir.
GuestConfiguration modülü yalnızca Ubuntu 18 ve sonraki sürümlerde kullanılabilir. Ancak modül tarafından üretilen paket ve ilkeler, Azure veya Arc'ta desteklenen herhangi bir Linux dağıtımı/sürümünde kullanılabilir.
macOS'ta test paketleri kullanılamaz.
Paketi iş istasyonunuzdan veya sürekli tümleştirme ve sürekli dağıtım (CI/CD) ortamınızdan test edebilirsiniz. GuestConfiguration modülü, Azure veya Arc özellikli makinelerde kullanılan geliştirme ortamınız için aynı aracıyı içerir. Aracı, Windows için PowerShell 7.1.3 ve Linux için 7.2.0-preview.7'nin tek başına bir örneğini içerir. Tek başına örnek, paketin test edildiği betik ortamının makine yapılandırmasını kullanarak yönettiğiniz makinelerle tutarlı olmasını sağlar.
Azure ve Arc özellikli makinelerde aracı hizmeti, Windows'ta hesap ve Linux'ta Kök olarak LocalSystem
çalışır. En iyi sonuçlar için bu makaledeki komutları ayrıcalıklı bir güvenlik bağlamında çalıştırın.
PowerShell'i Windows'da olduğu gibi LocalSystem
çalıştırmak için SysInternals aracını PSExec kullanın.
PowerShell'i Linux'ta Kök olarak çalıştırmak için sudo komutunu kullanın.
Yapılandırma paketinin gereksinimleri karşıladığını doğrulama
İlk olarak kullanarak yapılandırma paketinin temel gereksinimleri karşıladığını test edin Get-GuestConfigurationPackageComplianceStatus
. komutu aşağıdaki paket gereksinimlerini doğrular.
- MOF, doğru konumda mevcut ve geçerlidir
- Gerekli Modüller/bağımlılıklar doğru sürümde, yinelemeler olmadan mevcut
- Paketin imzalı olduğunu doğrulama (isteğe bağlı)
- Bunu test edin
Test
veGet
uyumluluk durumu hakkında bilgi döndürin
Cmdlet'in Get-GuestConfigurationPackageComplianceStatus
parametreleri:
- Yol: Makine yapılandırma paketinin dosya yolu veya URI'si.
- Parametre: İlke parametreleri karma tablo olarak sağlanır.
Bu komut ilk kez çalıştırıldığında, makine yapılandırma aracısı Windows ve /var/lib/GuestConfig/bin
Linux üzerindeki yolda C:\ProgramData\GuestConfig\bin
test makinesine yüklenir. Bu yol bir kullanıcı hesabı tarafından erişilemez, bu nedenle komutun yükseltilmesi gerekir.
Paketi test etmek için aşağıdaki komutu çalıştırın:
Windows'ta, yükseltilmiş bir PowerShell 7 oturumundan.
# Get the current compliance results for the local machine
Get-GuestConfigurationPackageComplianceStatus -Path ./MyConfig.zip
Linux'ta, PowerShell'i sudo kullanarak çalıştırarak.
# Get the current compliance results for the local machine
sudo pwsh -command 'Get-GuestConfigurationPackageComplianceStatus -Path ./MyConfig.zip'
komutu, kaynak başına uyumluluk durumunu ve ayrıntılarını içeren bir nesne çıkışı oluşturur.
complianceStatus resources
---------------- ---------
True @{BuiltInAccount=localSystem; ConfigurationName=MyConfig; …
Yapılandırma paketinin yapılandırma uygulayabileceğini test edin
Son olarak, yapılandırma paketi modu ise AuditandSet
yönteminin Set
komutunu Start-GuestConfigurationPackageRemediation
kullanarak ayarları yerel bir makineye uygulayabildiğini test edebilirsiniz.
Önemli
Bu komut, çalıştırıldığı yerel ortamda değişiklik yapmayı dener.
Cmdlet'in Start-GuestConfigurationPackageRemediation
parametreleri:
- Yol: Makine yapılandırma paketinin tam yolu.
Windows'ta, yükseltilmiş bir PowerShell 7 oturumundan.
# Test applying the configuration to local machine
Start-GuestConfigurationPackageRemediation -Path ./MyConfig.zip
Linux'ta, PowerShell'i sudo kullanarak çalıştırarak.
# Test applying the configuration to local machine
sudo pwsh -command 'Start-GuestConfigurationPackageRemediation -Path ./MyConfig.zip'
Komut yalnızca hatalar oluştuğunda çıktı döndürür. sırasında Set
gerçekleşen olaylarla ilgili ayrıntıları gidermek için parametresini -verbose
kullanın.
komutunu Start-GuestConfigurationPackageRemediation
çalıştırdıktan sonra, makinenin artık doğru durumda olduğunu onaylamak için komutunu Get-GuestConfigurationComplianceStatus
yeniden çalıştırabilirsiniz.