مشاركة عبر


Networking for مجموعات توسعة الأجهزة الظاهرية في Azure

عند نشر مجموعة مقياس الآلة الافتراضية Azure عبر البوابة، يتم تعيين خصائص شبكة معينة بشكل افتراضي، مثل موازن تحميل Azure مع قواعد NAT الواردة. توضح هذه المقالة كيفية استخدام بعض ميزات الشبكات الأكثر تقدماً التي يمكنك تكوينها باستخدام مجموعات المقاييس.

يمكنك تكوين جميع الميزات التي تم تغطيتها في هذا المقال باستخدام قوالب Azure Resource Manager. كما تتضمن أمثلة Azure CLI وPowerShell لميزات محددة.

إشعار

نقل مجموعة مقياس الآلة الافتراضية من شبكة افتراضية إلى أخرى غير ممكن. عليك إعادة إنشاء المقياس المعين في الشبكة الافتراضية الوجهة.

تسريع الشبكات

Azure الشبكات المتسارعة تحسن أداء الشبكة من خلال تمكين افتراضية الإدخال/الإخراج ذات الجذر الواحد (SR-IOV) إلى آلة افتراضية. لمعرفة المزيد عن استخدام الشبكات المعجلة، راجع الشبكات المتسارعة للآلات الافتراضية Windows أو Linux الافتراضية. لاستخدام الشبكة المسرّعة مع مجموعات قياس، قم بتعيين enableAcceleratedNetworking إلى true في إعدادات networkInterfaceConfigurations الخاصة بمجموعة القياس. على سبيل المثال:

"networkProfile": {
    "networkInterfaceConfigurations": [
    {
      "name": "niconfig1",
      "properties": {
        "primary": true,
        "enableAcceleratedNetworking" : true,
        "ipConfigurations": [
          ...
        ]
      }
    }
   ]
}

مجموعات توسعة الأجهزة الظاهرية في Azure with موازن تحميل Azure

راجع موازن تحميل Azure و Virtual Machine Scale Sets لتتعرف أكثر على كيفية تكوين Standard Load Balancer باستخدام Virtual Machine Scale Sets بناء على سيناريوك.

إضافة مجموعة مقياس الجهاز الظاهري إلى بوابة تطبيق

لإضافة مجموعة مقياس إلى تجمع الواجهة الخلفية لبوابة التطبيق، راجع تجمع الواجهة الخلفية لبوابة التطبيق في ملف تعريف شبكة مجموعة المقياس. يمكن القيام بذلك إما عند إنشاء مجموعة المقياس (راجع قالب ARM أدناه) أو على مجموعة تحجيم موجودة.

إضافة مجموعات Virtual Machine Scale Sets Uniform Orchestration إلى بوابة التطبيقات

عند إضافة مجموعات Uniform Virtual Machine Scale Sets إلى مجموعة الخلفية في Application Gateway، تختلف العملية بين مجموعات المقياس الجديدة أو الموجودة:

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

إشعار

يجب أن تكون بوابة التطبيق في نفس الشبكة الافتراضية مع مجموعة المقياس، ولكن يجب أن تكون في شبكة فرعية مختلفة عن مجموعة المقياس.

  • بوابة
  • بوويرشيل
  • المبادره القطريه
  • قالب ARM
  1. أنشئ بوابة التطبيقات ومجموعة خلفية في نفس المنطقة التي توجد بها مجموعة المقياس الخاصة بك، إذا لم يكن لديك واحد بالفعل
  2. انتقل إلى مجموعة مقياس الجهاز الظاهري في المدخل
  3. ضمن الإعدادات، افتح جزء الشبكات
  4. في صفحة الشبكات، اختر تبويب موازنة التحميل واختر إضافة توازن التحميل
  5. حدد بوابة التطبيق من القائمة المنسدلة خيارات موازنة التحميل، واختر بوابة تطبيق موجودة
  6. اختر تجمع الخلفية المستهدف واختر حفظ
  7. إذا كان نهج الترقية لمجموعة التحجيم هو "يدوي"، فانتقل إلى جزء SettingsInstances لتحديد كل مثيل من مثيلاتك وترقيته

إضافة مجموعات Virtual Machine Scale Sets المرنة للتنسيق التنظيمي إلى بوابة التطبيقات

