Łączenie środowiska z siecią wirtualną laboratorium w usłudze Azure DevTest Labs
Usługa Azure DevTest Labs ułatwia tworzenie maszyn wirtualnych w laboratorium z wbudowaną siecią. Ma dużą elastyczność dzięki możliwości tworzenia środowisk z wieloma maszynami wirtualnymi. W tym artykule pokazano, jak połączyć maszyny wirtualne w środowisku z siecią wirtualną laboratorium. Jednym ze scenariuszy, w którym używasz tej funkcji, jest skonfigurowanie aplikacji N-warstwowej z warstwą danych programu SQL Server połączoną z siecią wirtualną laboratorium umożliwiającą testowanie maszyn wirtualnych w laboratorium w celu uzyskania do niej dostępu.
Uwaga
Środowiska wdrażania platformy Azure (ADE) są zdecydowanie zalecane w przypadku tworzenia środowisk. Usługa ADE umożliwia deweloperom szybkie wdrażanie infrastruktury aplikacji przy użyciu szablonów opartych na projekcie, zapewniając spójne i bezpieczne środowiska dla zespołów programistycznych.
Aby dowiedzieć się więcej na temat środowisk wdrażania platformy Azure, zobacz dokumentację środowisk wdrażania platformy Azure.
Przykładowe środowisko korzystające z sieci wirtualnej laboratorium
Oto prosty szablon środowiska, który łączy podsieć laboratorium. W tym przykładzie parametr reprezentuje identyfikator podsieci, DTLSubnetId
w której istnieje laboratorium. Jest on przypisany do: $(LabSubnetId)
, który jest automatycznie rozpoznawany przez usługę DevTest Labs do identyfikatora podsieci laboratorium. Właściwość podsieci interfejsu sieciowego maszyny wirtualnej w tej definicji jest ustawiona takDTLSubnetId
, aby łączyła tę samą podsieć.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"DTLEnvironVmStoretype": {
"type": "string",
"defaultValue": "Standard_LRS",
"allowedValues": [
"Standard_LRS",
"Standard_ZRS",
"Standard_GRS",
"Standard_RAGRS",
"Premium_LRS"
]
},
"DTLEnvironVmName": {
"type": "string",
"minLength": 1
},
"VmAdminUserName": {
"type": "string",
"minLength": 1
},
"VmAdminUserPassword": {
"type": "securestring"
},
"DTLEnvironVmOsVersion": {
"type": "string",
"defaultValue": "2012-R2-Datacenter",
"allowedValues": [
"2008-R2-SP1",
"2012-Datacenter",
"2012-R2-Datacenter",
"Windows-Server-Technical-Preview"
]
},
"DTLSubnetId": {
"type": "string",
"defaultValue": "$(LabSubnetId)"
}
},
"variables": {
"DTLEnvironStoreName": "[toLower([concat(parameters('DTLEnvironVmName'), 'storename')])]",
"DTLEnvironVmImagePublisher": "MicrosoftWindowsServer",
"DTLEnvironVmImageOffer": "WindowsServer",
"DTLEnvironVmOSDiskName": "[concat(parameters('DTLEnvironVmName'), 'OSDisk')]",
"DTLEnvironVmSize": "Standard_D2_v2",
"DTLEnvironVmStorageAccountContainerName": "vhds",
"DTLEnvironVmNicName": "[concat(parameters('DTLEnvironVmName'), 'NetworkInterface')]"
},
"resources": [{
"name": "[variables('DTLEnvironStoreName')]",
"type": "Microsoft.Storage/storageAccounts",
"location": "[resourceGroup().location]",
"apiVersion": "2016-01-01",
"sku": {
"name": "[parameters('DTLEnvironVmStoretype')]"
},
"dependsOn": [],
"tags": {
"displayName": "[variables('DTLEnvironStoreName')]"
},
"kind": "Storage"
},
{
"name": "[variables('DTLEnvironVmNicName')]",
"type": "Microsoft.Network/networkInterfaces",
"location": "southeastasia",
"apiVersion": "2016-03-30",
"dependsOn": [],
"tags": {
"displayName": "[variables('DTLEnvironVmNicName')]"
},
"properties": {
"ipConfigurations": [{
"name": "ipconfig1",
"properties": {
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "[parameters('DTLSubnetId')]"
}
}
}]
}
},
{
"name": "[parameters('DTLEnvironVmName')]",
"type": "Microsoft.Compute/virtualMachines",
"location": "[resourceGroup().location]",
"apiVersion": "2015-06-15",
"dependsOn": [
"[resourceId('Microsoft.Storage/storageAccounts', variables('DTLEnvironStoreName'))]",
"[resourceId('Microsoft.Network/networkInterfaces', variables('DTLEnvironVmNicName'))]"
],
"tags": {
"displayName": "[parameters('DTLEnvironVmName')]"
},
"properties": {
"hardwareProfile": {
"vmSize": "[variables('DTLEnvironVmSize')]"
},
"osProfile": {
"computerName": "[parameters('DTLEnvironVmName')]",
"adminUsername": "[parameters('VmAdminUserName')]",
"adminPassword": "[parameters('VmAdminUserPassword')]"
},
"storageProfile": {
"imageReference": {
"publisher": "[variables('DTLEnvironVmImagePublisher')]",
"offer": "[variables('DTLEnvironVmImageOffer')]",
"sku": "[parameters('DTLEnvironVmOsVersion')]",
"version": "latest"
},
"osDisk": {
"name": "[variables('DTLEnvironVmOSDiskName')]",
"vhd": {
"uri": "[concat(reference(resourceId('Microsoft.Storage/storageAccounts', variables('DTLEnvironStoreName')), '2016-01-01').primaryEndpoints.blob, variables('DTLEnvironVmStorageAccountContainerName'), '/', variables('DTLEnvironVmOSDiskName'), '.vhd')]"
},
"caching": "ReadWrite",
"createOption": "FromImage"
}
},
"networkProfile": {
"networkInterfaces": [{
"id": "[resourceId('Microsoft.Network/networkInterfaces', variables('DTLEnvironVmNicName'))]"
}]
}
}
}
],
"outputs": {}
}
Następne kroki
Aby wykonać następujące operacje, zobacz następujący artykuł: Uruchom ponownie maszynę wirtualną przy użyciu witryny Azure Portal.