Azure Desired State Configuration uzantısı işleyicisine giriş
Not
DSC Uzantısını etkinleştirmeden önce, Azure Machine Configuration adlı Azure İlkesi özelliği tarafından yönetilen daha yeni bir DSC sürümünün genel kullanıma sunulduğunun bilinmesini isteriz. Azure Machine Configuration hizmeti DSC Uzantısı, Azure Otomasyonu Durum Yapılandırması özelliklerini ve müşteri geri bildirimlerinden en sık istenen özellikleri birleştirir. Azure Makine Yapılandırması, Arc özellikli sunucular aracılığıyla karma makine desteği de içerir.
Azure sanal makineleri (VM) için Azure VM Uzantısı ve ilişkili uzantılar, Microsoft Azure altyapı hizmetlerinin bir parçasıdır. Azure VM uzantıları, VM işlevselliğini genişleten ve çeşitli VM yönetim işlemlerini basitleştiren yazılım bileşenleridir.
Windows PowerShell için Azure İstenen Durum Yapılandırması (DSC) uzantısının birincil kullanımı vm'yi Azure Otomasyonu Durum Yapılandırması (DSC) hizmetine önyüklemektir. Bu hizmet, VM yapılandırmasının sürekli yönetimini ve Azure İzleyici gibi diğer işletim araçlarıyla tümleştirmeyi içeren avantajlar sağlar. Vm'lerinizi hizmete kaydetmek ve Azure abonelikleri arasında çalışan esnek bir çözüm elde etmek için uzantıyı kullanabilirsiniz.
DSC uzantısını Otomasyon DSC hizmetinden bağımsız olarak çalıştırabilirsiniz, ancak bu yöntem yalnızca bir yapılandırmayı VM'ye iletir. VM'de yerel olarak dışında devam eden raporlama kullanılamaz. DSC uzantısını etkinleştirmeden önce kullanılabilir DSC sürümlerini gözden geçirin ve yapılandırma gereksinimlerinizi destekleyen sürümü seçin.
Bu makalede, Otomasyon ekleme için DSC uzantısının nasıl kullanılacağı veya Azure SDK ile VM'lere yapılandırma atamak için bir araç olarak nasıl kullanılacağı açıklanmaktadır.
Kullanılabilir DSC sürümleri
İstenen Durum Yapılandırması'nın çeşitli sürümleri uygulama için kullanılabilir. DSC uzantısını etkinleştirmeden önce yapılandırma ve iş hedeflerinizi en iyi destekleyen DSC sürümünü seçin.
Sürüm | Kullanılabilirlik | Açıklama |
---|---|---|
2.0 | Genel kullanılabilirlik | İstenen Durum Yapılandırması 2.0 , Azure Otomatik Yönetim Makine Yapılandırması özelliğiyle kullanılmak üzere desteklenir. Makine yapılandırma özelliği, DSC uzantı işleyicisinin özelliklerini, Durum Yapılandırması Azure Otomasyonu ve müşteri geri bildirimlerinden en sık istenen özellikleri birleştirir. Makine yapılandırması, Arc özellikli sunucular aracılığıyla karma makine desteği de içerir. |
1.1 | Genel kullanılabilirlik | Uygulamanız Azure Otomatik Yönetim makine yapılandırma özelliğini kullanmıyorsa İstenen Durum Yapılandırması 1.1'i seçmeniz gerekir. Daha fazla bilgi için bkz . PSDesiredStateConfiguration v1.1. |
3.0 | Genel önizleme | İstenen Durum Yapılandırması 3.0 genel beta sürümünde kullanılabilir. Bu sürüm yalnızca Azure makine yapılandırmasıyla veya İstenen Durum Yapılandırması 1.1'den geçişi test etmek için üretim dışı ortamlarda kullanılmalıdır. |
Önkoşullar
Yerel makine: Azure DSC uzantısıyla etkileşime geçmek için yerel makinede Azure portalını veya Azure PowerShell SDK'sını kullanmanız gerekir.
Konuk aracısı: DSC yapılandırması tarafından hazırlanan Azure VM,Windows Management Framework (WMF) 4.0 veya sonraki bir sürümü destekleyen bir işletim sistemi kullanmalıdır. Desteklenen işletim sistemi sürümlerinin tam listesi için bkz . Azure DSC uzantısı sürüm geçmişi.
Terimler ve kavramlar
Bu makalede, aşağıdaki kavramlar hakkında bilgi sahibi olduğunuz varsayılır:
Yapılandırma , bir DSC yapılandırma belgesine başvurur.
Node , DSC yapılandırması için bir hedef tanımlar. Bu makalede node her zaman bir Azure VM'sine başvurur.
Yapılandırma verileri, bir yapılandırma için ortam verileri içeren bir PowerShell DSC biçim dosyasında (.psd1) depolanır.
Mimari
Azure DSC uzantısı, Azure VM'lerinde çalışan DSC yapılandırmalarını teslim etmek, uygulamak ve raporlamak için Azure VM Uzantısı çerçevesini kullanır. DSC uzantısı bir yapılandırma belgesini ve bir dizi parametreyi kabul eder. Hiçbir dosya sağlanmazsa, uzantıyla birlikte varsayılan bir yapılandırma betiği eklenir. Varsayılan yapılandırma betiği yalnızca Yerel Configuration Manager'da meta verileri ayarlamak için kullanılır.
Uzantı ilk kez çağrıldığında, aşağıdaki mantığı kullanarak bir WMF sürümü yükler:
Azure VM işletim sistemi Windows Server 2016 ise hiçbir işlem yapılmaz. Windows Server 2016'da PowerShell'in en son sürümü zaten yüklüdür.
wmfVersion
Özellik belirtilirse, belirtilen sürüm VM'deki işletim sistemiyle uyumsuz olmadığı sürece WMF'nin belirtilen sürümü yüklenir.Özellik
wmfVersion
belirtilmezse WMF'nin en son geçerli sürümü yüklenir.
WMF yükleme işlemi yeniden başlatma gerektirir. Yeniden başlattıktan sonra uzantı, sağlanırsa özelliğinde modulesUrl
belirtilen .zip dosyasını indirir. Bu konum Azure Blob Depolama içindeyse, dosyaya erişmek için özelliğinde sasToken
bir SAS belirteci belirtebilirsiniz. .zip indirilip paketten çıkarıldıktan sonra, içinde configurationFunction
tanımlanan yapılandırma işlevi bir Yönetilen Nesne Biçimi (MOF) dosyası (.mof) oluşturmak için çalışır. Uzantı daha sonra oluşturulan .mof dosyasını kullanarak komutunu çalıştırır Start-DscConfiguration -Force
. Uzantı çıkışı yakalar ve Azure durum kanalına yazar.
Varsayılan yapılandırma betiği
Azure DSC uzantısı, vm'yi Azure Otomasyonu Durum Yapılandırma hizmetine eklerken kullanılması amaçlanan bir varsayılan yapılandırma betiği içerir. Betik parametreleri, Local Configuration Manager'ın yapılandırılabilir özellikleriyle hizalanır. Betik parametreleri için bkz. Azure Resource Manager (ARM) şablonlarıyla İstenen Durum Yapılandırması uzantısında varsayılan yapılandırma betiği. Betiğin tamamı için GitHub'da Azure Hızlı Başlangıç Şablonu'na bakın.
Azure Otomasyonu Durum Yapılandırması kaydı
Bir düğümü Azure Otomasyonu Durum Yapılandırma hizmetine kaydetmek için Azure DSC uzantısını kullandığınızda aşağıdaki değerleri sağlarsınız:
RegistrationUrl
: Azure Otomasyonu hesabının https adresi.RegistrationKey
: Düğümleri hizmete kaydetmek için kullanılan paylaşılan gizli dizi.NodeConfigurationName
: Hizmetten çekerek sunucu rolünü yapılandıracak düğüm yapılandırmasının (MOF) adı. Değer, Yapılandırma'nın adı değil düğüm yapılandırmasının adıdır.
Bu değerleri Azure portalından toplayabilir veya Windows PowerShell'de aşağıdaki komutları çalıştırabilirsiniz:
(Get-AzAutomationRegistrationInfo -ResourceGroupName <resourcegroupname> -AutomationAccountName <accountname>).Endpoint
(Get-AzAutomationRegistrationInfo -ResourceGroupName <resourcegroupname> -AutomationAccountName <accountname>).PrimaryKey
Düğüm yapılandırması adı
parametresi için NodeConfigurationName
Yapılandırma'yı değil düğüm yapılandırmasının adını sağladığından emin olun.
Yapılandırma, düğüm yapılandırmasını (MOF dosyası) derlemek için kullanılan bir betikte tanımlanır. Düğüm yapılandırmasının adı her zaman Yapılandırma'nın ve ardından bir noktanın .
ve localhost
belirli bir bilgisayar adının adıdır.
Uyarı
Düğüm yapılandırmasının Azure Otomasyonu Durum Yapılandırması'nda mevcut olduğundan emin olun. Bu değer yoksa uzantı dağıtımı bir hata döndürür.
ARM şablonu dağıtımı
DSC uzantısını dağıtmaya yönelik en yaygın yaklaşım, Azure Resource Manager şablonlarını kullanmaktır. DAHA fazla bilgi edinmek ve ARM şablonlarına DSC uzantısını dahil etme örnekleri için bkz . ARM şablonlarıyla İstenen Durum Yapılandırması uzantısı.
PowerShell cmdlet dağıtımı
DSC uzantısını yönetmeye yönelik PowerShell cmdlet'leri etkileşimli sorun giderme ve bilgi toplama senaryoları için idealdir. DSC uzantısı dağıtımlarını paketlemek, yayımlamak ve izlemek için cmdlet'leri kullanabilirsiniz. DSC uzantısı cmdlet'leri şu anda varsayılan yapılandırma betiğiyle çalışacak şekilde güncelleştirilmiyor.
Kullanılabilir PowerShell cmdlet'lerinden bazıları şunlardır:
Publish-AzVMDscConfiguration cmdlet'i bir yapılandırma dosyasını alır, bağımlı DSC kaynakları için tarar ve sonra bir .zip dosyası oluşturur. .zip dosyası, yapılandırmayı uygulamak için gereken yapılandırmayı ve DSC kaynaklarını içerir. Cmdlet, parametresini kullanarak
-OutputArchivePath
paketi yerel olarak da oluşturabilir. Aksi takdirde, cmdlet .zip dosyasını Blob Depolama'da yayımlar ve ardından bir SAS belirteci ile güvenliğini sağlar.Cmdlet tarafından oluşturulan PowerShell yapılandırma betiği (.ps1), arşiv klasörünün kökündeki .zip dosyasındadır. Modül klasörü, kaynaklardaki arşiv klasörüne yerleştirilir.
Set-AzVMDscExtension cmdlet'i, PowerShell DSC uzantısının gerektirdiği ayarları bir VM yapılandırma nesnesine ekler.
Get-AzVMDscExtension cmdlet'i belirli bir VM'nin DSC uzantısı durumunu alır.
Get-AzVMDscExtensionStatus cmdlet'i, DSC uzantısı işleyicisi tarafından yürütülen DSC yapılandırmasının durumunu alır. Bu eylem tek bir VM veya vm grubu üzerinde gerçekleştirilebilir.
Remove-AzVMDscExtension cmdlet'i, uzantı işleyicisini belirli bir VM'den kaldırır. Bu cmdlet'in yapılandırmayı kaldırmadığını, WMF'yi kaldırmadığını veya VM'de uygulanan ayarları değiştirmediğini unutmayın. Cmdlet yalnızca uzantı işleyicisini kaldırır.
Dikkat edilmesi gereken önemli hususlar
Azure Resource Manager cmdlet'leriyle çalışırken dikkat edilmesi gereken birkaç nokta vardır.
Azure Resource Manager cmdlet'leri zaman uyumlu.
, ,
Version
VMName
ArchiveStorageAccountName
, veLocation
gibiResourceGroupName
çeşitli parametreler gereklidir.ArchiveResourceGroupName
isteğe bağlı bir parametredir. Depolama hesabınız VM'nin oluşturulduğu kaynak grubundan farklı bir kaynak grubuna ait olduğunda bu parametreyi belirtin.AutoUpdate
Kullanılabilir olduğunda uzantı işleyicisini otomatik olarak en son sürüme güncelleştirmek için anahtarını kullanın. Bu parametre, WMF'nin yeni bir sürümü yayımlandığında VM'de yeniden başlatmalara neden olabilir.
PowerShell cmdlet'leri ile yapılandırma
Azure DSC uzantısı, dağıtım sırasında Azure VM'lerini doğrudan yapılandırmak için DSC yapılandırma belgelerini kullanabilir. Bu adım düğümü Otomasyon'a kaydetmez. Düğümün merkezi olarak yönetilmiyor olduğunu unutmayın.
Aşağıdaki kodda basit bir örnek yapılandırma gösterilmektedir. Bu örnekle çalışmak için bu yapılandırmayı iisInstall.ps1 betik dosyası olarak yerel olarak kaydedin.
configuration IISInstall
{
node "localhost"
{
WindowsFeature IIS
{
Ensure = "Present"
Name = "Web-Server"
}
}
}
Aşağıdaki PowerShell komutları iisInstall.ps1 betiğini belirtilen VM'ye yerleştirir. Komutlar ayrıca yapılandırmayı yürütür ve durumu yeniden bildirir.
$resourceGroup = 'dscVmDemo'
$vmName = 'myVM'
$storageName = 'demostorage'
#Publish the configuration script to user storage
Publish-AzVMDscConfiguration -ConfigurationPath .\iisInstall.ps1 -ResourceGroupName $resourceGroup -StorageAccountName $storageName -force
#Set the VM to run the DSC configuration
Set-AzVMDscExtension -Version '2.76' -ResourceGroupName $resourceGroup -VMName $vmName -ArchiveStorageAccountName $storageName -ArchiveBlobName 'iisInstall.ps1.zip' -AutoUpdate -ConfigurationName 'IISInstall'
Azure CLI dağıtımı
Azure CLI, DSC uzantısını mevcut bir VM'ye dağıtmak için kullanılabilir. Aşağıdaki örneklerde, Windows'da bir VM'nin nasıl dağıtılacağı gösterilmektedir.
Windows çalıştıran bir VM için aşağıdaki komutu kullanın:
az vm extension set \
--resource-group myResourceGroup \
--vm-name myVM \
--name DSC \
--publisher Microsoft.Powershell \
--version 2.77 --protected-settings '{}' \
--settings '{}'
Azure portalı dağıtımı
Azure portalında DSC uzantısını ayarlamak için şu adımları izleyin:
Vm'ye gidin.
Ayarlar'ın altında Uzantılar + Uygulamalar'ı seçin.
Uzantılar'ın altında + Ekle'yi seçin.
PowerShell İstenen Durum Yapılandırması'nın ardından İleri'yi seçin.
DSC uzantısı için aşağıdaki parametreleri yapılandırın.
Not
Varsayılan yapılandırma betiğiyle çalışıyorsanız, aşağıdaki parametrelerin çoğunun betik yerine doğrudan Azure portalında tanımlanması gerektiğini unutmayın.
Yapılandırma Modülleri veya Betik: (Gerekli) VM'niz için Yapılandırma modüllerini veya betik dosyasını sağlayın.
Yapılandırma modülleri ve betikleri, yapılandırma betiği olan bir .ps1 dosyası veya kökte .ps1 yapılandırma betiği bulunan bir .zip dosyası gerektirir. .zip dosyası kullanıyorsanız, tüm bağımlı kaynakların .zip dosyasındaki modül klasörlerine eklenmesi gerekir. Azure PowerShell SDK'sında bulunan Publish-AzureVMDscConfiguration -OutputArchivePath cmdlet'ini kullanarak .zip dosyasını oluşturabilirsiniz. .zip dosyası kullanıcı Blob Depolamanıza yüklenir ve bir SAS belirteci ile güvenli hale getirilir.
Yapılandırmanın Modüle Uygun Adı: (Gerekli) Tek bir .ps1 betik dosyasına birden çok yapılandırma işlevi eklemek için bu ayarı belirtin. Bu ayar için yapılandırma .ps1 betik dosyasının adını ve ardından eğik çizgi
\
ve ardından yapılandırma işlevinin adını girin. Örneğin, .ps1 betik dosyasında configuration.ps1 adı varsa ve yapılandırma adı IisInstall ise, ayarın değeriniconfiguration.ps1\IisInstall
girin.Yapılandırma Bağımsız Değişkenleri: Yapılandırma işlevi bağımsız değişkenler alıyorsa, biçimini
argumentName1=value1,argumentName2=value2
kullanarak değerleri girin. Bu biçimin PowerShell cmdlet'lerinde veya ARM şablonlarında yapılandırma bağımsız değişkenlerini belirtmek için kullanılan biçimden farklı olduğuna dikkat edin.Not
Yapılandırma bağımsız değişkenleri varsayılan bir yapılandırma betiğinde tanımlanabilir.
Yapılandırma Verileri PSD1 Dosyası: Yapılandırmanız .psd1 biçiminde bir yapılandırma veri dosyası gerektiriyorsa, veri dosyasını seçmek ve kullanıcı Blob Depolama alanınıza yüklemek için bu ayarı kullanın. Yapılandırma veri dosyasının güvenliği Blob Depolama'da bir SAS belirteci ile sağlanır.
WMF Sürümü: VM'nize yüklenecek Windows Yönetim Çerçevesi sürümünü belirtin. Varsayılan değer olan en son'u seçerseniz sistem WMF'nin en son sürümünü yükler. Diğer olası değerler 4.0, 5.0 ve 5.1'i içerir. Olası değerler güncelleştirmelere tabidir.
Veri Toplama: DSC uzantısının VM'niz hakkında telemetri toplamasını istiyorsanız bu ayarı etkinleştirin. Daha fazla bilgi için bkz . Azure DSC uzantısı veri toplama.
Sürüm: (Gerekli) Yüklenecek DSC uzantısının sürümünü belirtin. Sürümler hakkında bilgi için bkz . Azure DSC uzantısı sürüm geçmişi.
Otomatik Yükseltme İkincil Sürüm: Bu ayar, cmdlet'lerdeki anahtarla eşler
AutoUpdate
. Yükleme sırasında DSC uzantısının otomatik olarak en son sürüme güncelleştirilebilmesini sağlamak için bu ayarı yapılandırın. Evet , DSC uzantı işleyicisine en son kullanılabilir sürümü kullanmasını sağlar. Hayır (varsayılan), Sürüm ayarında belirttiğiniz sürümün yüklenmesini zorlar.
Parametreleri yapılandırdıktan sonra Gözden Geçir + Oluştur'u ve ardından Oluştur'u seçin.
DSC uzantı günlükleri
Azure DSC uzantısının günlüklerini altında VM'de C:\WindowsAzure\Logs\Plugins\Microsoft.Powershell.DSC\<version number>
görüntüleyebilirsiniz.
Sonraki adımlar
- PowerShell DSC hakkında daha fazla bilgi için PowerShell belge merkezine gidin.
- Azure DSC uzantısı için ARM şablonunu inceleyin.
- PowerShell DSC kullanarak yönetebileceğiniz daha fazla işlevsellik ve daha fazla DSC kaynağı için PowerShell galerisine göz atın.
- Hassas parametreleri yapılandırmalara geçirme hakkında ayrıntılı bilgi için bkz . Azure DSC uzantısı işleyicisi ile kimlik bilgilerini güvenli bir şekilde yönetme.