عند إضافة مجموعة مقياس مرنة إلى Application Gateway، تكون العملية هي نفسها إضافة أجهزة ظاهرية مستقلة إلى تجمع الواجهة الخلفية لبوابة التطبيق - يمكنك تحديث تكوين IP لواجهة شبكة الجهاز الظاهري ليكون جزءا من تجمع الواجهة الخلفية. يمكن القيام بذلك إما من خلال تكوين بوابة التطبيق أو عن طريق تكوين واجهة شبكة الجهاز الظاهري.

إشعار

لاحظ أن بوابة التطبيق يجب أن تكون في نفس الشبكة الظاهرية مثل مجموعة المقياس ولكن يجب أن تكون في شبكة فرعية مختلفة عن مجموعة القياس.

إعدادات DNS القابلة للتكوين

افتراضيا، تأخذ مجموعات المقياس إعدادات DNS الخاصة بالشبكة الافتراضية والشبكة الفرعية التي تم إنشاؤها فيها. ومع ذلك، يمكنك ضبط إعدادات DNS لمجموعة مقياس مباشرة.

إنشاء مجموعة مقاييس باستخدام خوادم DNS القابلة للتكوين

لإنشاء مجموعة مقياس بتكوين DNS مخصص باستخدام Azure CLI، أضف --dns-servers إلى أمر vmss create، يليه عناوين IP الخوادم المفصولة بالمسافات. على سبيل المثال:

--dns-servers 10.0.0.6 10.0.0.5

لتكوين خوادم DNS مخصصة في قالب Azure، أضف خاصية dnsSettings إلى قسم networkInterfaceConfigurations الخاص ب Scale Set Set. على سبيل المثال:

"dnsSettings":{
    "dnsServers":["10.0.0.6", "10.0.0.5"]
}

إنشاء مجموعة قياس باستخدام أسماء مجالات الجهاز الظاهري القابلة للتكوين

لإنشاء مجموعة مقياس باسم DNS مخصص للأجهزة الظاهرية باستخدام CLI، أضف الوسيطة --vm-domain-name إلى الأمر إنشاء مجموعة مقياس الجهاز الظاهري، متبوعا بسلسلة تمثل اسم المجال.

لتعيين اسم النطاق في قالب Azure، أضف خاصية dnsSettings إلى قسم مجموعة المقياس networkInterfaceConfigurations. على سبيل المثال:

