將 Azure 網路安全性群組 (NSG) 重新放置另一個區域
本文說明如何藉由建立 NSG 的來源設定和安全性規則複本,將 NSG 重新放置至新區域。
必要條件
確定 Azure 網路安全性群組位於目標 Azure 區域中。
將新 NSG 與目標區域中的資源建立關聯。
若要匯出 NSG 設定並部署範本以在另一個區域中建立 NSG,則需要網路參與者角色或權限更高的角色。
識別來源網路配置,以及您目前使用的所有資源。 此配置包含但不限於負載平衡器、公用 IP 及虛擬網路。
確認 Azure 訂用帳戶允許您在所使用的目標區域中建立 NSG。 請連絡支援人員啟用所需的配額。
確認您的訂用帳戶具有足夠資源,可支援針對此程序新增的 NSG。 請參閱 Azure 訂用帳戶和服務限制、配額與限制。
停機
若要瞭解可能的停機情況,請參閱適用於 Azure 的雲端採用架構:選取重新配置方法。
準備
下列步驟說明如何使用 Resource Manager 範本,為網路安全性群組做準備以移動設定和安全性規則,並使用入口網站將 NSG 設定和安全性規則移至目標區域。
匯出和修改範本
使用 Azure 入口網站匯出和修改範本:
登入 Azure 入口網站。
選取 [所有資源],然後選取您的儲存體帳戶。
選取 >[自動化]>[匯出範本]。
在 [匯出範本] 刀鋒視窗中,選擇 [部署]。
選取 [範本]>[編輯參數],在線上編輯器中開啟 parameters.json 檔案。
若要編輯 NSG 名稱的參數,請變更 parameters 下的 value 屬性:
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "networkSecurityGroups_myVM1_nsg_name": { "value": "<target-nsg-name>" } } }
將編輯器中的來源 NSG 值變更為您選擇的目標 NSG 名稱。 請確實以引號括住名稱。
在編輯器中選取 [儲存]。
選取 [範本]>[編輯範本],在線上編輯器中開啟 template.json 檔案。
若要編輯要移動 NSG 設定和安全性規則的目標區域,請在線上編輯器中變更 resources 底下的 location 屬性:
"resources": [ { "type": "Microsoft.Network/networkSecurityGroups", "apiVersion": "2019-06-01", "name": "[parameters('networkSecurityGroups_myVM1_nsg_name')]", "location": "<target-region>", "properties": { "provisioningState": "Succeeded", "resourceGuid": "2c846acf-58c8-416d-be97-ccd00a4ccd78", } } ]
若要取得區域位置代碼,請參閱 Azure 位置。 區域名稱除去空格即為區域代碼,Central US = centralus。
您也可以根據需求而選擇變更範本中的其他參數:
安全性規則 - 在 template.json 檔案的 securityRules 區段中新增或移除規則,即可編輯要部署到目標 NSG 中的規則:
"resources": [ { "type": "Microsoft.Network/networkSecurityGroups", "apiVersion": "2019-06-01", "name": "[parameters('networkSecurityGroups_myVM1_nsg_name')]", "location": "<target-region>", "properties": { "provisioningState": "Succeeded", "resourceGuid": "2c846acf-58c8-416d-be97-ccd00a4ccd78", "securityRules": [ { "name": "RDP", "etag": "W/\"c630c458-6b52-4202-8fd7-172b7ab49cf5\"", "properties": { "provisioningState": "Succeeded", "protocol": "TCP", "sourcePortRange": "*", "destinationPortRange": "3389", "sourceAddressPrefix": "*", "destinationAddressPrefix": "*", "access": "Allow", "priority": 300, "direction": "Inbound", "sourcePortRanges": [], "destinationPortRanges": [], "sourceAddressPrefixes": [], "destinationAddressPrefixes": [] } }, ] }
若要完成新增或移除目標 NSG 中的規則,您也必須依照下列範例的格式,編輯template.json 檔案結尾的自訂規則類型:
{ "type": "Microsoft.Network/networkSecurityGroups/securityRules", "apiVersion": "2019-06-01", "name": "[concat(parameters('networkSecurityGroups_myVM1_nsg_name'), '/Port_80')]", "dependsOn": [ "[resourceId('Microsoft.Network/networkSecurityGroups', parameters('networkSecurityGroups_myVM1_nsg_name'))]" ], "properties": { "provisioningState": "Succeeded", "protocol": "*", "sourcePortRange": "*", "destinationPortRange": "80", "sourceAddressPrefix": "*", "destinationAddressPrefix": "*", "access": "Allow", "priority": 310, "direction": "Inbound", "sourcePortRanges": [], "destinationPortRanges": [], "sourceAddressPrefixes": [], "destinationAddressPrefixes": [] }
在線上編輯器中選取 [儲存]。
重新部署
選取 [BASICS]>[訂用帳戶],選擇要部署目標 NSG 的訂用帳戶。
選取 [BASICS]>[資源群組],選擇要部署目標 NSG 的資源群組。 您可以按一下 [新建],為目標 NSG 建立新的資源群組。 請確定名稱與現有 NSG 的來源資源群組不同。
選取 [BASICS]>[位置] 已設為您想要部署 NSG 的目標位置。
在 [設定] 底下,確認名稱與您在上方參數編輯器中輸入的名稱一致。
勾選 [條款及條件] 底下的方塊。
選取 [購買] 按鈕,部署目標網路安全性群組。
捨棄
如要捨棄目標 NSG,請刪除包含目標 NSG 的資源群組。 若要這樣做,請從入口網站的儀表板上選取資源群組,然後選取概觀頁面頂端的 [刪除]。
清理
若要認可變更和完成 NSG 的移動,請刪除來源 NSG 或資源群組。 若要執行此操作,請從入口網站的儀表板上選取網路安全性群組或資源群組,然後選取每個頁面頂端的 [刪除]。
下一步
在此教學課程中,您已將 Azure 網路安全性群組從某個區域移至另一個區域,並清除了來源資源。 若要深入了解如何在 Azure 中的區域之間移動資源和災害復原,請參閱:
- 將資源移到新的資源群組或訂用帳戶 \(部分機器翻譯\)
- 將 Azure VM 移至其他區域