مشاركة عبر


عزل الشبكة الظاهرية المدارة لمساحة العمل

ينطبق على:ملحق ML Azure CLI v2 (الحالي)Python SDK azure-ai-ml v2 (الحالي)

يوفر التعلم الآلي من Azure الدعم لعزل الشبكة الظاهرية المدارة (الشبكة الظاهرية المدارة). يعمل عزل الشبكة الظاهرية المدارة على تبسيط تكوين عزل الشبكة وأتمتته باستخدام شبكة ظاهرية مدارة مضمنة على مستوى مساحة عمل Azure Machine Learning. تؤمن الشبكة الظاهرية المدارة موارد التعلم الآلي من Azure المدارة، مثل مثيلات الحوسبة ومجموعات الحوسبة والحوسبة بلا خادم ونقاط النهاية المدارة عبر الإنترنت.

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

بنية الشبكة الظاهرية المدارة

عند تمكين عزل الشبكة الظاهرية المدارة، يتم إنشاء شبكة ظاهرية مدارة لمساحة العمل. تستخدم موارد الحوسبة المدارة التي تقوم بإنشائها لمساحة العمل هذه الشبكة الظاهرية المدارة تلقائيا. يمكن للشبكة الظاهرية المدارة استخدام نقاط نهاية خاصة لموارد Azure التي تستخدمها مساحة العمل الخاصة بك، مثل Azure Storage وAzure Key Vault وAzure Container Registry.

هناك وضعان مختلفان للتكوين لحركة المرور الصادرة من الشبكة الظاهرية المدارة:

تلميح

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

الوضع الصادر الوصف السيناريوهات
السماح بالإنترنت الصادر السماح لجميع نسبة استخدام الشبكة الصادرة عبر الإنترنت من الشبكة الظاهرية المدارة. تريد الوصول غير المقيد إلى موارد التعلم الآلي على الإنترنت، مثل حزم python أو النماذج المدربة مسبقا.1
السماح بالصادرة المعتمدة فقط يسمح بنسبة استخدام الشبكة الصادرة عن طريق تحديد علامات الخدمة. * تريد تقليل مخاطر النقل غير المصرح به للبيانات، ولكن تحتاج إلى إعداد جميع أدوات التعلم الآلي المطلوبة في بيئتك الخاصة.
* تريد تكوين الوصول الصادر إلى قائمة معتمدة من الخدمات أو علامات الخدمة أو FQDNs.
⁧⁩مُعطل⁧⁩ نسبة استخدام الشبكة الواردة والصادرة غير مقيدة أو أنك تستخدم شبكة Azure الظاهرية الخاصة بك لحماية الموارد. تريد عام وارد وصادر من مساحة العمل، أو كنت تتعامل مع عزل الشبكة مع شبكة Azure الظاهرية الخاصة بك.
  1. يمكنك استخدام القواعد الصادرة مع السماح فقط بوضع الصادر المعتمد لتحقيق نفس النتيجة مثل استخدام السماح بالإنترنت الصادر. الاختلافات هي:
  • يجب إضافة قواعد لكل اتصال صادر تحتاج إلى السماح به.
  • تؤدي إضافة قواعد FQDN الصادرة إلى زيادة تكاليفك لأن نوع القاعدة هذا يستخدم Azure Firewall. لمزيد من المعلومات، راجع التسعير
  • تم تصميم القواعد الافتراضية للسماح بالصادرة المعتمدة فقط لتقليل مخاطر النقل غير المصرح للبيانات. قد تزيد أي قواعد صادرة تضيفها من خطرك.

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

يوضح الرسم التخطيطي التالي شبكة ظاهرية مدارة تم تكوينها للسماح الصادرة عبر الإنترنت :

رسم تخطيطي لعزل الشبكة الظاهرية المدارة التي تم تكوينها للإنترنت الصادر.

يوضح الرسم التخطيطي التالي شبكة ظاهرية مدارة تم تكوينها تسمح فقطالصادرة المعتمدة :

ملاحظة

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

رسم تخطيطي لعزل الشبكة الظاهرية المدارة الذي تم تكوينه للسماح بالصادرة المعتمدة فقط.

ملاحظة

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

Azure Machine Learning Studio

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

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

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

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

الموارد المقترنة الآمنة

إذا أضفت الخدمات التالية إلى الشبكة الظاهرية باستخدام نقطة نهاية خدمة أو نقطة نهاية خاصة (تعطيل الوصول العام)، فاسمح لخدمات Microsoft الموثوق بها بالوصول إلى هذه الخدمات:

الخدمة معلومات نقطة النهاية السماح بالمعلومات الموثوق بها
Azure Key Vault نقطة نهاية الخدمة
نقطة نهاية خاصة
السماح بخدمات Microsoft الموثوق بها لتجاوز جدار الحماية هذا
حساب تخزين Azure الخدمة ونقطة النهاية الخاصة
نقطة نهاية خاصة
منح حق الوصول من مثيلات موارد Azure
أو
منح حق الوصول إلى خدمات Azure الموثوق بها
سجل حاويات Azure نقطة النهاية الخاصة السماح بالخدمات الموثوقة

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