"networkProfile": {
  "networkInterfaceConfigurations": [
    {
    "name": "nic1",
    "properties": {
      "primary": true,
      "ipConfigurations": [
      {
        "name": "ip1",
        "properties": {
          "subnet": {
            "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
          },
          "publicIPAddressconfiguration": {
            "name": "publicip",
            "properties": {
            "idleTimeoutInMinutes": 10,
              "dnsSettings": {
                "domainNameLabel": "[parameters('vmssDnsName')]"
              }
            }
          }
        }
      }
    ]
    }
}

سيكون الناتج لاسم DNS لآلة افتراضية فردية بالشكل التالي:

<vm><vmindex>.<specifiedVmssDomainNameLabel>

IPv4 عام لكل جهاز ظاهري

بشكل عام، لا تتطلب الآلات الافتراضية ذات مجموعة Azure عناوين IP عامة خاصة بها. بالنسبة لمعظم السيناريوهات، من الأكثر اقتصاداً وأماناً ربط عنوان IP العام بموازنة التحميل أو بجهاز ظاهري فردي (يُعرف أيضاً باسم Jumpbox)، والذي يقوم بعد ذلك بتوجيه الاتصالات الواردة لتوسيع نطاق الأجهزة الظاهرية المحددة حسب الحاجة (على سبيل المثال، من خلال قواعد NAT الواردة).

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

مهم

لا ينصح بربط أكثر من 500 عنوان IP عام بمثيل واحد لمجموعة مقياس الآلة الافتراضية بسبب اعتبارات المقياس.

إنشاء مجموعة مقاييس باستخدام عنوان IP عام لكل جهاز ظاهري

لإنشاء مجموعة مقاييس تقوم بتعيين عنوان IP عام لكل جهاز ظاهري باستخدام CLI، أضف المعلمة --public-ip-per-vm إلى الأمر إنشاء vmss .

لإنشاء مجموعة مقياس باستخدام قالب Azure، تأكد من أن نسخة واجهة برمجة التطبيقات من مورد Microsoft.Compute/virtualMachineScaleSets هي على الأقل 2017-03-30، وأضف خاصية JSON publicIpAddressConfiguration إلى قسم ipConfigurations الخاص بمجموعة المقياس. على سبيل المثال:

"publicIpAddressConfiguration": {
    "name": "pub1",
    "sku": {
      "name": "Standard"
    },
    "properties": {
      "idleTimeoutInMinutes": 15
    }
}

لاحظ أنه عندما يتم إنشاء Virtual Machine Scale Sets مع عناوين IP عامة لكل مثيل مع وجود load balancer في الداخل، يتم تحديد عناوين IP النسخة بواسطة وحدة تخزين المستخدم الخاصة ب Load Balancer (أي Basic أو Standard). إذا تم إنشاء مجموعة مقياس الجهاز الظاهري دون موازن تحميل، يمكن تعيين SKU لمثيل عناوين IP مباشرة باستخدام قسم SKU من القالب كما هو موضح أعلاه.

نموذج يستخدم Load Balancer أساسي: vmss-public-ip-linux

بدلا من ذلك، يمكن استخدام بادئة IP العامة (كتلة قريبة من عناوين IP العامة SKU القياسية) لإنشاء عناوين IP على مستوى المثيل في مجموعة مقياس الجهاز الظاهري. سيتم تمرير خصائص منطقة التوافر للبادئة إلى عناوين IP النسخ، رغم أنها لن تظهر في المخرج.

نموذج يستخدم بادئة IP عامة: vmss-with-public-ip-prefix

الاستعلام عن عناوين IP العامة للأجهزة الظاهرية في مجموعة مقاييس

لسرد عناوين IP العامة المعينة لمجموعة قياس الأجهزة الظاهرية باستخدام CLI، استخدم الأمر az vmss list-instance-public-ips.

لسرد عناوين IP العامة الخاصة بمجموعة القياس باستخدام PowerShell، استخدم الأمر Get-AzPublicIpAddress. على سبيل المثال:

Get-AzPublicIpAddress -ResourceGroupName myrg -VirtualMachineScaleSetName myvmss

يمكنك أيضاً الاستعلام عن عناوين IP العامة عن طريق الرجوع إلى معرف المورد الخاص بتكوين عنوان IP العام مباشرةً. على سبيل المثال:

Get-AzPublicIpAddress -ResourceGroupName myrg -Name myvmsspip

يمكنك أيضا عرض عناوين IP العامة المخصصة للآلات الافتراضية ذات مجموعة المقياس من خلال الاستعلام عن Azure Resource Explorer أو واجهة برمجة التطبيقات Azure REST مع الإصدار 2017-03-30 أو أعلى.

للاستفسار عن مستكشف الموارد Azure:

  1. افتح Azure Resource Explorer في متصفح ويب.
  2. قم بتوسيع الاشتراكات على الجانب الأيسر بالنقر فوق بجوارها. إذا كان لديك عنصر واحد فقط ضمن الاشتراكات، فقد يتم توسيعه بالفعل.
  3. قم بتوسيع اشتراكك.
  4. قم بتوسيع مجموعة الموارد الخاصة بك.
  5. قم بتوسيع موفري الخدمات.
  6. قم بتوسيع Microsoft.Compute.
  7. قم بتوسيع virtualMachineScaleSets.
  8. قم بتوسيع مجموعة القياس.
  9. اختر عناوين النشر.

للاستعلام عن واجهة برمجة تطبيقات Azure REST:

GET https://management.azure.com/subscriptions/{your sub ID}/resourceGroups/{RG name}/providers/Microsoft.Compute/virtualMachineScaleSets/{scale set name}/publicipaddresses?api-version=2017-03-30

مثال على مخرجات Azure Resource Explorer وواجهة برمجة تطبيقات Azure REST:

{
  "value": [
    {
      "name": "pub1",
      "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/pipvmss/virtualMachines/0/networkInterfaces/pipvmssnic/ipConfigurations/yourvmssipconfig/publicIPAddresses/pub1",
      "etag": "W/\"a64060d5-4dea-4379-a11d-b23cd49a3c8d\"",
      "properties": {
        "provisioningState": "Succeeded",
        "resourceGuid": "ee8cb20f-af8e-4cd6-892f-441ae2bf701f",
        "ipAddress": "13.84.190.11",
        "publicIPAddressVersion": "IPv4",
        "publicIPAllocationMethod": "Dynamic",
        "idleTimeoutInMinutes": 15,
        "ipConfiguration": {
          "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/yourvmss/virtualMachines/0/networkInterfaces/yourvmssnic/ipConfigurations/yourvmssipconfig"
        }
      }
    },
    {
      "name": "pub1",
      "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/yourvmss/virtualMachines/3/networkInterfaces/yourvmssnic/ipConfigurations/yourvmssipconfig/publicIPAddresses/pub1",
      "etag": "W/\"5f6ff30c-a24c-4818-883c-61ebd5f9eee8\"",
      "properties": {
        "provisioningState": "Succeeded",
        "resourceGuid": "036ce266-403f-41bd-8578-d446d7397c2f",
        "ipAddress": "13.84.159.176",
        "publicIPAddressVersion": "IPv4",
        "publicIPAllocationMethod": "Dynamic",
        "idleTimeoutInMinutes": 15,
        "ipConfiguration": {
          "id": "/subscriptions/your-subscription-id/resourceGroups/your-rg/providers/Microsoft.Compute/virtualMachineScaleSets/yourvmss/virtualMachines/3/networkInterfaces/yourvmssnic/ipConfigurations/yourvmssipconfig"
        }
      }
    }

عناوين IP المتعددة لكل NIC

قد تحتوي كل بطاقة واجهة شبكة (NIC) متصلة بجهاز ظاهري في مجموعة المقاييس على واحد أو أكثر من تكوينات IP المرتبطة بها. يتم تعيين عنوان IP خاص واحد لكل تكوين. قد يكون لكل تكوين أيضاً مورد عنوان IP عام مرتبط به. لفهم عدد عناوين IP التي يمكن تعيينها لشبكة NIC، وعدد عناوين IP العامة التي يمكنك استخدامها في اشتراك Azure، راجع Azure limits.

بطاقات واجهة الشبكة المتعددة لكل جهاز ظاهري

يمكنك الحصول على ما يصل إلى 8 بطاقات NIC لكل جهاز ظاهري، حسب حجم الجهاز. يتوفر الحد الأقصى لعدد بطاقات NIC لكل جهاز في مقالة حجم الجهاز الظاهري. يجب أن تتصل جميع بطاقات NIC المتصلة بمثيل الجهاز الظاهري بالشبكة الظاهرية نفسها. قد تتصل بطاقات NIC بشبكات فرعية مختلفة، ولكن يجب أن تكون جميع الشبكات الفرعية جزءاً من نفس الشبكة الظاهرية.

المثال التالي هو ملف تعريف شبكة مجموعة مقياس يعرض إدخالات NIC متعددة وعناوين IP عامة متعددة لكل جهاز ظاهري:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
        "name": "nic1",
        "properties": {
            "primary": true,
            "ipConfigurations": [
            {
                "name": "ip1",
                "properties": {
                "subnet": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                },
                "publicipaddressconfiguration": {
                    "name": "pub1",
                    "properties": {
                    "idleTimeoutInMinutes": 15
                    }
                },
                "loadBalancerInboundNatPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                    }
                ],
                "loadBalancerBackendAddressPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                    }
                ]
                }
            }
            ]
        }
        },
        {
        "name": "nic2",
        "properties": {
            "primary": false,
            "ipConfigurations": [
            {
                "name": "ip1",
                "properties": {
                "subnet": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                },
                "publicipaddressconfiguration": {
                    "name": "pub1",
                    "properties": {
                    "idleTimeoutInMinutes": 15
                    }
                },
                "loadBalancerInboundNatPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                    }
                ],
                "loadBalancerBackendAddressPools": [
                    {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                    }
                ]
                }
            }
            ]
        }
        }
    ]
}

