تكوين نقطة نهاية خاصة لمساحة عمل التعلم الآلي من Microsoft Azure

ينطبق على:ملحق التعلم الآلي من Microsoft Azure CLIالإصدار 2 (الحالي)

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

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

تحذير

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

لمزيد من المعلومات حول تأمين الموارد المستخدمة من قبل التعلم الآلي من Microsoft Azure، راجع المقالات التالية:

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

  • يجب أن يكون لديك شبكة ظاهرية موجودة لإنشاء نقطة النهاية الخاصة فيها.

    هام

    لا نوصي باستخدام نطاق عناوين IP 172.17.0.0/16 للشبكة الظاهرية الخاصة بك. هذا هو نطاق الشبكة الفرعية الافتراضي الذي تستخدمه شبكة جسر Docker. ربما تتعارض النطاقات الأخرى أيضاً اعتمادا على ما تريد الاتصال بالشبكة الظاهرية. على سبيل المثال، إذا كنت تخطط لتوصيل شبكة محلية بشبكة ظاهرية، وتستخدم الشبكة المحلية أيضا النطاق 172.16.0.0/16. في نهاية المطاف، الأمر يرجع إليك لتخطيط البنية الأساسية للشبكة.

  • تعطيل نهج الشبكة لنقاط النهاية الخاصة قبل إضافة نقطة النهاية الخاصة.

التقييدات

  • إذا قمت بتمكين الوصول العام لمساحة عمل مؤمنة بنقطة نهاية خاصة واستخدام استوديو التعلم الآلي من Microsoft Azure عبر الإنترنت العام، فقد تفشل بعض الميزات مثل المصمم في الوصول إلى بياناتك. تحدث هذه المشكلة عند تخزين البيانات على خدمة مؤمنة خلف VNet. على سبيل المثال، حساب تخزين Azure.

  • قد تواجه مشكلات في محاولة الوصول إلى نقطة النهاية الخاصة لمساحة العمل الخاصة بك إذا كنت تستخدم Mozilla Firefox. قد تكون هذه المشكلة مرتبطة بـ DNS عبر HTTPS في Mozilla Firefox. نوصي باستخدام Microsoft Edge أو Google Chrome.

  • لا يؤثر استخدام نقطة نهاية خاصة على وحدة تحكم Azure (عمليات الإدارة) مثل حذف مساحة العمل أو إدارة موارد الحساب. على سبيل المثال، إنشاء هدف حساب أو تحديثه أو حذفه. يتم تنفيذ هذه العمليات عبر الإنترنت العام كالمعتاد. تستخدم عمليات مستوى البيانات، مثل استخدام استوديو التعلم الآلي من Microsoft Azure أو واجهات برمجة التطبيقات (بما في ذلك المسارات المنشورة) أو SDK نقطة النهاية الخاصة.

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

  • عند إرفاق مجموعة Azure Kubernetes Service بمساحة عمل مع نقطة نهاية خاصة، يجب أن تكون المجموعة في نفس منطقة مساحة العمل.

  • عند استخدام مساحة عمل مع نقاط نهاية خاصة متعددة، يجب أن تكون إحدى نقاط النهاية الخاصة في نفس VNet مثل خدمات التبعية التالية:

    • حساب تخزين Azure الذي يوفر التخزين الافتراضي لمساحة العمل
    • Azure Key Vault لمساحة العمل
    • Azure Container Registry لمساحة العمل.

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

إنشاء مساحة عمل تستخدم نقطة نهاية خاصة

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

تلميح

إذا كنت ترغب في إنشاء مساحة عمل ونقطة نهاية خاصة وشبكة ظاهرية في الوقت نفسه، فشاهد استخدام قالب Azure Resource Manager لإنشاء مساحة عمل للتعلم الآلي من Microsoft Azure.

ينطبق على:ملحق Azure CLI ml الإصدار 2 (الحالي)

عند استخدام ملحق Azure CLI 2.0 CLI للتعلم الآلي، يتم استخدام مستند YAML لتكوين مساحة العمل. يشرح المثال التالي إنشاء مساحة عمل جديدة باستخدام تكوين YAML:

تلميح