قبل اتباع الخطوات الواردة في هذه المقالة، تأكد من توفر المتطلبات الأساسية التالية لديك:

  • اشتراك Azure. إذا لم يكن لديك اشتراك Azure، فبادر بإنشاء حساب مجاني قبل البدء. جرّب الإصدار المجاني أو المدفوع من «التعلم الآلي» من Azure.

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

    للحصول على معلومات بشأن تسجيل موفري الموارد، راجع حل الأخطاء لتسجيل موفر المورد.

  • تتطلب هوية Azure التي تستخدمها عند نشر شبكة مدارة إجراءات التحكم في الوصول المستندة إلى الدور (Azure RBAC) التالية لإنشاء نقاط نهاية خاصة:

    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/read
    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/write
  • Azure CLI والملحق ml إلى Azure CLI. لمزيد من المعلومات، راجع تثبيت وإعداد واستخدام واجهة مستوى الاستدعاء (CLI) (الإصدار 2).

    تلميح

    تم تقديم Azure التعلم الآلي VNet المدارة في 23 مايو 2023. إذا كان لديك إصدار أقدم من ملحق ml، فقد تحتاج إلى تحديثه للأمثلة الواردة في هذه المقالة. لتحديث الملحق، استخدم أمر Azure CLI التالي:

    az extension update -n ml
    
  • تفترض أمثلة CLI في هذه المقالة أنك تستخدم واجهة Bash (أو متوافقة). على سبيل المثال، من النظام الخاص بـ Linux أو نظام Windows الفرعي لـ Linux‬.

  • تستخدم ws أمثلة Azure CLI في هذه المقالة لتمثيل اسم مساحة العمل، ولتمثيل rg اسم مجموعة الموارد. قم بتغيير هذه القيم حسب الحاجة عند استخدام الأوامر مع اشتراك Azure الخاص بك.

  • اشتراك Azure. إذا لم يكن لديك اشتراك Azure، فبادر بإنشاء حساب مجاني قبل البدء. جرّب الإصدار المجاني أو المدفوع من «التعلم الآلي» من Azure.

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

    للحصول على معلومات بشأن تسجيل موفري الموارد، راجع حل الأخطاء لتسجيل موفر المورد.

  • تتطلب هوية Azure التي تستخدمها عند نشر شبكة مدارة إجراءات التحكم في الوصول المستندة إلى الدور (Azure RBAC) التالية لإنشاء نقاط نهاية خاصة:

    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/read
    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/write
  • Azure التعلم الآلي Python SDK v2. لمزيد من المعلومات حول SDK، راجع تثبيت Python SDK v2 ل Azure التعلم الآلي.

    تلميح

    تم تقديم Azure التعلم الآلي VNet المدارة في 23 مايو 2023. إذا كان لديك إصدار أقدم من SDK مثبتا، فقد تحتاج إلى تحديثه حتى تعمل الأمثلة الواردة في هذه المقالة. لتحديث SDK، استخدم الأمر التالي:

    pip install --upgrade azure-ai-ml azure-identity
    
  • تفترض الأمثلة في هذه المقالة أن التعليمات البرمجية الخاصة بك تبدأ ب Python التالية. تستورد هذه التعليمات البرمجية الفئات المطلوبة عند إنشاء مساحة عمل مع شبكة ظاهرية مدارة، وتعين متغيرات لاشتراك Azure ومجموعة الموارد الخاصة بك، وتنشئ ml_client:

    from azure.ai.ml import MLClient
    from azure.ai.ml.entities import (
        Workspace,
        ManagedNetwork,
        IsolationMode,
        ServiceTagDestination,
        PrivateEndpointDestination,
        FqdnDestination
    )
    from azure.identity import DefaultAzureCredential
    
    # Replace with the values for your Azure subscription and resource group.
    subscription_id = "<SUBSCRIPTION_ID>"
    resource_group = "<RESOURCE_GROUP>"
    
    # get a handle to the subscription
    ml_client = MLClient(DefaultAzureCredential(), subscription_id=subscription_id, resource_group_name=resource_group)
    
  • اشتراك Azure. إذا لم يكن لديك اشتراك Azure، فبادر بإنشاء حساب مجاني قبل البدء. جرّب الإصدار المجاني أو المدفوع من «التعلم الآلي» من Azure.

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

    للحصول على معلومات بشأن تسجيل موفري الموارد، راجع حل الأخطاء لتسجيل موفر المورد.

  • تتطلب هوية Azure التي تستخدمها عند نشر شبكة مدارة إجراءات التحكم في الوصول المستندة إلى الدور (Azure RBAC) التالية لإنشاء نقاط نهاية خاصة:

    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/read
    • Microsoft.MachineLearningServices/workspaces/privateEndpointConnections/write

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

توصي Microsoft بتعيين دور Azure الذكاء الاصطناعي Enterprise Network Connection Approver إلى الهوية المدارة. تحتوي القائمة التالية على أنواع الموارد الهدف لنقطة النهاية الخاصة التي يغطيها دور Azure الذكاء الاصطناعي Enterprise Network Connection Approver :

  • Azure Application Gateway
  • Azure Monitor
  • Azure الذكاء الاصطناعي Search
  • مراكز الأحداث
  • قاعدة بيانات Azure SQL
  • تخزين Azure
  • مساحة عمل Azure Machine Learning
  • سجل التعلم الآلي من Azure
  • Azure الذكاء الاصطناعي Foundry
  • Azure Key Vault
  • Azure Cosmos DB
  • قاعدة بيانات Azure لـ MySQL
  • قاعدة بيانات Azure ل PostgreSQL
  • خدمات الذكاء الاصطناعي في Azure
  • ذاكرة التخزين المؤقت في Azure لـ Redis
  • سجل الحاوية
  • إدارة واجهة برمجة التطبيقات

إذا كنت ترغب في إنشاء دور مخصص بدلا من ذلك، راجع دور Azure الذكاء الاصطناعي Enterprise Network Connection Approver لإضافة الإجراءات المحددة لكل نوع مورد.

لإنشاء قواعد خاصة صادرة لنقطة النهاية لاستهداف أنواع الموارد التي لا يغطيها دور Azure الذكاء الاصطناعي Enterprise Network Connection Approver ، يوصى بدور مخصص محدد النطاق. يجب تعريف الدور بالإجراءات اللازمة للموافقة على اتصالات نقطة النهاية الخاصة على أنواع الموارد الهدف. ومن أمثلة أنواع الموارد هذه Azure Data Factory وAzure Databricks وAzure Function Apps.

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

تكوين شبكة ظاهرية مدارة للسماح بالإنترنت الصادر

تلميح

يتم تأجيل إنشاء VNet المدارة حتى يتم إنشاء مورد حساب أو بدء التوفير يدويا. عند السماح بالإنشاء التلقائي، قد يستغرق الأمر حوالي 30 دقيقة لإنشاء مورد الحوسبة الأول لأنه يقوم أيضا بتوفير الشبكة. لمزيد من المعلومات، راجع توفير الشبكة يدويا.

هام

إذا كنت تخطط لإرسال مهام Spark بلا خادم، فيجب عليك بدء التوفير يدويا. لمزيد من المعلومات، راجع قسم تكوين وظائف Spark بلا خادم.

لتكوين شبكة ظاهرية مدارة تسمح بالاتصالات الصادرة عبر الإنترنت، يمكنك استخدام معلمة --managed-network allow_internet_outbound أو ملف تكوين YAML الذي يحتوي على الإدخالات التالية:

managed_network:
  isolation_mode: allow_internet_outbound

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

managed_network:
  isolation_mode: allow_internet_outbound
  outbound_rules:
  - name: added-perule
    destination:
      service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
      spark_enabled: true
      subresource_target: blob
    type: private_endpoint

يمكنك تكوين شبكة ظاهرية مدارة باستخدام الأوامر az ml workspace create أو az ml workspace update:

ينشئ المثال التالي مساحة عمل جديدة. المعلمة --managed-network allow_internet_outbound تكوين شبكة ظاهرية مدارة لمساحة العمل:

az ml workspace create --name ws --resource-group rg --managed-network allow_internet_outbound

لإنشاء مساحة عمل باستخدام ملف YAML بدلا من ذلك، استخدم المعلمة --file وحدد ملف YAML الذي يحتوي على إعدادات التكوين:

az ml workspace create --file workspace.yaml --resource-group rg --name ws

يعرف مثال YAML التالي مساحة عمل مع شبكة ظاهرية مدارة:

name: myworkspace
location: EastUS
managed_network:
    isolation_mode: allow_internet_outbound

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

ينشئ المثال التالي مساحة عمل جديدة باسم myworkspace، مع قاعدة صادرة تسمى myrule تضيف نقطة نهاية خاصة لمخزن Azure Blob:

# Basic managed VNet configuration
network = ManagedNetwork(IsolationMode.ALLOW_INTERNET_OUTBOUND)

# Workspace configuration
ws = Workspace(
    name="myworkspace",
    location="eastus",
    managed_network=network
)

# Example private endpoint outbound to a blob
rule_name = "myrule"
service_resource_id = "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>"
subresource_target = "blob"
spark_enabled = True

# Add the outbound 
ws.managed_network.outbound_rules = [PrivateEndpointDestination(
    name=rule_name, 
    service_resource_id=service_resource_id, 
    subresource_target=subresource_target, 
    spark_enabled=spark_enabled)]

# Create the workspace
ws = ml_client.workspaces.begin_create(ws).result()
  1. سجل الدخول إلى مدخل Microsoft Azure، واختر Azure التعلم الآلي من قائمة إنشاء مورد.

  2. قم بتوفير المعلومات المطلوبة في علامة التبويب الأساسيات .

  3. من علامة التبويب Networking، حدد Private with Internet Outbound.

    لقطة شاشة لإنشاء مساحة عمل باستخدام شبكة ظاهرية مدارة صادرة عبر الإنترنت.

  4. لإضافة قاعدة صادرة، حدد Add user-defined outbound rules من علامة التبويب Networking.من الشريط الجانبي لقواعد مساحة العمل الصادرة، قم بتوفير المعلومات التالية:

    • اسم القاعدة: اسم للقاعدة. يجب أن يكون الاسم فريدا لمساحة العمل هذه.
    • نوع الوجهة: نقطة النهاية الخاصة هي الخيار الوحيد عندما يكون عزل الشبكة خاصا مع الإنترنت الصادر. لا تدعم الشبكة الظاهرية المدارة من Azure Machine Learning إنشاء نقطة نهاية خاصة لجميع أنواع موارد Azure. للحصول على قائمة بالموارد المدعومة ، راجع قسم نقاط النهاية الخاصة.
    • الاشتراك: الاشتراك الذي يحتوي على مورد Azure الذي تريد إضافة نقطة نهاية خاصة له.
    • مجموعة الموارد: مجموعة الموارد التي تحتوي على مورد Azure الذي تريد إضافة نقطة نهاية خاصة له.
    • نوع المورد: نوع مورد Azure.
    • اسم المورد: اسم مورد Azure.
    • المورد الفرعي: المورد الفرعي لنوع مورد Azure.
    • Spark enabled: حدد هذا الخيار إذا كنت تريد تمكين وظائف Spark بلا خادم لمساحة العمل. يتوفر هذا الخيار فقط إذا كان نوع المورد هو Azure Storage.

    لقطة شاشة لإضافة قاعدة صادرة لنقطة نهاية خاصة.

    حدد حفظ لحفظ القاعدة. يمكنك الاستمرار في استخدام إضافة قواعد صادرة معرفة من قبل المستخدم لإضافة قواعد.

  5. استمر في إنشاء مساحة العمل كالمعتاد.

تكوين شبكة ظاهرية مدارة للسماح بالصادرة المعتمدة فقط

تلميح

يتم توفير الشبكة الظاهرية المدارة تلقائيا عند إنشاء مورد حساب. عند السماح بالإنشاء التلقائي، قد يستغرق الأمر حوالي 30 دقيقة لإنشاء مورد الحوسبة الأول لأنه يقوم أيضا بتوفير الشبكة. إذا قمت بتكوين قواعد FQDN الصادرة، فإن قاعدة FQDN الأولى تضيف حوالي 10 دقائق إلى وقت التوفير. لمزيد من المعلومات، راجع توفير الشبكة يدويا.

هام

إذا كنت تخطط لإرسال مهام Spark بلا خادم، فيجب عليك بدء التوفير يدويا. لمزيد من المعلومات، راجع قسم تكوين وظائف Spark بلا خادم.

لتكوين شبكة ظاهرية مدارة تسمح بالاتصالات الصادرة المعتمدة فقط، يمكنك استخدام معلمة --managed-network allow_only_approved_outbound أو ملف تكوين YAML الذي يحتوي على الإدخالات التالية:

managed_network:
  isolation_mode: allow_only_approved_outbound

يمكنك أيضا تعريف القواعد الصادرة لتعريف الاتصالات الصادرة المعتمدة. يمكن إنشاء قاعدة صادرة لنوع من service_tagو fqdnو.private_endpoint توضح القاعدة التالية إضافة نقطة نهاية خاصة إلى مورد Azure Blob وعلامة خدمة إلى Azure Data Factory وFQDN إلى pypi.org:

هام

  • تعد إضافة صادر لعلامة خدمة أو FQDN صالحة فقط عند تكوين VNet المدارة إلى allow_only_approved_outbound.
  • إذا أضفت قواعد صادرة، فلن تضمن Microsoft النقل غير المصرح للبيانات.

تحذير

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

managed_network:
  isolation_mode: allow_only_approved_outbound
  outbound_rules:
  - name: added-servicetagrule
    destination:
      port_ranges: 80, 8080
      protocol: TCP
      service_tag: DataFactory
    type: service_tag
  - name: add-fqdnrule
    destination: 'pypi.org'
    type: fqdn
  - name: added-perule
    destination:
      service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
      spark_enabled: true
      subresource_target: blob
    type: private_endpoint

يمكنك تكوين شبكة ظاهرية مدارة باستخدام الأوامر az ml workspace create أو az ml workspace update:

يستخدم المثال التالي المعلمة --managed-network allow_only_approved_outbound لتكوين الشبكة الظاهرية المدارة:

az ml workspace create --name ws --resource-group rg --managed-network allow_only_approved_outbound

يعرف ملف YAML التالي مساحة عمل مع شبكة ظاهرية مدارة:

name: myworkspace
location: EastUS
managed_network:
    isolation_mode: allow_only_approved_outbound

لإنشاء مساحة عمل باستخدام ملف YAML، استخدم المعلمة --file :

az ml workspace create --file workspace.yaml --resource-group rg --name ws

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

الوجهة الفصل
خدمة Azure التي تعتمد عليها مساحة العمل PrivateEndpointDestination
علامة خدمة Azure ServiceTagDestination
اسم المجال المؤهل بالكامل (FQDN) FqdnDestination

ينشئ المثال التالي مساحة عمل جديدة باسم myworkspace، مع العديد من القواعد الصادرة:

  • myrule - إضافة نقطة نهاية خاصة لمخزن Azure Blob.
  • datafactory - إضافة قاعدة علامة خدمة للاتصال ب Azure Data Factory.

هام

  • تعد إضافة صادر لعلامة خدمة أو FQDN صالحة فقط عند تكوين VNet المدارة إلى IsolationMode.ALLOW_ONLY_APPROVED_OUTBOUND.
  • إذا أضفت قواعد صادرة، فلن تضمن Microsoft النقل غير المصرح للبيانات.

تحذير

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