NSG وASGs لكل مجموعة مقياس

مجموعات أمان الشبكة تتيح لك تصفية حركة المرور من وإلى موارد Azure في شبكة افتراضية Azure باستخدام قواعد الأمان. Application Security Groups تمكنك من التعامل مع أمن الشبكات لموارد Azure وتجميعها كامتداد لهيكل تطبيقك.

يمكن تطبيق مجموعات أمان الشبكة مباشرة على مجموعة المقاييس، عن طريق إضافة مرجع إلى قسم تكوين واجهة الشبكة لخصائص الجهاز الظاهري لمجموعة المقياس.

يمكن أيضاً تحديد مجموعات أمان التطبيقات مباشرةً إلى مجموعة القياس، عن طريق إضافة مرجع إلى قسم تكوينات IP لواجهة الشبكة من خصائص الجهاز الظاهري لمجموعة القياس.

على سبيل المثال:

"networkProfile": {
    "networkInterfaceConfigurations": [
        {
            "name": "nic1",
            "properties": {
                "primary": true,
                "ipConfigurations": [
                    {
                        "name": "ip1",
                        "properties": {
                            "subnet": {
                                "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/virtualNetworks/', variables('vnetName'), '/subnets/subnet1')]"
                            },
                            "applicationSecurityGroups": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/applicationSecurityGroups/', variables('asgName'))]"
                                }
                            ],
                "loadBalancerInboundNatPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/inboundNatPools/natPool1')]"
                                }
                            ],
                            "loadBalancerBackendAddressPools": [
                                {
                                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/loadBalancers/', variables('lbName'), '/backendAddressPools/addressPool1')]"
                                }
                            ]
                        }
                    }
                ],
                "networkSecurityGroup": {
                    "id": "[concat('/subscriptions/', subscription().subscriptionId,'/resourceGroups/', resourceGroup().name, '/providers/Microsoft.Network/networkSecurityGroups/', variables('nsgName'))]"
                }
            }
        }
    ]
}