عند استخدام رابط خاص، لا يمكن لمساحة العمل استخدام حساب مهام Azure Container Registry لإنشاء الصور. image_build_compute تحدد الخاصية في هذا التكوين اسم نظام مجموعة حساب وحدة المعالجة المركزية لاستخدامه لإنشاء بيئة صورة Docker. يمكنك أيضاً تحديد ما إذا كان يجب الوصول إلى مساحة عمل الرابط الخاص عبر الإنترنت باستخدام public_network_access الخاصية.

في هذا المثال، يجب إنشاء الحساب المشار إليه بواسطة image_build_compute قبل إنشاء الصور.

$schema: https://azuremlschemas.azureedge.net/latest/workspace.schema.json
name: mlw-privatelink-prod
location: eastus
display_name: Private Link endpoint workspace-example
description: When using private link, you must set the image_build_compute property to a cluster name to use for Docker image environment building. You can also specify whether the workspace should be accessible over the internet.
image_build_compute: cpu-compute
public_network_access: Disabled
tags:
  purpose: demonstration
az ml workspace create \
    -g <resource-group-name> \
    --file privatelink.yml

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

az network private-endpoint create \
    --name <private-endpoint-name> \
    --vnet-name <vnet-name> \
    --subnet <subnet-name> \
    --private-connection-resource-id "/subscriptions/<subscription>/resourceGroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>" \
    --group-id amlworkspace \
    --connection-name workspace -l <location>

لإنشاء إدخالات منطقة DNS الخاصة لمساحة العمل، استخدم الأوامر التالية:

# Add privatelink.api.azureml.ms
az network private-dns zone create \
    -g <resource-group-name> \
    --name privatelink.api.azureml.ms

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name privatelink.api.azureml.ms \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group create \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone privatelink.api.azureml.ms \
    --zone-name privatelink.api.azureml.ms

# Add privatelink.notebooks.azure.net
az network private-dns zone create \
    -g <resource-group-name> \
    --name privatelink.notebooks.azure.net

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name privatelink.notebooks.azure.net \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group add \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone privatelink.notebooks.azure.net \
    --zone-name privatelink.notebooks.azure.net

إضافة نقطة نهاية خاصة إلى مساحة عمل

استخدم إحدى الطرق التالية لإضافة نقطة نهاية خاصة إلى مساحة عمل موجودة:

تحذير

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

ينطبق على:ملحق Azure CLI ml الإصدار 2 (الحالي)

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

az network private-endpoint create \
    --name <private-endpoint-name> \
    --vnet-name <vnet-name> \
    --subnet <subnet-name> \
    --private-connection-resource-id "/subscriptions/<subscription>/resourceGroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>" \
    --group-id amlworkspace \
    --connection-name workspace -l <location>

لإنشاء إدخالات منطقة DNS الخاصة لمساحة العمل، استخدم الأوامر التالية:

# Add privatelink.api.azureml.ms
az network private-dns zone create \
    -g <resource-group-name> \
    --name 'privatelink.api.azureml.ms'

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name 'privatelink.api.azureml.ms' \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group create \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone 'privatelink.api.azureml.ms' \
    --zone-name 'privatelink.api.azureml.ms'

# Add privatelink.notebooks.azure.net
az network private-dns zone create \
    -g <resource-group-name> \
    --name 'privatelink.notebooks.azure.net'

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name 'privatelink.notebooks.azure.net' \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group add \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone 'privatelink.notebooks.azure.net' \
    --zone-name 'privatelink.notebooks.azure.net'

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

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

تحذير

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

لإزالة نقطة نهاية خاصة، استخدم المعلومات التالية:

ينطبق على:ملحق Azure CLI ml الإصدار 2 (الحالي)

عند استخدام ملحق Azure CLI 2.0 CLI للتعلم الآلي، استخدم الأمر التالي لإزالة نقطة النهاية الخاصة:

az network private-endpoint delete \
    --name <private-endpoint-name> \
    --resource-group <resource-group-name> \

تمكين وصول الجمهور

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

هام

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

تحذير

عند الاتصال عبر نقطة النهاية العامة بينما تستخدم مساحة العمل نقطة نهاية خاصة للاتصال بالموارد الأخرى:

  • ستفشل بعض ميزات الاستوديو في الوصول إلى بياناتك. تحدث هذه المشكلة عند تخزين البيانات على خدمة مؤمنة خلف شبكة ظاهرية. على سبيل المثال، حساب تخزين Azure.
  • استخدام Jupyter وJpyterLab وRStudio على مثيل حساب، بما في ذلك تشغيل دفاتر الملاحظات، غير مدعوم.