# Basic managed VNet configuration
network = ManagedNetwork(IsolationMode.ALLOW_ONLY_APPROVED_OUTBOUND)

# Workspace configuration
ws = Workspace(
    name="myworkspace",
    location="eastus",
    managed_network=network
)

# Append some rules
ws.managed_network.outbound_rules = []
# Example private endpoint outbound to a blob
rule_name = "myrule"
service_resource_id = "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>"
subresource_target = "blob"
spark_enabled = True
ws.managed_network.outbound_rules.append(
    PrivateEndpointDestination(
        name=rule_name, 
        service_resource_id=service_resource_id, 
        subresource_target=subresource_target, 
        spark_enabled=spark_enabled
    )
)

# Example service tag rule
rule_name = "datafactory"
service_tag = "DataFactory"
protocol = "TCP"
port_ranges = "80, 8080-8089"
ws.managed_network.outbound_rules.append(
    ServiceTagDestination(
        name=rule_name, 
        service_tag=service_tag, 
        protocol=protocol, 
        port_ranges=port_ranges
    )
)

# Example FQDN rule
ws.managed_network.outbound_rules.append(
    FqdnDestination(
        name="fqdnrule", 
        destination="pypi.org"
    )
)

# Create the workspace
ws = ml_client.workspaces.begin_create(ws).result()
  1. سجل الدخول إلى مدخل Microsoft Azure، واختر Azure التعلم الآلي من قائمة إنشاء مورد.

  2. قم بتوفير المعلومات المطلوبة في علامة التبويب الأساسيات .

  3. من علامة التبويب Networking، حدد Private with Approved Outbound.

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

  4. لإضافة قاعدة صادرة، حدد Add user-defined outbound rules من علامة التبويب Networking.من الشريط الجانبي لقواعد مساحة العمل الصادرة، قم بتوفير المعلومات التالية:

    • اسم القاعدة: اسم للقاعدة. يجب أن يكون الاسم فريدا لمساحة العمل هذه.
    • نوع الوجهة: نقطة نهاية خاصة أو علامة الخدمة أو FQDN. تتوفر علامة الخدمة وFQDN فقط عندما يكون عزل الشبكة خاصا مع موافقة صادرة.

    إذا كان نوع الوجهة هو نقطة نهاية خاصة، فوفر المعلومات التالية:

    • الاشتراك: الاشتراك الذي يحتوي على مورد Azure الذي تريد إضافة نقطة نهاية خاصة له.
    • مجموعة الموارد: مجموعة الموارد التي تحتوي على مورد Azure الذي تريد إضافة نقطة نهاية خاصة له.
    • نوع المورد: نوع مورد Azure.
    • اسم المورد: اسم مورد Azure.
    • المورد الفرعي: المورد الفرعي لنوع مورد Azure.
    • Spark enabled: حدد هذا الخيار إذا كنت تريد تمكين وظائف Spark بلا خادم لمساحة العمل. يتوفر هذا الخيار فقط إذا كان نوع المورد هو Azure Storage.

    تلميح

    لا يدعم Azure التعلم الآلي VNet المدار إنشاء نقطة نهاية خاصة لجميع أنواع موارد Azure. للحصول على قائمة بالموارد المدعومة ، راجع قسم نقاط النهاية الخاصة.

    لقطة شاشة لتحديث شبكة صادرة معتمدة عن طريق إضافة نقطة نهاية خاصة.

    إذا كان نوع الوجهة هو علامة الخدمة، فوفر المعلومات التالية:

    • علامة الخدمة: علامة الخدمة المراد إضافتها إلى القواعد الصادرة المعتمدة.
    • البروتوكول: البروتوكول للسماح بعلامة الخدمة.
    • نطاقات المنافذ: نطاقات المنفذ للسماح بعلامة الخدمة.

    لقطة شاشة لتحديث شبكة صادرة معتمدة عن طريق إضافة علامة خدمة.

    إذا كان نوع الوجهة هو FQDN، فوفر المعلومات التالية:

    تحذير

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

    • وجهة FQDN: اسم المجال المؤهل بالكامل لإضافته إلى القواعد الصادرة المعتمدة.

    لقطة شاشة لتحديث شبكة صادرة معتمدة عن طريق إضافة قاعدة FQDN لشبكة ظاهرية مدارة صادرة معتمدة.

    حدد حفظ لحفظ القاعدة. يمكنك الاستمرار في استخدام إضافة قواعد صادرة معرفة من قبل المستخدم لإضافة قواعد.

  5. استمر في إنشاء مساحة العمل كالمعتاد.

تكوين لمهام Spark بلا خادم

تلميح

الخطوات الواردة في هذا القسم مطلوبة فقط إذا كنت تخطط لإرسال مهام Spark بلا خادم. إذا كنت لن تقوم بإرسال مهام Spark بلا خادم، يمكنك تخطي هذا القسم.

