Azure 확장 집합 템플릿에서 기존 가상 네트워크 참조

이 문서에서는 기본 확장 집합 템플릿을 수정하여 새 가상 네트워크를 만드는 대신 기존 가상 네트워크에 배포하는 방법을 보여 줍니다.

필수 조건

이전 문서에서는 기본 확장 집합 템플릿을 만들었습니다. 기존 가상 네트워크에 확장 집합을 배포하는 템플릿을 만들기 위해 수정할 수 있도록 이전 템플릿이 필요합니다.

서브넷 식별

먼저 subnetId 매개 변수를 추가합니다. 이 문자열은 확장 집합 구성에 전달되어 확장 집합에서 미리 만든 서브넷을 식별하여 가상 머신을 배포할 수 있게 합니다. 이 문자열은 다음 형식이어야 합니다.

/subscriptions/<subscription-id>resourceGroups/<resource-group-name>/providers/Microsoft.Network/virtualNetworks/<virtual-network-name>/subnets/<subnet-name>

예를 들어 확장 집합을 이름 myvnet, mysubnet 서브넷, myrg 리소스 그룹 및 00000000-0000-0000-0000-000000000000 구독인 기존 가상 네트워크에 배포하려면 subnetId는 다음과 같습니다.

/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myrg/providers/Microsoft.Network/virtualNetworks/myvnet/subnets/mysubnet.

      },
      "adminPassword": {
        "type": "securestring"
+    },
+    "subnetId": {
+      "type": "string"
      }
    },

추가 가상 네트워크 리소스 삭제

다음으로 기존 가상 네트워크를 사용하고 있고 새 가상 네트워크를 배포할 필요가 없기 때문에 resources 배열에서 가상 네트워크 리소스를 삭제합니다.

    "variables": {},
    "resources": [
-    {
-      "type": "Microsoft.Network/virtualNetworks",
-      "name": "myVnet",
-      "location": "[resourceGroup().location]",
-      "apiVersion": "2018-11-01",
-      "properties": {
-        "addressSpace": {
-          "addressPrefixes": [
-            "10.0.0.0/16"
-          ]
-        },
-        "subnets": [
-          {
-            "name": "mySubnet",
-            "properties": {
-              "addressPrefix": "10.0.0.0/16"
-            }
-          }
-        ]
-      }
-    },

종속성 절 제거

템플릿을 배포하기 전에 가상 네트워크가 이미 있으므로 확장 집합에서 가상 네트워크로 dependsOn 절을 지정할 필요가 없습니다. 다음 줄을 삭제합니다.

      {
        "type": "Microsoft.Compute/virtualMachineScaleSets",
        "name": "myScaleSet",
        "location": "[resourceGroup().location]",
        "apiVersion": "2019-03-01",
-      "dependsOn": [
-        "Microsoft.Network/virtualNetworks/myVnet"
-      ],
        "sku": {
          "name": "Standard_A1",
          "capacity": 2

전달 서브넷 매개 변수

마지막으로 동일한 배포에서 Vnet의 ID를 얻기 위해 실행 가능한 기본 확장 집합 템플릿에서 수행하는 resourceId를 사용하는 대신 사용자가 설정한 subnetId 매개 변수를 전달합니다.

                        "name": "myIpConfig",
                        "properties": {
                          "subnet": {
-                          "id": "[concat(resourceId('Microsoft.Network/virtualNetworks', 'myVnet'), '/subnets/mySubnet')]"
+                          "id": "[parameters('subnetId')]"
                          }
                        }
                      }

다음 단계

Azure Resource Manager 설명서에 따라 이전 템플릿을 배포할 수 있습니다.

기본 확장 집합 템플릿 문서에서 이 자습서 시리즈를 시작할 수 있습니다.

기본 확장 집합 템플릿을 수정하여 기존 가상 네트워크에 확장 집합을 배포하는 방법을 보여 줍니다.

기본 확장 집합 템플릿을 수정하여 사용자 지정 이미지로 확장 집합을 배포하는 방법을 보여 줍니다.

기본 확장 집합 템플릿을 수정하여 게스트 기반 자동 크기 조정으로 Linux 확장 집합을 배포하는 방법을 확인할 수 있습니다.

확장 집합에 대한 자세한 내용은 확장 집합 개요 페이지를 참조하세요.