للتحقق من اقتران مجموعة أمان الشبكة بمجموعة المقاييس الخاصة بك، استخدم الأمر . يستخدم المثال أدناه لتصفية النتائج وإظهار القسم ذي الصلة فقط من المخرجات.

az vmss show \
    -g myResourceGroup \
    -n myScaleSet \
    --query virtualMachineProfile.networkProfile.networkInterfaceConfigurations[].networkSecurityGroup

[
  {
    "id": "/subscriptions/.../resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/nsgName",
    "resourceGroup": "myResourceGroup"
  }
]

للتحقق من اقتران مجموعة أمان التطبيق بمجموعة المقاييس الخاصة بك، استخدم الأمر . يستخدم المثال أدناه لتصفية النتائج وإظهار القسم ذي الصلة فقط من المخرجات.

az vmss show \
    -g myResourceGroup \
    -n myScaleSet \
    --query virtualMachineProfile.networkProfile.networkInterfaceConfigurations[].ipConfigurations[].applicationSecurityGroups

[
  [
    {
      "id": "/subscriptions/.../resourceGroups/myResourceGroup/providers/Microsoft.Network/applicationSecurityGroups/asgName",
      "resourceGroup": "myResourceGroup"
    }
  ]
]

إجراء تحديثات الشبكات لمثيلات محددة

يمكنك إجراء تحديثات شبكة الاتصال لمثيلات محددة لمجموعة مقياس الجهاز الظاهري.

يمكنك مقابل المثيل لتحديث تكوين الشبكة. يمكن استخدام هذا للقيام بأشياء مثل إضافة بطاقات واجهة الشبكة (NIC) أو إزالتها، أو إزالة مثيل من مجموعة الواجهة الخلفية.

PUT https://management.azure.com/subscriptions/.../resourceGroups/vmssnic/providers/Microsoft.Compute/virtualMachineScaleSets/vmssnic/virtualMachines/1/?api-version=2019-07-01