لتمكين مهام Spark بلا خادم للشبكة الظاهرية المدارة، يجب تنفيذ الإجراءات التالية:

  • تكوين شبكة ظاهرية مدارة لمساحة العمل وإضافة نقطة نهاية خاصة صادرة لحساب تخزين Azure.
  • بعد تكوين الشبكة الظاهرية المدارة، قم بتوفيرها ووضع علامة عليها للسماح بوظائف Spark.
  1. تكوين نقطة نهاية خاصة صادرة.

    استخدم ملف YAML لتعريف تكوين الشبكة الظاهرية المدارة وإضافة نقطة نهاية خاصة لحساب تخزين Azure. قم أيضا بتعيين spark_enabled: true:

    تلميح

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

    name: myworkspace
    managed_network:
      isolation_mode: allow_internet_outbound
      outbound_rules:
      - name: added-perule
        destination:
          service_resource_id: /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>
          spark_enabled: true
          subresource_target: blob
        type: private_endpoint
    

    يمكنك استخدام ملف تكوين YAML مع az ml workspace update الأمر عن طريق تحديد المعلمة --file واسم ملف YAML. على سبيل المثال، يقوم الأمر التالي بتحديث مساحة عمل موجودة باستخدام ملف YAML يسمى workspace_pe.yml:

    az ml workspace update --file workspace_pe.yml --resource_group rg --name ws
    

    ملاحظة

    عند تمكين السماح الصادرة المعتمدة فقط (isolation_mode: allow_only_approved_outbound)، يفشل تثبيت تبعيات حزمة conda المحددة في تكوين جلسة Spark. لحل هذه المشكلة، قم بتحميل عجلة حزمة Python مكتفية ذاتيا بدون تبعيات خارجية إلى حساب تخزين Azure وإنشاء نقطة نهاية خاصة إلى حساب التخزين هذا. استخدم المسار إلى عجلة حزمة Python كمعلمة py_files في وظيفة Spark. لن يتجاوز تعيين قاعدة FQDN الصادرة هذه المشكلة لأن نشر قاعدة FQDN غير مدعوم من قبل Spark.

    يوضح المثال التالي كيفية إنشاء شبكة ظاهرية مدارة لمساحة عمل Azure Machine Learning موجودة تسمى myworkspace. كما يضيف نقطة نهاية خاصة لحساب تخزين Azure ويعين spark_enabled=true:

    تلميح

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

    # Get the existing workspace
    ml_client = MLClient(DefaultAzureCredential(), subscription_id, resource_group, "myworkspace")
    ws = ml_client.workspaces.get()
    
    # Basic managed VNet configuration
    ws.managed_network = ManagedNetwork(IsolationMode.ALLOW_INTERNET_OUTBOUND)
    
    # Example private endpoint outbound to a blob
    rule_name = "myrule"
    service_resource_id = "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Storage/storageAccounts/<STORAGE_ACCOUNT_NAME>"
    subresource_target = "blob"
    spark_enabled = True
    
    # Add the outbound 
    ws.managed_network.outbound_rules = [PrivateEndpointDestination(
        name=rule_name, 
        service_resource_id=service_resource_id, 
        subresource_target=subresource_target, 
        spark_enabled=spark_enabled)]
    
    # Create the workspace
    ml_client.workspaces.begin_update(ws)
    

    ملاحظة

    • عند تمكين السماح الصادرة المعتمدة فقط (isolation_mode: allow_only_approved_outbound)، يفشل تثبيت تبعيات حزمة conda المحددة في تكوين جلسة Spark. لحل هذه المشكلة، قم بتحميل عجلة حزمة Python مكتفية ذاتيا بدون تبعيات خارجية إلى حساب تخزين Azure وإنشاء نقطة نهاية خاصة إلى حساب التخزين هذا. استخدم المسار إلى عجلة حزمة Python كمعلمة py_files في وظيفة Spark.
    • إذا تم إنشاء مساحة العمل باستخدام IsolationMode.ALLOW_INTERNET_OUTBOUND، فلا يمكن تحديثها لاحقا لاستخدام IsolationMode.ALLOW_ONLY_APPROVED_OUTBOUND.
    1. سجل الدخول إلى مدخل Microsoft Azure، وحدد مساحة عمل Azure التعلم الآلي.

    2. حدد Networking، ثم حدد Add user-defined outbound rules. أضف قاعدة لحساب تخزين Azure، وتأكد من تحديد تمكين Spark.

      لقطة شاشة لقاعدة نقطة نهاية مع تحديد Spark enabled.

    3. حدد Save لحفظ القاعدة، ثم حدد Save من أعلى Networking لحفظ التغييرات على الشبكة الظاهرية المدارة.

  2. توفير الشبكة الظاهرية المدارة.

    ملاحظة

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

    يوضح المثال التالي كيفية توفير شبكة ظاهرية مدارة لمهام Spark بلا خادم باستخدام المعلمة --include-spark.

    az ml workspace provision-network -g my_resource_group -n my_workspace_name --include-spark
    

    يوضح المثال التالي كيفية توفير شبكة ظاهرية مدارة لمهام Spark بلا خادم:

    # Connect to a workspace named "myworkspace"
    ml_client = MLClient(DefaultAzureCredential(), subscription_id=subscription_id, resource_group_name=resource_group, workspace_name="myworkspace")
    
    # whether to provision Spark vnet as well
    include_spark = True
    
    provision_network_result = ml_client.workspaces.begin_provision_network(workspace_name=ws_name, include_spark=include_spark).result()
    

    من مدخل Microsoft Azure، يمكنك فقط تحديد لتوفير الشبكة المدارة أثناء إنشاء مساحة العمل. للقيام بذلك، حدد Provision managed virtual network من علامة التبويب Outbound access . لتوفير الشبكة المدارة لمهام Spark بلا خادم لمساحة عمل موجودة، يجب استخدام Azure CLI أو Python SDK.

توفير شبكة ظاهرية مدارة يدويا

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

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

بدلا من ذلك، يمكنك استخدام علامة provision_network_now لتوفير الشبكة المدارة كجزء من إنشاء مساحة العمل.

ملاحظة

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

يوضح المثال التالي كيفية توفير شبكة ظاهرية مدارة أثناء إنشاء مساحة العمل.

az ml workspace create -n myworkspace -g my_resource_group --managed-network AllowInternetOutbound --provision-network-now

يوضح المثال التالي كيفية توفير شبكة ظاهرية مدارة يدويا.

تلميح

إذا كنت تخطط لإرسال مهام Spark بلا خادم، أضف المعلمة --include-spark .

az ml workspace provision-network -g my_resource_group -n my_workspace_name

للتحقق من اكتمال التوفير، استخدم الأمر التالي:

az ml workspace show -n my_workspace_name -g my_resource_group --query managed_network

لتوفير الشبكة المدارة أثناء إنشاء مساحة العمل، قم بتعيين علامة provision_network_now إلى True.

provision_network_now: True

يوضح المثال التالي كيفية توفير شبكة ظاهرية مدارة:

# Connect to a workspace named "myworkspace"
ml_client = MLClient(DefaultAzureCredential(), subscription_id=subscription_id, resource_group_name=resource_group, workspace_name="myworkspace")

# whether to provision Spark vnet as well
include_spark = True

provision_network_result = ml_client.workspaces.begin_provision_network(workspace_name=ws_name, include_spark=include_spark).result()

للتحقق من توفير مساحة العمل، استخدم ml_client.workspaces.get() للحصول على معلومات مساحة العمل. managed_network تحتوي الخاصية على حالة الشبكة المدارة.

ws = ml_client.workspaces.get()
print(ws.managed_network.status)

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

قم بتكوين بنيات الصور

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

هام

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

لتحديث مساحة عمل لاستخدام نظام مجموعة حساب أو مثيل حساب لإنشاء صور Docker، استخدم az ml workspace update الأمر مع المعلمة --image-build-compute :

az ml workspace update --name ws --resource-group rg --image-build-compute mycompute

يوضح المثال التالي كيفية تحديث مساحة عمل لاستخدام نظام مجموعة حساب لإنشاء صور:

# import required libraries
from azure.ai.ml import MLClient
from azure.identity import DefaultAzureCredential

subscription_id = "<your subscription ID>"
resource_group = "<your resource group name>"
workspace = "<your workspace name>"

ml_client = MLClient(
    DefaultAzureCredential(), subscription_id=subscription_id, resource_group_name=resource_group, workspace_name=workspace
)

# Get workspace info
ws=ml_client.workspaces.get(name=workspace)
# Update to use cpu-cluster for image builds
ws.image_build_compute="mycompute"
ml_client.workspaces.begin_update(ws)
# To switch back to using ACR to build (if ACR is not in the virtual network):
# ws.image_build_compute = ''
# ml_client.workspaces.begin_update(ws)

لا توجد طريقة لتعيين حساب إنشاء الصورة من مدخل Microsoft Azure. بدلا من ذلك، استخدم Azure CLI أو Python SDK.

إدارة القواعد الصادرة

لسرد قواعد الشبكة الظاهرية الصادرة المدارة لمساحة عمل، استخدم الأمر التالي:

az ml workspace outbound-rule list --workspace-name ws --resource-group rg

لعرض تفاصيل قاعدة الشبكة الظاهرية الصادرة المدارة، استخدم الأمر التالي:

az ml workspace outbound-rule show --rule rule-name --workspace-name ws --resource-group rg

لإزالة قاعدة صادرة من الشبكة الظاهرية المدارة، استخدم الأمر التالي:

az ml workspace outbound-rule remove --rule rule-name --workspace-name ws --resource-group rg

يوضح المثال التالي كيفية إدارة القواعد الصادرة لمساحة عمل تسمى myworkspace:

# Connect to the workspace
ml_client = MLClient(DefaultAzureCredential(), subscription_id=subscription_id, resource_group_name=resource_group, workspace_name="myworkspace")

# Specify the rule name
rule_name = "<some-rule-name>"

# Get a rule by name
rule = ml_client._workspace_outbound_rules.get(resource_group, ws_name, rule_name)

# List rules for a workspace
rule_list = ml_client._workspace_outbound_rules.list(resource_group, ws_name)

# Delete a rule from a workspace
ml_client._workspace_outbound_rules.begin_remove(resource_group, ws_name, rule_name).result()
  1. سجل الدخول إلى مدخل Microsoft Azure، وحدد مساحة عمل التعلم الآلي من Azure التي تريد تمكين عزل الشبكة الظاهرية المدارة لها.

  2. حدد Networking. يسمح لك قسم الوصول الصادر لمساحة العمل بإدارة القواعد الصادرة.

    لقطة شاشة لقسم القواعد الصادرة.

  • لإضافة قاعدة صادرة، حدد Add user-defined outbound rules من علامة التبويب Networking.من الشريط الجانبي لقواعد مساحة العمل الصادرة، قم بتوفير المعلومات التالية:

  • لتمكين قاعدة أو تعطيلها، استخدم التبديل في العمود نشط.

  • لحذفقاعدة صادرة، حدد حذف للقاعدة.

قائمة القواعد المطلوبة

نقاط النهاية الخاصة:

  • عندما يكون وضع العزل للشبكة الظاهرية المدارة Allow internet outbound، يتم إنشاء القواعد الصادرة لنقطة النهاية الخاصة تلقائيا كالقواعد المطلوبة من الشبكة الظاهرية المدارة لمساحة العمل والموارد المقترنة مع تعطيل الوصول إلى الشبكة العامة (Key Vault وحساب التخزين وسجل الحاوية ومساحة عمل التعلم الآلي من Azure).
  • عندما يكون وضع العزل للشبكة الظاهرية المدارة Allow only approved outbound، يتم إنشاء القواعد الصادرة لنقطة النهاية الخاصة تلقائيا كالقواعد المطلوبة من الشبكة الظاهرية المدارة لمساحة العمل والموارد المقترنة بغض النظر عن وضع الوصول إلى الشبكة العامة لتلك الموارد (Key Vault وحساب التخزين وسجل الحاوية ومساحة عمل التعلم الآلي من Azure).
  • تتم إضافة هذه القواعد تلقائيا إلى الشبكة الظاهرية المدارة.

لكي يعمل التعلم الآلي من Azure بشكل طبيعي، هناك مجموعة من علامات الخدمة المطلوبة، المطلوبة إما في إعداد شبكة ظاهرية مدارة أو مخصصة. لا توجد بدائل لاستبدال بعض علامات الخدمة المطلوبة. يصف الجدول التالي كل علامة خدمة مطلوبة والغرض منها داخل التعلم الآلي من Azure.

قاعدة علامة الخدمة الواردة أو الصادرة الغرض
AzureMachineLearning وارد إنشاء مثيل/مجموعة حساب Azure التعلم الآلي وتحديثه وحذفه.
AzureMachineLearning صادر استخدام خدمات التعلم الآلي من Azure. يستخدم Python intellisense في دفاتر الملاحظات المنفذ 18881. يستخدم إنشاء مثيل حساب Azure التعلم الآلي وتحديثه وحذفه المنفذ 5831.
AzureActiveDirectory صادر المصادقة باستخدام معرف Microsoft Entra.
BatchNodeManagement.region صادر الاتصال بالواجهة الخلفية ل Azure Batch لمثيلات/مجموعات حساب Azure التعلم الآلي.
AzureResourceManager صادر إنشاء موارد Azure باستخدام Azure التعلم الآلي وAzure CLI وAzure التعلم الآلي SDK.
AzureFrontDoor.FirstParty صادر قم بالوصول إلى صور عامل الإرساء المقدمة من Microsoft.
MicrosoftContainerRegistry صادر قم بالوصول إلى صور عامل الإرساء المقدمة من Microsoft. قم بإعداد موجه التعلم الآلي من Azure لخدمة Azure Kubernetes.
AzureMonitor صادر يستخدم لتسجيل المراقبة والمقاييس إلى Azure Monitor. مطلوب فقط إذا لم يتم تأمين Azure Monitor لمساحة العمل. يتم استخدام هذا الصادر أيضا لتسجيل المعلومات لحوادث الدعم.
VirtualNetwork صادر مطلوب عندما تكون نقاط النهاية الخاصة موجودة في الشبكة الظاهرية أو الشبكات الظاهرية النظيرة.

ملاحظة

علامات الخدمة على أنها حدود الأمان فقط غير كافية. لعزل مستوى المستأجر، استخدم نقاط النهاية الخاصة عندما يكون ذلك ممكنا.

قائمة بالقواعد الصادرة المحددة للسيناريو

السيناريو: الوصول إلى حزم التعلم الآلي العامة

للسماح بتثبيت حزم Python للتدريب والنشر، أضف قواعد FQDN الصادرة للسماح بحركة المرور إلى أسماء المضيفين التالية:

تحذير

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

ملاحظة

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

اسم المضيف الغرض
anaconda.com
*.anaconda.com
تستخدم لتثبيت الحزم الافتراضية.
*.anaconda.org تستخدم للحصول على بيانات المستودع.
pypi.org يُستخدم لسرد التبعيات من الفهرس الافتراضي، إن وجد، ولا تتم الكتابة فوق الفهرس بواسطة إعدادات المستخدم. إذا تم الكتابة فوق الفهرس، فيجب عليك أيضا السماح .*.pythonhosted.org
pytorch.org
*.pytorch.org
يتم استخدامه من قبل بعض الأمثلة استنادًا إلى PyTorch.
*.tensorflow.org يستخدم من قبل بعض الأمثلة استنادا إلى TensorFlow.

السيناريو: استخدام Visual Studio Code لسطح المكتب أو الويب مع مثيل الحساب

إذا كنت تخطط لاستخدام Visual Studio Code مع Azure التعلم الآلي، أضف قواعد FQDN الصادرة للسماح بحركة المرور إلى المضيفين التاليين:

ملاحظة

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