لتمكين الوصول العام، استخدم الخطوات التالية:

تلميح

هناك نوعان من الخصائص المحتملة التي يمكنك تكوينها:

  • allow_public_access_when_behind_vnet - مستخدم بواسطة Python SDK v1
  • public_network_access - يستخدم من قبل CLI وPython SDK v2 كل خاصية تتجاوز الأخرى. على سبيل المثال، سيتجاوز الإعداد public_network_access أي إعداد سابق إلى allow_public_access_when_behind_vnet.

توصي Microsoft باستخدام public_network_access لتمكين أو تعطيل الوصول العام إلى مساحة العمل.

ينطبق على:ملحق Azure CLI ml الإصدار 2 (الحالي)

عند استخدام ملحق Azure CLI 2.0 CLI للتعلم الآلي، استخدم az ml update الأمر لتمكين public_network_access مساحة العمل:

az ml workspace update \
    --set public_network_access=Enabled \
    -n <workspace-name> \
    -g <resource-group-name>

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

الاتصال بمساحة عملك بشكل آمن

للاتصال بمساحة عمل مؤمنة خلف شبكة ظاهرية، استخدم إحدى الأساليب التالية:

  • بوابة الشبكة الظاهرية الخاصة من Azure - توصيل الشبكات المحلية بشبكة ظاهرية عبر اتصال خاص. يتم إجراء الاتصالات عبر الإنترنت العام. يوجد نوعان من بوابات الشبكة الظاهرية الخاصة التي يمكنك استخدامها:

    • من نقطة إلى موقع: يعمل كل جهاز كمبيوتر عميل على استخدام عميل VPN للاتصال بالشبكة الظاهرية.
    • من موقع إلى موقع: يقوم جهاز الشبكة الظاهرية الخاصة بتوصيل الشبكة الظاهرية بشبكتك المحلية.
  • ExpressRoute - يربط الشبكات المحلية بالسحابة عبر اتصال خاص. يتم الاتصال باستخدام موفر الاتصال.

  • Azure Bastion - في هذا السيناريو، يقوم بإنشاء جهاز Azure ظاهري (يسمى أحياناً مربع الانتقال) داخل شبكة ظاهرية. ومن ثَم يمكنك الاتصال بالجهاز الظاهري باستخدام Azure Bastion. يسمح لك Bastion بالاتصال بالجهاز الظاهري باستخدام جلسة بروتوكول سطح المكتب البعيد أو SSH من مستعرض الويب المحلي لديك. ومن ثَم يمكنك استخدام مربع الانتقال كبيئة تطوير. ونظراً إلى وجوده داخل الشبكة الظاهرية، يمكنه الوصول مباشرة إلى مساحة العمل. للحصول على مثال لاستخدام مربع الانتقال السريع، راجع البرنامج التعليمي: إنشاء مساحة عمل آمنة.

هام

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

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

نقاط نهاية خاصة متعددة

يدعم التعلم الآلي من Microsoft Azure نقاط نهاية خاصة متعددة لمساحة عمل. غالباً ما تستخدم نقاط نهاية خاصة متعددة عندما تريد الاحتفاظ ببيئات مختلفة منفصلة. فيما يلي بعض السيناريوهات التي يتم تمكينها باستخدام نقاط نهاية خاصة متعددة:

  • بيئات تطوير العميل في شبكة ظاهرية منفصلة.

  • نظام مجموعة خدمة Azure Kubernetes (AKS) في شبكة ظاهرية منفصلة.

  • خدمات Azure الأخرى في شبكة ظاهرية منفصلة. على سبيل المثال، يمكن لـ Azure Synapse وAzure Data Factory استخدام شبكة ظاهرية مدارة من Microsoft. في الحالتين كلتيهما، يمكن إضافة نقطة نهاية خاصة لمساحة العمل إلى الشبكة الظاهرية المدارة المستخدمة من قبل هذه الخدمات. لمزيد من المعلومات حول استخدام شبكة ظاهرية مدارة مع هذه الخدمات، راجع المقالات التالية:

    هام

    حماية النقل غير المصرح للبيانات في Synapse غير مدعومة مع التعلم الآلي من Microsoft Azure.

هام

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