يوضح المثال التالي كيفية إضافة تكوين IP ثانٍ إلى NIC الخاص بك.

  1. تفاصيل مثيل معين لمجموعة مقياس الجهاز الظاهري.

    GET https://management.azure.com/subscriptions/.../resourceGroups/vmssnic/providers/Microsoft.Compute/virtualMachineScaleSets/vmssnic/virtualMachines/1/?api-version=2019-07-01
    

    تم تبسيط ما يلي لعرض معلمات الشبكة فقط لهذا المثال.

    {
      ...
      "properties": {
        ...
        "networkProfileConfiguration": {
          "networkInterfaceConfigurations": [
            {
              "name": "vmssnic-vnet-nic01",
              "properties": {
                "primary": true,
                "enableAcceleratedNetworking": false,
                "networkSecurityGroup": {
                  "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/networkSecurityGroups/basicNsgvmssnic-vnet-nic01"
                },
                "dnsSettings": {
                  "dnsServers": []
                },
                "enableIPForwarding": false,
                "ipConfigurations": [
                  {
                    "name": "vmssnic-vnet-nic01-defaultIpConfiguration",
                    "properties": {
                      "publicIPAddressConfiguration": {
                        "name": "publicIp-vmssnic-vnet-nic01",
                        "properties": {
                          "idleTimeoutInMinutes": 15,
                          "ipTags": [],
                          "publicIPAddressVersion": "IPv4"
                        }
                      },
                      "primary": true,
                      "subnet": {
                        "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/virtualNetworks/vmssnic-vnet/subnets/default"
                      },
                      "privateIPAddressVersion": "IPv4"
                    }
                  }
                ]
              }
            }
          ]
        },
        ...
      }
    }
    
  2. مقابل المثيل، التحديث لإضافة تكوين IP الإضافي. هذا مشابه لإضافة إضافية.

    PUT https://management.azure.com/subscriptions/.../resourceGroups/vmssnic/providers/Microsoft.Compute/virtualMachineScaleSets/vmssnic/virtualMachines/1/?api-version=2019-07-01
    

    تم تبسيط ما يلي لعرض معلمات الشبكة فقط لهذا المثال.

      {
      ...
      "properties": {
        ...
        "networkProfileConfiguration": {
          "networkInterfaceConfigurations": [
            {
              "name": "vmssnic-vnet-nic01",
              "properties": {
                "primary": true,
                "enableAcceleratedNetworking": false,
                "networkSecurityGroup": {
                  "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/networkSecurityGroups/basicNsgvmssnic-vnet-nic01"
                },
                "dnsSettings": {
                  "dnsServers": []
                },
                "enableIPForwarding": false,
                "ipConfigurations": [
                  {
                    "name": "vmssnic-vnet-nic01-defaultIpConfiguration",
                    "properties": {
                      "publicIPAddressConfiguration": {
                        "name": "publicIp-vmssnic-vnet-nic01",
                        "properties": {
                          "idleTimeoutInMinutes": 15,
                          "ipTags": [],
                          "publicIPAddressVersion": "IPv4"
                        }
                      },
                      "primary": true,
                      "subnet": {
                        "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/virtualNetworks/vmssnic-vnet/subnets/default"
                      },
                      "privateIPAddressVersion": "IPv4"
                    }
                  },
                  {
                    "name": "my-second-config",
                    "properties": {
                      "subnet": {
                        "id": "/subscriptions/123a1a12-a123-1ab1-12a1-12a1a1234ab1/resourceGroups/vmssnic/providers/Microsoft.Network/virtualNetworks/vmssnic-vnet/subnets/default"
                      },
                      "privateIPAddressVersion": "IPv4"
                    }
                  }
                ]
              }
            }
          ]
        },
        ...
      }
    }
    

اتصال صريح للشبكة الخارجية لمجموعات المقاييس المرنة

لتعزيز أمان الشبكة الافتراضي، Virtual Machine Scale Sets مع التنسيق المرن سيتطلب أن تكون العينات التي يتم إنشاؤها ضمنيا عبر ملف تعريف التدرج التلقائي معرفة الاتصال الصادر بشكل صريح من خلال إحدى الطرق التالية:

  • بالنسبة لمعظم السيناريوهات، نوصي بربط بوابة NAT بالشبكة الفرعية.
  • بالنسبة للسيناريوهات ذات متطلبات الأمان العالية أو عند استخدام Azure Firewall أو Network Virtual Appliance (NVA)، يمكنك تحديد مسار مخصص معرف من قبل المستخدم كخطوة تالية عبر الجدار الناري.
  • المثيلات موجودة في تجمع الخلفية لجهاز SKU موازن تحميل Azure القياسي.
  • إرفاق عنوان IP عام بواجهة شبكة المثيل.

مع أجهزة افتراضية ذات مثيل واحد ومجموعات Virtual Machine Scale Sets مع تنسيق موحد، يتم توفير الاتصال الصادر تلقائيا.

تتضمن السيناريوهات الشائعة التي تتطلب اتصالاً صريحاً بالصادر ما يلي:

  • تفعيل الآلة الافتراضية في Windows يتطلب منك تحديد الاتصال الصادر من مثيل الجهاز الافتراضي إلى خدمة إدارة مفاتيح التفعيل في Windows (KMS). راجع Trouble Windows مشاكل تفعيل الآلة الافتراضية لمزيد من المعلومات.
  • الوصول إلى حسابات التخزين أو Key Vault. يمكن أيضا إنشاء الاتصال بخدمات Azure عبر Private Link.

راجع الوصول الخارجي الافتراضي في Azure لمزيد من التفاصيل حول تعريف الاتصالات الصادرة الآمنة.

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

لمزيد من المعلومات حول Azure الشبكات الافتراضية، راجع نظرة عامة على الشبكات الافتراضية Azure.