اسم المضيف الغرض
*.vscode.dev
*.vscode-unpkg.net
*.vscode-cdn.net
*.vscodeexperiments.azureedge.net
default.exp-tas.com
مطلوب للوصول إلى vscode.dev (Visual Studio Code للويب)
code.visualstudio.com مطلوب لتنزيل وتثبيت سطح مكتب VS Code. هذا المضيف غير مطلوب ل VS Code Web.
update.code.visualstudio.com
*.vo.msecnd.net
يتم استخدامه لاسترداد وحدات بت خادم VS Code، والتي تم تثبيتها على مثيل الحساب من خلال برنامج نصي للإعداد.
marketplace.visualstudio.com
vscode.blob.core.windows.net
*.gallerycdn.vsassets.io
مطلوب لتنزيل وتثبيت ملحقات VS Code. تمكن هذه المضيفات الاتصال البعيد لحساب المثيلات. لمزيد من المعلومات، راجع إدارة موارد التعلم الآلي من Azure في VS Code.
vscode.download.prss.microsoft.com يستخدم لتنزيل Visual Studio Code CDN

السيناريو: استخدام نقاط نهاية الدفعة أو ParallelRunStep

إذا كنت تخطط لاستخدام نقاط نهاية دفعة Azure التعلم الآلي للنشر أو ParallelRunStep، أضف قواعد نقطة النهاية الخاصة الصادرة للسماح بنسبة استخدام الشبكة إلى الموارد الفرعية التالية لحساب التخزين الافتراضي:

  • queue
  • table
  • نقطة نهاية خاصة لخدمات الذكاء الاصطناعي Azure
  • نقطة نهاية خاصة إلى Azure الذكاء الاصطناعي Search

السيناريو: استخدام نماذج HuggingFace

إذا كنت تخطط لاستخدام نماذج HuggingFace مع Azure التعلم الآلي، أضف قواعد FQDN الصادرة للسماح بنسبة استخدام الشبكة إلى المضيفين التاليين:

تحذير

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

  • docker.io
  • *.docker.io
  • *.docker.com
  • production.cloudflare.docker.com
  • cdn.auth0.com
  • cdn-lfs.huggingface.co

السيناريو: تمكين الوصول من عناوين IP المحددة

إذا كنت تريد تمكين الوصول من عناوين IP معينة، فاستخدم الإجراءات التالية:

  1. أضف قاعدة نقطة نهاية خاصة صادرة للسماح بنسبة استخدام الشبكة إلى مساحة عمل Azure التعلم الآلي. تسمح هذه القاعدة لمثيلات الحساب التي تم إنشاؤها في الشبكة الظاهرية المدارة بالوصول إلى مساحة العمل.

    تلميح

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

  2. تمكين الوصول إلى الشبكة العامة إلى مساحة العمل. لمزيد من المعلومات، راجع تمكين الوصول إلى الشبكة العامة.

  3. أضف عناوين IP الخاصة بك إلى جدار الحماية ل Azure التعلم الآلي. لمزيد من المعلومات، راجع تمكين الوصول فقط من نطاقات IP.

    ملاحظة

    يتم دعم عناوين IPv4 فقط.

لمزيد من المعلومات، راجع تكوين ارتباط خاص.

نقاط النهاية الخاصة

نقاط النهاية الخاصة مدعومة حاليا لخدمات Azure التالية:

  • Azure Machine Learning  
  • سجلات Azure التعلم الآلي
  • تخزين Azure (جميع أنواع الموارد الفرعية)
  • Azure Container Registry
  • Azure Key Vault
  • خدماتالذكاء الاصطناعي في Azure
  • Azure الذكاء الاصطناعي Search (البحث المعرفي سابقا)
  • Azure SQL Server
  • Azure Data Factory
  • Azure Cosmos DB (جميع أنواع الموارد الفرعية)
  • مرَاكز أحدَاث Azure
  • ذاكرة Azure Redis المؤقتة
  • Azure Databricks
  • قاعدة بيانات Azure لـ MariaDB
  • Azure Database لـ PostgreSQL خادم واحد
  • الخادم المرن من Azure Database for PostgreSQL
  • قاعدة بيانات Azure لـ MySQL
  • إدارة واجهة برمجة تطبيقات Azure
    • دعم المستوى الكلاسيكي فقط دون حقن VNET وطبقة V2 القياسية مع تكامل الشبكة الظاهرية. لمزيد من التفاصيل حول الشبكات الظاهرية لإدارة واجهة برمجة التطبيقات، راجع مفاهيم الشبكة الظاهرية
  • Application Insights (من خلال PrivateLinkScopes)

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

عند إنشاء نقطة نهاية خاصة لموارد تبعية Azure التعلم الآلي، مثل Azure Storage وAzure Container Registry وAzure Key Vault، يمكن أن يكون المورد في اشتراك Azure مختلف. ومع ذلك، يجب أن يكون المورد في نفس المستأجر مثل مساحة عمل Azure التعلم الآلي.

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

الموافقة على نقاط النهاية الخاصة

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

نوصي بتعيين دور Azure الذكاء الاصطناعي Enterprise Network Connection Approver، أو دور مخصص مع أذونات اتصال نقطة النهاية الخاصة الضرورية، على أنواع الموارد الهدف. للسماح لخدمات التعلم الآلي من Azure بالموافقة على اتصالات نقطة النهاية الخاصة بموارد Azure المستهدفة، امنح هذا الدور للهوية المدارة لمساحة عمل التعلم الآلي من Azure.

فيما يلي قائمة أنواع الموارد المستهدفة لنقطة النهاية الخاصة التي يغطيها دور Azure الذكاء الاصطناعي Enterprise Network Connection Approver:

  • Azure Application Gateway
  • Azure Monitor
  • Azure الذكاء الاصطناعي Search
  • مراكز الأحداث
  • قاعدة بيانات Azure SQL
  • تخزين Azure
  • مساحة عمل Azure Machine Learning
  • سجل التعلم الآلي من Azure
  • Azure الذكاء الاصطناعي Foundry
  • Azure Key Vault
  • Azure Cosmos DB
  • قاعدة بيانات Azure لـ MySQL
  • قاعدة بيانات Azure ل PostgreSQL
  • خدمات الذكاء الاصطناعي في Azure
  • ذاكرة التخزين المؤقت في Azure لـ Redis
  • سجل الحاوية
  • إدارة واجهة برمجة التطبيقات

لإنشاء قواعد صادرة لنقطة النهاية الخاصة لاستهداف أنواع الموارد غير المشمولة بدور Azure الذكاء الاصطناعي Enterprise Network Connection Approver، يوصى بدور مخصص محدد النطاق. يجب أن تحدد القاعدة الإجراءات اللازمة للموافقة على اتصالات نقطة النهاية الخاصة على أنواع الموارد الهدف. ومن أمثلة أنواع الموارد هذه Azure Data Factory وAzure Databricks وAzure Function Apps.

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

حدد إصدار جدار حماية Azure للصادرة المسموح بها فقط

