التشغيل السريع: إنشاء ونشر مكدس توزيع باستخدام Bicep

يصف هذا التشغيل السريع كيفية إنشاء مكدس توزيع.

المتطلبات الأساسية

إنشاء ملف Bicep

إنشاء ملف Bicep لإنشاء حساب تخزين وشبكة ظاهرية.

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 ك main.bicep.

إنشاء مكدس توزيع

في هذا التشغيل السريع، يمكنك إنشاء مكدس التوزيع في نطاق مجموعة الموارد. يمكنك أيضا إنشاء مكدس التوزيع في نطاق الاشتراك أو نطاق مجموعة الإدارة. لمزيد من المعلومات، راجع إنشاء مكدسات توزيع.

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'

لمزيد من المعلومات حول action-on-unmanage و deny-setting-mode، راجع مكدسات التوزيع.

تحقق من التوزيع

لسرد مكدسات التوزيع الموزعة على مستوى مجموعة الموارد:

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

يظهر الإخراج موردين مدارين - حساب تخزين واحد وشبكة ظاهرية واحدة:

{
  "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"
}

يمكنك أيضا التحقق من التوزيع عن طريق سرد الموارد المدارة في مكدس التوزيع:

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

يتشابه الإخراج مع:

{
  "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"
}

بمجرد إنشاء مكدس، يمكنك الوصول إلى كل من المكدس نفسه والموارد المدارة المرتبطة به وعرضها من خلال مدخل Microsoft Azure. انتقل إلى مجموعة الموارد حيث تم نشر المكدس، ويمكنك الوصول إلى جميع المعلومات والإعدادات ذات الصلة.

لقطة شاشة لمكدس توزيع في مدخل Microsoft Azure.

تحديث مكدس التوزيع

لتحديث مكدس توزيع، يمكنك تعديل ملف Bicep الأساسي وإعادة تشغيل الأمر إنشاء مكدس توزيع.

قم بتحرير main.bicep لتغيير اسم sku إلى Standard_GRS من Standard_LRS:

شغّل الأمر التالي:

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

من مدخل Microsoft Azure، تحقق من خصائص حساب التخزين لتأكيد التغيير.

باستخدام نفس الأسلوب، يمكنك إضافة مورد إلى مكدس التوزيع أو إزالة مورد مدار من مكدس التوزيع. لمزيد من المعلومات، راجع إضافة موارد إلى مكدس توزيع وحذف الموارد المدارة من مكدس توزيع.

حذف مكدس التوزيع

لحذف مكدس التوزيع والموارد المدارة:

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

لحذف مكدس التوزيع، ولكن مع الاحتفاظ بالموارد المدارة:

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

لمزيد من المعلومات، راجع حذف مكدسات التوزيع.

يزيل أمر الإزالة الموارد المدارة ومجموعات الموارد المدارة بشكل حصري. لا تزال مسؤولا عن حذف مجموعات الموارد التي لا تتم إدارتها بواسطة مكدس التوزيع.

تنظيف الموارد

حذف مجموعة الموارد غير المدارة.

az group delete \
  --name 'demoRg'

الخطوات التالية