تستخدم إضافة نقاط نهاية خاصة متعددة نفس الخطوات كما هو موضح في قسم إضافة نقطة نهاية خاصة إلى مساحة عمل.

السيناريو: عملاء معزولين

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

ملاحظة

تفترض هذه الخطوات أن لديك مساحة عمل موجودة و Azure Storage Account و Azure Key Vault و Azure Container Registry. تحتوي كل خدمة من هذه الخدمات على نقاط نهاية خاصة في شبكة ظاهرية موجودة.

  1. إنشاء شبكة ظاهرية أخرى للعملاء. قد تحتوي هذه الشبكة الظاهرية على أجهزة Azure الظاهرية التي تعمل كعملاء، أو قد تحتوي على بوابة VPN يستخدمها العملاء المحليون للاتصال بالشبكة الظاهرية.
  2. أضف نقطة نهاية خاصة جديدة لـ Azure Storage Account وAzure Key Vault و Azure Container Registry المستخدمة من قبل مساحة العمل الخاصة بك. يجب أن توجد نقاط النهاية الخاصة هذه في الشبكة الظاهرية للعميل.
  3. إذا كان لديك مساحة تخزين إضافية تستخدمها مساحة العمل الخاصة بك، أضف نقطة نهاية خاصة جديدة لهذا التخزين. يجب أن تكون نقطة النهاية الخاصة موجودة في الشبكة الظاهرية للعميل وأن يتم تمكين تكامل منطقة DNS الخاصة.
  4. أضف نقطة نهاية خاصة جديدة إلى مساحة العمل الخاصة بك. يجب أن تكون نقطة النهاية الخاصة هذه موجودة في العميل VNet وأن يتم تمكين تكامل منطقة DNS الخاص بها.
  5. استخدم الخطوات الواردة في مقالة استخدام الاستوديو في شبكة ظاهرية لتمكين الاستوديو من الوصول إلى حساب (حسابات) التخزين.

يوضح الرسم البياني التالي هذا التكوين. يحتوي Workload VNet على حسابات تم إنشاؤها بواسطة مساحة العمل لنشر التدريب &. تحتوي الشبكة الظاهرية للعميل على عملاء أو اتصالات ExpressRoute/VPN للعميل. تحتوي كلتا الشبكتين الظاهريتين على نقاط نهاية خاصة لمساحة العمل و Azure Storage Account وAzure Key Vault وAzure Container Registry.

رسم تخطيطي للشبكة الظاهرية للعميل المعزولة

السيناريو: خدمة Isolated Azure Kubernetes

إذا كنت ترغب في إنشاء خدمة Azure Kubernetes معزولة تستخدمها مساحة العمل، فاستخدم الخطوات التالية:

ملاحظة

تفترض هذه الخطوات أن لديك مساحة عمل موجودة و Azure Storage Account و Azure Key Vault و Azure Container Registry. تحتوي كل خدمة من هذه الخدمات على نقاط نهاية خاصة في شبكة ظاهرية موجودة.

  1. إنشاء مثيل خدمة Azure Kubernetes. أثناء الإنشاء، يقوم AKS بإنشاء شبكة ظاهرية تحتوي على نظام مجموعة AKS.
  2. أضف نقطة نهاية خاصة جديدة لـ Azure Storage Account وAzure Key Vault و Azure Container Registry المستخدمة من قبل مساحة العمل الخاصة بك. يجب أن توجد نقاط النهاية الخاصة هذه في الشبكة الظاهرية للعميل.
  3. إذا كان لديك مساحة تخزين إضافية تستخدمها مساحة العمل الخاصة بك، أضف نقطة نهاية خاصة جديدة لهذا التخزين. يجب أن تكون نقطة النهاية الخاصة موجودة في الشبكة الظاهرية للعميل وأن يتم تمكين تكامل منطقة DNS الخاصة.
  4. أضف نقطة نهاية خاصة جديدة إلى مساحة العمل الخاصة بك. يجب أن تكون نقطة النهاية الخاصة هذه موجودة في العميل VNet وأن يتم تمكين تكامل منطقة DNS الخاص بها.
  5. إرفاق نظام المجموعة AKS إلى مساحة عمل التعلم الآلي من Microsoft Azure. لمزيد من المعلومات، راجع إنشاء مجموعة خدمة Azure Kubernetes وإرفاقها.

رسم تخطيطي للشبكة الظاهرية AKS المعزولة

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