Aracılığıyla paylaş


Hızlı Başlangıç: Bicep ile dağıtım yığını oluşturma ve dağıtma

Bu hızlı başlangıçta dağıtım yığınının nasıl oluşturulacağı açıklanır.

Önkoşullar

Bicep dosyası oluşturma

Depolama hesabı ve sanal ağ oluşturmak için bir Bicep dosyası oluşturun.

param resourceGroupLocation string = resourceGroup().location
param storageAccountName string = 'store${uniqueString(resourceGroup().id)}'
param vnetName string = 'vnet${uniqueString(resourceGroup().id)}'

resource storageAccount 'Microsoft.Storage/storageAccounts@2023-04-01' = {
  name: storageAccountName
  location: resourceGroupLocation
  kind: 'StorageV2'
  sku: {
    name: 'Standard_LRS'
  }
}

resource virtualNetwork 'Microsoft.Network/virtualNetworks@2023-11-01' = {
  name: vnetName
  location: resourceGroupLocation
  properties: {
    addressSpace: {
      addressPrefixes: [
        '10.0.0.0/16'
      ]
    }
    subnets: [
      {
        name: 'Subnet-1'
        properties: {
          addressPrefix: '10.0.0.0/24'
        }
      }
      {
        name: 'Subnet-2'
        properties: {
          addressPrefix: '10.0.1.0/24'
        }
      }
    ]
  }
}

Bicep dosyasını main.bicep olarak kaydedin.

Dağıtım yığını oluşturma

Bu hızlı başlangıçta, dağıtım yığınını kaynak grubu kapsamında oluşturacaksınız. Dağıtım yığınını abonelik kapsamında veya yönetim grubu kapsamında da oluşturabilirsiniz. Daha fazla bilgi için bkz . Dağıtım yığınları oluşturma.

az group create \
  --name 'demoRg' \
  --location 'centralus'

az stack group create \
  --name demoStack \
  --resource-group 'demoRg' \
  --template-file './main.bicep' \
  --action-on-unmanage 'detachAll' \
  --deny-settings-mode 'none'

ve hakkında action-on-unmanage daha fazla bilgi için bkz. Dağıtım yığınları.deny-setting-mode

Dağıtımı doğrulama

Dağıtılan dağıtım yığınlarını kaynak grubu düzeyinde listelemek için:

az stack group show \
  --resource-group 'demoRg' \
  --name 'demoStack'

Çıktıda iki yönetilen kaynak gösterilir: bir depolama hesabı ve bir sanal ağ:

{
  "actionOnUnmanage": {
    "managementGroups": "detach",
    "resourceGroups": "detach",
    "resources": "detach"
  },
  "debugSetting": null,
  "deletedResources": [],
  "denySettings": {
    "applyToChildScopes": false,
    "excludedActions": null,
    "excludedPrincipals": null,
    "mode": "none"
  },
  "deploymentId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Resources/deployments/demoStack-24051714epybc",
  "deploymentScope": null,
  "description": null,
  "detachedResources": [],
  "duration": "PT32.5330364S",
  "error": null,
  "failedResources": [],
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Resources/deploymentStacks/demoStack",
  "location": null,
  "name": "demoStack",
  "outputs": null,
  "parameters": {},
  "parametersLink": null,
  "provisioningState": "succeeded",
  "resourceGroup": "demoRg",
  "resources": [
    {
      "denyStatus": "none",
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Network/virtualNetworks/vnetthmimleef5fwk",
      "resourceGroup": "demoRg",
      "status": "managed"
    },
    {
      "denyStatus": "none",
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Storage/storageAccounts/storethmimleef5fwk",
      "resourceGroup": "demoRg",
      "status": "managed"
    }
  ],
  "systemData": {
    "createdAt": "2024-05-17T14:50:18.382948+00:00",
    "createdBy": "johndoe@contoso.com",
    "createdByType": "User",
    "lastModifiedAt": "2024-05-17T14:50:18.382948+00:00",
    "lastModifiedBy": "johndoe@contoso.com",
    "lastModifiedByType": "User"
  },
  "tags": {},
  "template": null,
  "templateLink": null,
  "type": "Microsoft.Resources/deploymentStacks"
}

Dağıtım yığınındaki yönetilen kaynakları listeleyerek dağıtımı da doğrulayabilirsiniz:

az stack group show \
  --name 'demoStack' \
  --resource-group 'demoRg' \
  --output 'json'

Çıktı şuna benzer olacaktır:

{
  "actionOnUnmanage": {
    "managementGroups": "detach",
    "resourceGroups": "detach",
    "resources": "detach"
  },
  "debugSetting": null,
  "deletedResources": [],
  "denySettings": {
    "applyToChildScopes": false,
    "excludedActions": null,
    "excludedPrincipals": null,
    "mode": "none"
  },
  "deploymentId": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Resources/deployments/demoStack-24051714epybc",
  "deploymentScope": null,
  "description": null,
  "detachedResources": [],
  "duration": "PT32.5330364S",
  "error": null,
  "failedResources": [],
  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Resources/deploymentStacks/demoStack",
  "location": null,
  "name": "demoStack",
  "outputs": null,
  "parameters": {},
  "parametersLink": null,
  "provisioningState": "succeeded",
  "resourceGroup": "demoRg",
  "resources": [
    {
      "denyStatus": "none",
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Network/virtualNetworks/vnetthmimleef5fwk",
      "resourceGroup": "demoRg",
      "status": "managed"
    },
    {
      "denyStatus": "none",
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demoRg/providers/Microsoft.Storage/storageAccounts/storethmimleef5fwk",
      "resourceGroup": "demoRg",
      "status": "managed"
    }
  ],
  "systemData": {
    "createdAt": "2024-05-17T14:50:18.382948+00:00",
    "createdBy": "johndoe@contoso.com",
    "createdByType": "User",
    "lastModifiedAt": "2024-05-17T14:50:18.382948+00:00",
    "lastModifiedBy": "johndoe@contoso.com",
    "lastModifiedByType": "User"
  },
  "tags": {},
  "template": null,
  "templateLink": null,
  "type": "Microsoft.Resources/deploymentStacks"
}

Bir yığın oluşturulduktan sonra, Azure portalı üzerinden hem yığının kendisine hem de onunla ilişkili yönetilen kaynaklara erişebilir ve bunları görüntüleyebilirsiniz. Yığının dağıtıldığı kaynak grubuna gidin ve tüm ilgili bilgilere ve ayarlara erişebilirsiniz.

Azure portalındaki dağıtım yığınının ekran görüntüsü.

Dağıtım yığınını güncelleştirme

Dağıtım yığınını güncelleştirmek için, temel alınan Bicep dosyasını değiştirebilir ve dağıtım yığını oluştur komutunu yeniden çalıştırabilirsiniz.

main.bicep dosyasını düzenleyerek sku adını Standard_GRS olarak Standard_LRSdeğiştirin:

Şu komutu çalıştırın:

az stack group create \
  --name 'demoStack' \
  --resource-group 'demoRg' \
  --template-file './main.bicep' \
  --action-on-unmanage 'detachAll' \
  --deny-settings-mode 'none'

Değişikliği onaylamak için Azure portalından depolama hesabının özelliklerini denetleyin.

Aynı yöntemi kullanarak dağıtım yığınına kaynak ekleyebilir veya yönetilen bir kaynağı dağıtım yığınından kaldırabilirsiniz. Daha fazla bilgi için bkz. Dağıtım yığınına kaynak ekleme ve Yönetilen kaynakları dağıtım yığınından silme.

Dağıtım yığınını silme

Dağıtım yığınını ve yönetilen kaynakları silmek için:

az stack group delete \
  --name 'demoStack' \
  --resource-group 'demoRg' \
  --action-on-unmanage 'deleteAll'

Dağıtım yığınını silmek, ancak yönetilen kaynakları korumak için:

az stack group delete \
  --name 'demoStack' \
  --resource-group 'demoRg' \
  --action-on-unmanage 'detachAll'

Daha fazla bilgi için bkz . Dağıtım yığınlarını silme.

Remove komutu yalnızca yönetilen kaynakları ve yönetilen kaynak gruplarını kaldırır. Yine de dağıtım yığını tarafından yönetilmeyen kaynak gruplarını silmek sizin sorumluluğundadır.

Kaynakları temizleme

Yönetilmeyen kaynak grubunu silin.

az group delete \
  --name 'demoRg'

Sonraki adımlar