Azure Machine Configuration uzantısı
Makine Yapılandırması uzantısı, sanal makineler (VM' ler) içinde denetim ve yapılandırma işlemleri gerçekleştirir.
Linux ve Windows için Azure işlem güvenliği temel tanımları gibi VM'lerin içindeki ilkeleri denetlemek için Makine Yapılandırması uzantısının yüklenmesi gerekir.
Önkoşullar
VM'nizin Makine Yapılandırma hizmetinde kimlik doğrulaması yapmasını sağlamak için, VM'nizin sistem tarafından atanan bir yönetilen kimliği olmalıdır. Özelliğini ayarlayarak VM'nizin kimlik gereksinimini "type": "SystemAssigned"
karşılayabilirsiniz:
"identity": {
"type": "SystemAssigned"
}
İşletim sistemleri
Makine Yapılandırması uzantısı için işletim sistemi desteği, uçtan uca çözüm için belgelenmiş işletim sistemi desteğiyle aynıdır.
İnternet bağlantısı
Makine Yapılandırması uzantısı tarafından yüklenen aracı konuk yapılandırma atamaları tarafından listelenen içerik paketlerine ulaşabilmelidir ve Durumu Makine Yapılandırma hizmetine bildirmelidir. VM, 443 numaralı TCP bağlantı noktası üzerinden giden HTTPS'yi veya özel ağ üzerinden sağlanan bir bağlantıyı kullanarak bağlanabilir.
Özel ağ hakkında daha fazla bilgi edinmek için aşağıdaki makalelere bakın:
- Azure Mchine Yapılandırması, Azure Özel Bağlantı üzerinden iletişim kurma
- Azure Depolama için özel uç noktaları kullanma
Uzantıyı yükleme
Makine Yapılandırması uzantısını doğrudan Azure CLI veya PowerShell'den yükleyebilir ve dağıtabilirsiniz. Dağıtım şablonları Azure Resource Manager (ARM), Bicep ve Terraform için de kullanılabilir. Dağıtım şablonu ayrıntıları için bkz . Microsoft.GuestConfiguration guestConfigurationAssignments.
Not
Aşağıdaki dağıtım örneklerinde, parametre değerlerini yapılandırmanız için belirli değerlerle değiştirin <placeholder>
.
Dağıtma konuları
Makine Yapılandırması uzantısını yüklemeden ve dağıtmadan önce aşağıdaki noktaları gözden geçirin.
Örnek adı. Makine Yapılandırması uzantısını yüklediğinizde, uzantının örnek adı veya
AzurePolicyforLinux
olarakAzurePolicyforWindows
ayarlanmalıdır. Daha önce açıklanan güvenlik temeli tanım ilkeleri bu belirli dizeleri gerektirir.Sürümler. Varsayılan olarak, tüm dağıtımlar en son sürüme güncelleştirilir. Özelliğin
autoUpgradeMinorVersion
değeri, aksi belirtilmedikçe varsayılan olaraktrue
belirtilir. Bu özellik, Makine Yapılandırması uzantısının yeni sürümleri yayımlandığında kodunuzu güncelleştirmeyle ilgili endişeleri hafifletmeye yardımcı olur.Otomatik yükseltme. Makine Yapılandırması uzantısı özelliğini destekler
enableAutomaticUpgrade
. Bu özellik olaraktrue
ayarlandığında, gelecekteki sürümler kullanıma sunulduklarında Azure uzantının en son sürümüne otomatik olarak yükseltilir. Daha fazla bilgi için bkz. Azure'da VM'ler ve Sanal Makine Ölçek Kümeleri için Otomatik Uzantı Yükseltme.Azure İlkesi. Makine Yapılandırması uzantısının kimlik gereksinimleri de dahil olmak üzere en son sürümünü uygun ölçekte dağıtmak için Uyumsuz kaynakları tanımlamak için İlke ataması oluşturma'daki adımları izleyin. Azure İlkesi ile aşağıdaki atamayı oluşturun:
Diğer özellikler. Makine Yapılandırması uzantısına herhangi bir ayar veya protected-settings özelliği eklemeniz gerekmez. Aracı, Azure REST API Konuk Yapılandırması atama kaynaklarından bu bilgi sınıfını alır. Örneğin,
ConfigurationUri
,Mode
veConfigurationSetting
özellikleri vm uzantısı yerine yapılandırma başına yönetilen özelliklerdir.
Azure CLI
Linux uzantısını dağıtmak için:
az vm extension set --publisher Microsoft.GuestConfiguration --name ConfigurationForLinux --extension-instance-name AzurePolicyforLinux --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true
Windows uzantısını dağıtmak için:
az vm extension set --publisher Microsoft.GuestConfiguration --name ConfigurationforWindows --extension-instance-name AzurePolicyforWindows --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true
PowerShell
Linux uzantısını dağıtmak için:
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationForLinux' -Name 'AzurePolicyforLinux' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
Windows uzantısını dağıtmak için:
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationforWindows' -Name 'AzurePolicyforWindows' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
ARM şablonu
Linux uzantısını dağıtmak için:
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('VMName'), '/AzurePolicyforLinux')]",
"apiVersion": "2020-12-01",
"location": "[parameters('location')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('VMName'))]"
],
"properties": {
"publisher": "Microsoft.GuestConfiguration",
"type": "ConfigurationForLinux",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"settings": {},
"protectedSettings": {}
}
}
Windows uzantısını dağıtmak için:
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('VMName'), '/AzurePolicyforWindows')]",
"apiVersion": "2020-12-01",
"location": "[parameters('location')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('VMName'))]"
],
"properties": {
"publisher": "Microsoft.GuestConfiguration",
"type": "ConfigurationforWindows",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"settings": {},
"protectedSettings": {}
}
}
Bicep şablonu
Linux uzantısını dağıtmak için:
resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
name: 'VMName'
}
resource windowsVMGuestConfigExtension 'Microsoft.Compute/virtualMachines/extensions@2020-12-01' = {
parent: virtualMachine
name: 'AzurePolicyforLinux'
location: resourceGroup().location
properties: {
publisher: 'Microsoft.GuestConfiguration'
type: 'ConfigurationForLinux'
typeHandlerVersion: '1.0'
autoUpgradeMinorVersion: true
enableAutomaticUpgrade: true
settings: {}
protectedSettings: {}
}
}
Windows uzantısını dağıtmak için:
resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
name: 'VMName'
}
resource windowsVMGuestConfigExtension 'Microsoft.Compute/virtualMachines/extensions@2020-12-01' = {
parent: virtualMachine
name: 'AzurePolicyforWindows'
location: resourceGroup().location
properties: {
publisher: 'Microsoft.GuestConfiguration'
type: 'ConfigurationforWindows'
typeHandlerVersion: '1.0'
autoUpgradeMinorVersion: true
enableAutomaticUpgrade: true
settings: {}
protectedSettings: {}
}
}
Terraform şablonu
Linux uzantısını dağıtmak için:
resource "azurerm_virtual_machine_extension" "gc" {
name = "AzurePolicyforLinux"
virtual_machine_id = "<myVMID>"
publisher = "Microsoft.GuestConfiguration"
type = "ConfigurationForLinux"
type_handler_version = "1.0"
auto_upgrade_minor_version = "true"
}
Windows uzantısını dağıtmak için:
resource "azurerm_virtual_machine_extension" "gc" {
name = "AzurePolicyforWindows"
virtual_machine_id = "<myVMID>"
publisher = "Microsoft.GuestConfiguration"
type = "ConfigurationforWindows"
type_handler_version = "1.0"
auto_upgrade_minor_version = "true"
}
Hata iletileri
Aşağıdaki tabloda Konuk Yapılandırması uzantısını etkinleştirmeyle ilgili olası hata iletileri listelenmektedir.
Hata kodu | Açıklama |
---|---|
NoComplianceReport | VM uyumluluk verilerini bildirmedi. |
GCExtensionMissing | Makine Yapılandırması (konuk yapılandırması) uzantısı eksik. |
ManagedIdentityMissing | Yönetilen kimlik eksik. |
UserIdentityMissing | Kullanıcı tarafından atanan kimlik eksik. |
GCExtensionManagedIdentityMissing | Makine Yapılandırması (konuk yapılandırması) uzantısı ve yönetilen kimlik eksik. |
GCExtensionUserIdentityMissing | Makine Yapılandırması (konuk yapılandırması) uzantısı ve kullanıcı tarafından atanan kimlik eksik. |
GCExtensionIdentityMissing | Makine Yapılandırması (konuk yapılandırması) uzantısı, yönetilen kimlik ve kullanıcı tarafından atanan kimlik eksik. |
Sonraki adımlar
- Makine Yapılandırması uzantısı hakkında daha fazla bilgi için bkz . Azure Machine Configuration'ı anlama.
- Linux Aracısı ve uzantılarının nasıl çalıştığı hakkında daha fazla bilgi için bkz . Linux için sanal makine uzantıları ve özellikleri.
- Windows Konuk Aracısı ve uzantılarının nasıl çalıştığı hakkında daha fazla bilgi için bkz . Windows için sanal makine uzantıları ve özellikleri.
- Windows Konuk Aracısı'nı yüklemek için bkz . Azure Sanal Makine Aracısı'na genel bakış.
- Linux Aracısı'nı yüklemek için bkz . Azure Linux Aracısı'nı anlama ve kullanma.