يتم نشر جدار حماية Azure إذا تم إنشاء قاعدة صادرة FQDN أثناء السماح بوضع الصادرة المعتمدة فقط. يتم تضمين رسوم جدار حماية Azure في الفوترة. بشكل افتراضي، يتم إنشاء إصدار قياسي من AzureFirewall. اختياريا، يمكنك تحديد لاستخدام إصدار أساسي. يمكنك تغيير إصدار جدار الحماية المستخدم حسب الحاجة. لمعرفة الإصدار الأفضل لك، تفضل بزيارة اختر إصدار جدار حماية Azure المناسب.

هام

لا يتم إنشاء جدار الحماية حتى تقوم بإضافة قاعدة FQDN صادرة. لمزيد من المعلومات حول التسعير، راجع تسعير جدار حماية Azure وعرض الأسعار للإصدار القياسي . التصفية المستندة إلى عنوان URL مدعومة فقط مع Premium SKU Azure Firewall، وليس Basic أو Standard SKU Azure Firewall. لا تدعم الشبكة الظاهرية المدارة Premium SKU Azure Firewall.

بعد تحديد وضع السماح الصادر المعتمد فقط، يظهر خيار لتحديد إصدار Azure Firewall (SKU). حدد Standard لاستخدام الإصدار القياسي أو Basic لاستخدام الإصدار الأساسي. حدد Save لحفظ التكوين.

لتكوين إصدار جدار الحماية من CLI، استخدم ملف YAML وحدد firewall_sku. يوضح المثال التالي ملف YAML الذي يعين جدار الحماية SKU إلى basic:

name: test-ws
resource_group: test-rg
location: eastus2 
managed_network:
  isolation_mode: allow_only_approved_outbound
  outbound_rules:
  - category: required
    destination: 'contoso.com'
    name: contosofqdn
    type: fqdn
  firewall_sku: basic
tags: {}

لتكوين إصدار جدار الحماية من Python SDK، قم بتعيين الخاصية firewall_sku للكائن ManagedNetwork. يوضح المثال التالي كيفية تعيين جدار الحماية SKU إلى basic:

network = ManagedNetwork(isolation_mode=IsolationMode.ALLOW_INTERNET_OUTBOUND,
                         firewall_sku='basic')

التسعير

ميزة الشبكة الظاهرية المدارة من Azure Machine Learning مجانية. ومع ذلك، تتم محاسبتك على الموارد التالية التي تستخدمها الشبكة الظاهرية المدارة:

  • Azure Private Link - نقاط النهاية الخاصة المستخدمة لتأمين الاتصالات بين الشبكة الظاهرية المدارة وموارد Azure تعتمد على Azure Private Link. لمزيد من المعلومات حول التسعير، راجع تسعير Azure Private Link.

  • قواعد FQDN الصادرة - يتم تنفيذ القواعد الصادرة FQDN باستخدام جدار حماية Azure. إذا كنت تستخدم قواعد FQDN الصادرة، تتم إضافة رسوم جدار حماية Azure إلى الفوترة. يتم استخدام إصدار قياسي من Azure Firewall بشكل افتراضي. للحصول على معلومات حول تحديد الإصدار الأساسي، راجع تحديد إصدار جدار حماية Azure.

    هام

    لا يتم إنشاء جدار الحماية حتى تقوم بإضافة قاعدة FQDN صادرة. لمزيد من المعلومات حول التسعير، راجع تسعير جدار حماية Azure وعرض الأسعار للإصدار القياسي .

القيود

  • بمجرد تمكين عزل الشبكة الظاهرية المدارة لمساحة العمل الخاصة بك (إما السماح بالإنترنت الصادر أو السماح بالصادرة المعتمدة فقط)، لا يمكنك تعطيلها.
  • تستخدم الشبكة الظاهرية المدارة اتصال نقطة النهاية الخاصة للوصول إلى مواردك الخاصة. لا يمكن أن يكون لديك نقطة نهاية خاصة ونقطة نهاية خدمة في نفس الوقت لموارد Azure، مثل حساب التخزين. نوصي باستخدام نقاط النهاية الخاصة في جميع السيناريوهات.
  • يتم حذف الشبكة الظاهرية المدارة عند حذف مساحة العمل.
  • تأكد من عدم وجود تأمينات نطاق على موارد التعلم الآلي من Azure ومجموعة الموارد. قد يتم حظر العمليات الداخلية المتعلقة بالشبكة الظاهرية المدارة.
  • يتم تمكين الحماية من النقل غير المصرح للبيانات تلقائيا لوضع الصادر الوحيد المعتمد. إذا أضفت قواعد صادرة أخرى، مثل FQDNs، فلن تضمن Microsoft حمايتك من تسرب البيانات إلى تلك الوجهات الصادرة.
  • لا يتم دعم إنشاء نظام مجموعة حساب في منطقة مختلفة عن مساحة العمل عند استخدام شبكة ظاهرية مدارة.
  • Kubernetes والأجهزة الظاهرية المرفقة غير مدعومة في شبكة ظاهرية مدارة من Azure Machine Learning.
  • يؤدي استخدام القواعد الصادرة FQDN إلى زيادة تكلفة الشبكة الظاهرية المدارة لأن قواعد FQDN تستخدم Azure Firewall. لمزيد من المعلومات، راجع الأسعار.
  • تدعم القواعد الصادرة FQDN المنفذين 80 و443 فقط.
  • إذا كان مثيل الحساب الخاص بك في شبكة مدارة وتم تكوينه بدون عنوان IP عام، فاستخدم az ml compute connect-ssh الأمر للاتصال به باستخدام SSH.
  • عند استخدام الشبكة الظاهرية المدارة، لا يمكنك نشر موارد الحوسبة داخل شبكتك الظاهرية المخصصة. يمكن إنشاء موارد الحساب داخل الشبكة الظاهرية المدارة فقط.
  • إذا تم تكوين الشبكة المدارة الخاصة بك السماح فقطالصادرة المعتمدة ، فلا يمكنك استخدام قاعدة FQDN للوصول إلى حسابات تخزين Azure. يجب استخدام نقطة نهاية خاصة بدلا من ذلك.
  • تأكد من السماح بنقاط النهاية الخاصة التي تديرها Microsoft التي تم إنشاؤها للشبكة الظاهرية المدارة في نهجك المخصص.

ترحيل موارد الحوسبة

إذا كانت لديك مساحة عمل موجودة وتريد تمكين الشبكة الظاهرية المدارة لها، فلا يوجد حاليا مسار ترحيل مدعوم لموارد الحوسبة المدارة الحالية. ستحتاج إلى حذف جميع موارد الحوسبة المدارة الموجودة وإعادة إنشائها بعد تمكين الشبكة الظاهرية المدارة. تحتوي القائمة التالية على موارد الحساب التي يجب حذفها وإعادة إنشائها:

  • نظام مجموعة الحساب
  • مثيل الحساب
  • نقاط النهاية عبر الإنترنت المدارة

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