Udostępnij za pośrednictwem


Jak utworzyć przypisanie konfiguracji maszyny przy użyciu Bicep

Do wdrażania przypisań konfiguracji maszyny można użyć usługi Azure Bicep . W tym artykule przedstawiono przykłady wdrażania konfiguracji niestandardowych i wbudowanych.

W każdej z poniższych sekcji przykład zawiera właściwość typu , w której nazwa zaczyna się od Microsoft.Compute/virtualMachines. Dostawca Microsoft.GuestConfiguration zasobów konfiguracji gościa to zasób rozszerzenia, który musi odwoływać się do typu nadrzędnego.

Aby zmodyfikować przykład dla innych typów zasobów, takich jak serwery z obsługą usługi Arc, zmień typ nadrzędny na nazwę dostawcy zasobów. W przypadku serwerów z obsługą usługi Arc dostawca zasobów to Microsoft.HybridCompute/machines.

Zastąp następujące pola "<>" wartościami specyficznymi dla danego środowiska:

  • <vm_name>: określ nazwę zasobu maszyny do zastosowania konfiguracji.
  • <configuration_name>: określ nazwę konfiguracji, która ma być stosowana.
  • <vm_location>: Określ region świadczenia usługi Azure, w którym ma zostać utworzone przypisanie konfiguracji maszyny.
  • <Url_to_Package.zip>: określ link HTTPS do pliku dla niestandardowego .zip pakietu zawartości.
  • <SHA256_hash_of_package.zip>: określ skrót SHA256 pliku dla niestandardowego .zip pakietu zawartości.

Przypisywanie konfiguracji niestandardowej

Poniższy przykład przypisuje konfigurację niestandardową.

resource myVM 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
  name: '<vm_name>'
}

resource myConfiguration 'Microsoft.GuestConfiguration/guestConfigurationAssignments@2020-06-25' = {
  name: '<configuration_name>'
  scope: myVM
  location: resourceGroup().location
  properties: {
    guestConfiguration: {
      name: '<configuration_name>'
      contentUri: '<Url_to_Package.zip>'
      contentHash: '<SHA256_hash_of_package.zip>'
      version: '1.*'
      assignmentType: 'ApplyAndMonitor'
    }
  }
}

Przypisywanie wbudowanej konfiguracji

Poniższy przykład przypisuje wbudowaną konfigurację AzureWindowBaseline .

resource myWindowsVM 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
  name: '<vm_name>'
}

resource AzureWindowsBaseline 'Microsoft.GuestConfiguration/guestConfigurationAssignments@2020-06-25' = {
  name: 'AzureWindowsBaseline'
  scope: myWindowsVM
  location: resourceGroup().location
  properties: {
    guestConfiguration: {
      name: 'AzureWindowsBaseline'
      version: '1.*'
      assignmentType: 'ApplyAndMonitor'
      configurationParameter: [
        {
          name: 'Minimum Password Length;ExpectedValue'
          value: '16'
        }
        {
          name: 'Minimum Password Length;RemediateValue'
          value: '16'
        }
        {
          name: 'Maximum Password Age;ExpectedValue'
          value: '75'
        }
        {
          name: 'Maximum Password Age;RemediateValue'
          value: '75'
        }
      ]
    }
  }
}