Makineleri istenen duruma yapılandırma
Not
Azure Otomasyonu State Configuration 30 Eylül 2027'de kullanımdan kaldırılacak, lütfen Bu tarihe kadar Azure Makine Yapılandırması. Daha fazla bilgi için blog gönderisi duyurusunu inceleyin. 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.
Dikkat
Linux için Azure Otomasyonu DSC, 30 Eylül 2023'te kullanımdan kaldırılmıştır. Daha fazla bilgi için duyuruya bakın.
Azure Otomasyonu Durum Yapılandırması, sunucularınız için yapılandırmalar belirtmenize ve bu sunucuların zaman içinde belirtilen durumda olduğundan emin olmanıza olanak tanır.
- Azure Otomasyonu DSC tarafından yönetilecek bir VM ekleme
- Azure Otomasyonu'a yapılandırma yükleme
- Bir yapılandırmayı düğüm yapılandırmasına derleme
- Yönetilen düğüme düğüm yapılandırması atama
- Yönetilen düğümün uyumluluk durumunu denetleme
Bu öğreticide, IIS'nin VM'ye yüklenmesini sağlayan basit bir DSC yapılandırması kullanırız.
Önkoşullar
- Azure Otomasyonu hesabı. Otomasyon hesabı ve gereksinimleri hakkında daha fazla bilgi edinmek için bkz . Otomasyon Hesabı kimlik doğrulamasına genel bakış.
- Windows Server 2008 R2 veya üzerini çalıştıran bir Azure Resource Manager VM (klasik değil). VM oluşturma yönergeleri için bkz . Azure portalında ilk Windows sanal makinenizi oluşturma.
- Azure PowerShell modülü sürüm 3.6 veya üzeri. Sürümü bulmak için
Get-Module -ListAvailable Az
komutunu çalıştırın. Yükseltmeniz gerekirse, bkz. Azure PowerShell modülünü yükleme. - İstenen Durum Yapılandırması (DSC) hakkında bilgi. DSC hakkında bilgi için bkz . Windows PowerShell İstenen Durum Yapılandırmasına Genel Bakış.
Kısmi yapılandırma desteği
Azure Otomasyonu Durum Yapılandırması kısmi yapılandırmaların kullanımını destekler. Bu senaryoda, DSC birden çok yapılandırmayı bağımsız olarak yönetecek şekilde yapılandırılır ve her yapılandırma Azure Otomasyonu alınır. Ancak, otomasyon hesabı başına düğüme yalnızca bir yapılandırma atanabilir. Bu, bir düğüm için iki yapılandırma kullanıyorsanız iki Otomasyon hesabına ihtiyacınız olduğu anlamına gelir.
Çekme hizmetinden kısmi yapılandırma kaydetme hakkında ayrıntılı bilgi için kısmi yapılandırma belgelerine bakın.
Ekiplerin kod olarak yapılandırma kullanarak sunucuları işbirliğiyle yönetmek için birlikte nasıl çalışabileceği hakkında daha fazla bilgi için bkz . CI/CD İşlem Hattında DSC'nin rolünü anlama.
Azure'da oturum açma
Connect-AzAccount cmdlet'iyle Azure aboneliğinizde oturum açın ve ekrandaki yönergeleri izleyin.
Connect-AzAccount
Yapılandırma oluşturma ve Azure Otomasyonu yükleme
Bir metin düzenleyicisinde aşağıdakileri yazın ve yerel olarak TestConfig.ps1 olarak kaydedin.
configuration TestConfig {
Node WebServer {
WindowsFeature IIS {
Ensure = 'Present'
Name = 'Web-Server'
IncludeAllSubFeature = $true
}
}
}
Not
Azure Otomasyonu yapılandırma adları en fazla 100 karakterle sınırlandırılmalıdır.
DSC Kaynakları sağlayan birden çok modülün içeri aktarılmasını gerektiren daha gelişmiş senaryolarda, her modülün yapılandırmanızda benzersiz Import-DscResource
bir satırı olduğundan emin olun.
Yapılandırmayı Otomasyon hesabınıza yüklemek için Import-AzAutomationDscConfiguration cmdlet'ini çağırın.
$importAzAutomationDscConfigurationSplat = @{
SourcePath = 'C:\DscConfigs\TestConfig.ps1'
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
Published = $ture
}
Import-AzAutomationDscConfiguration @importAzAutomationDscConfigurationSplat
Bir yapılandırmayı düğüm yapılandırmasına derleme
DSC yapılandırmasının bir düğüme atanabilmesi için önce düğüm yapılandırmasında derlenmiş olması gerekir. Bkz. DSC yapılandırmaları.
Yapılandırmayı Otomasyon hesabınızda adlı TestConfig.WebServer
bir düğüm yapılandırmasında derlemek TestConfig
için Start-AzAutomationDscCompilationJob cmdlet'ini çağırın.
$startAzAutomationDscCompilationJobSplat = @{
ConfigurationName = 'TestConfig'
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
}
Start-AzAutomationDscCompilationJob @startAzAutomationDscCompilationJobSplat
Durum Yapılandırması tarafından yönetilecek VM'yi kaydetme
Azure VM'lerini (hem Klasik hem de Resource Manager), şirket içi VM'leri, Linux makinelerini, AWS VM'lerini ve şirket içi fiziksel makineleri yönetmek için Azure Otomasyonu Durum Yapılandırmasını kullanabilirsiniz. Bu makalede, yalnızca Azure Resource Manager VM'lerini kaydetmeyi ele alacağız. Diğer makine türlerini kaydetme hakkında bilgi için bkz. Azure Otomasyonu Durum Yapılandırmasına göre yönetim için makineleri ekleme.
VM'nizi yönetilen düğüm olarak Azure Otomasyonu Durum Yapılandırması ile kaydetmek için Register-AzAutomationDscNode cmdlet'ini çağırın.
$registerAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
AzureVMName = 'DscVm'
}
Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat
Yapılandırma modu ayarlarını belirtme
Vm'yi yönetilen düğüm olarak kaydetmek ve yapılandırma özelliklerini belirtmek için Register-AzAutomationDscNode cmdlet'ini kullanın. Örneğin, özelliğin değeri ConfigurationMode
olarak belirterek ApplyOnly
makinenin durumunun yalnızca bir kez uygulanacağını belirtebilirsiniz. Durum Yapılandırması, ilk denetimden sonra yapılandırmayı uygulamayı denemez.
$registerAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
AzureVMName = 'DscVm'
ConfigurationMode = 'ApplyOnly'
}
Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat```
You can also specify how often DSC checks the configuration state by using the
`ConfigurationModeFrequencyMins` property. For more information about DSC configuration settings,
see [Configuring the Local Configuration Manager][05].
```powershell
# Run a DSC check every 60 minutes
$registerAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
AzureVMName = 'DscVm'
ConfigurationModeFrequencyMins = 60
}
Register-AzAutomationDscNode @registerAzAutomationDscNodeSplat```
## Assign a node configuration to a managed node
Now we can assign the compiled node configuration to the VM we want to configure.
```powershell
# Get the ID of the DSC node
$getAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
Name = 'DscVm'
}
$node = Get-AzAutomationDscNode @getAzAutomationDscNodeSplat
# Assign the node configuration to the DSC node
$setAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
NodeConfigurationName = 'TestConfig.WebServer'
NodeId = $node.Id
}
Set-AzAutomationDscNode @setAzAutomationDscNodeSplat
Bu, adlı TestConfig.WebServer
düğüm yapılandırmasını kayıtlı DSC düğümüne DscVm
atar.
Varsayılan olarak, DSC düğümü her 30 dakikada bir düğüm yapılandırmasıyla uyumlu olup olmadığını denetler. Uyumluluk denetimi aralığını değiştirme hakkında bilgi için bkz . Local Configuration Manager'ı yapılandırma.
Yönetilen düğümün uyumluluk durumunu denetleme
Get-AzAutomationDscNodeReport cmdlet'ini kullanarak yönetilen düğümün uyumluluk durumuyla ilgili raporlar alabilirsiniz.
# Get the ID of the DSC node
$getAzAutomationDscNodeSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
Name = 'DscVm'
}
$node = Get-AzAutomationDscNode @getAzAutomationDscNodeSplat
# Get an array of status reports for the DSC node
$getAzAutomationDscNodeReportSplat = @{
ResourceGroupName = 'MyResourceGroup'
AutomationAccountName = 'myAutomationAccount'
NodeId = $node.Id
}
$reports = Get-AzAutomationDscNodeReport @getAzAutomationDscNodeReportSplat
# Display the most recent report
$reports[0]
Sonraki adımlar
- Başlamak için bkz. Azure Otomasyonu Durum Yapılandırmasını kullanmaya başlama.
- Düğümleri etkinleştirmeyi öğrenmek için bkz. Azure Otomasyonu Durum Yapılandırmasını Etkinleştirme.
- DSC yapılandırmalarını hedef düğümlere atayabilmeniz için derleme hakkında bilgi edinmek için bkz. Azure Otomasyonu Durum Yapılandırmasında DSC yapılandırmalarını derleme.
- Sürekli dağıtım işlem hattında Azure Otomasyonu Durum Yapılandırmasını kullanma örneğini görmek için bkz. Chocolatey ile sürekli dağıtım ayarlama.
- Fiyatlandırma bilgileri için bkz. Durum Yapılandırması fiyatlandırmasını Azure Otomasyonu.
- PowerShell cmdlet başvurusu için bkz . Az.Automation.