Sanal ağlarla Azure Machine Learning eğitim ortamının güvenliğini sağlama

ŞUNLAR IÇIN GEÇERLIDIR: Python SDK'sı azure-ai-ml v2 (geçerli)

İpucu

Microsoft, bu makaledeki adımlar yerine Azure Machine Learning yönetilen sanal ağlarının kullanılmasını önerir. Yönetilen bir sanal ağ ile Azure Machine Learning, çalışma alanınız ve yönetilen işlemleriniz için ağ yalıtımı işini işler. Ayrıca çalışma alanının ihtiyaç duyduğu kaynaklar için Azure Depolama Hesabı gibi özel uç noktalar da ekleyebilirsiniz. Daha fazla bilgi için bkz. Çalışma alanı yönetilen ağ izolasyonu.

Azure Machine Learning işlem örneği, sunucusuz işlem ve işlem kümesi, azure Sanal Ağ güvenli bir şekilde model eğitmek için kullanılabilir. Ortamınızı planlarken, işlem örneğini/kümesini veya sunucusuz işlemini genel IP adresiyle veya genel IP adresi olmadan yapılandırabilirsiniz. İkisi arasındaki genel farklar şunlardır:

  • Genel IP yok: Aynı ağ kaynağı gereksinimlerine sahip olmadığından maliyetleri azaltır. İnternet'ten gelen trafik gereksinimini kaldırarak güvenliği artırır. Ancak, gerekli kaynaklara (Microsoft Entra ID, Azure Resource Manager vb.) giden erişimi etkinleştirmek için gereken ek yapılandırma değişiklikleri vardır.
  • Genel IP: Varsayılan olarak çalışır, ancak ek Azure ağ kaynakları nedeniyle maliyeti daha yüksektir. Azure Machine Learning hizmetinden genel İnternet üzerinden gelen iletişim gerektirir.

Aşağıdaki tabloda bu yapılandırmalar arasındaki farklar yer alır:

Yapılandırma Genel IP ile Genel IP olmadan
Gelen trafik AzureMachineLearning hizmet etiketi. Hiçbiri
Giden trafik Varsayılan olarak, kısıtlama olmadan genel İnternet'e erişebilir.
Ağ Güvenlik Grubu veya güvenlik duvarı kullanarak erişimlerini kısıtlayabilirsiniz.
Varsayılan olarak, Azure tarafından sağlanan varsayılan giden erişimi kullanarak genel ağa erişebilir.
Giden trafiği İnternet'te gerekli kaynaklara yönlendirmeniz gerekiyorsa bunun yerine Sanal Ağ NAT ağ geçidi veya Güvenlik Duvarı kullanmanızı öneririz.
Azure ağ kaynakları Genel IP adresi, yük dengeleyici, ağ arabirimi Hiçbiri

Sanal ağdaki modelleri eğitmek için Azure Databricks veya HDInsight da kullanabilirsiniz.

Önemli

Bu makalede işaretlenen (önizleme) öğeler şu anda genel önizleme aşamasındadır. Önizleme sürümü bir hizmet düzeyi sözleşmesi olmadan sağlanır ve üretim iş yükleri için önerilmez. Bazı özellikler desteklenmiyor olabileceği gibi özellikleri sınırlandırılmış da olabilir. Daha fazla bilgi için bkz. Microsoft Azure Önizlemeleri Ek Kullanım Koşulları.

Bu makale, Azure Machine Learning iş akışının güvenliğini sağlama serisinin bir parçasıdır. Bu serideki diğer makalelere bakın:

Güvenli çalışma alanı oluşturma öğreticisi için bkz . Öğretici: Güvenli çalışma alanı oluşturma veya Öğretici: Şablon kullanarak güvenli çalışma alanı oluşturma.

Bu makalede, bir sanal ağda aşağıdaki eğitim işlem kaynaklarının güvenliğini sağlamayı öğreneceksiniz:

  • Azure Machine Learning işlem kümesi
  • Azure Machine Learning işlem örneği
  • Azure Machine Learning sunucusuz işlem
  • Azure Databricks
  • Sanal Makine
  • HDInsight kümesi

Önkoşullar

  • Yaygın sanal ağ senaryolarını ve genel sanal ağ mimarisini anlamak için Ağ güvenliğine genel bakış makalesini okuyun.

  • İşlem kaynaklarınız ile kullanılacak mevcut bir sanal ağ ve alt ağ. Bu sanal ağ, Azure Machine Learning çalışma alanınızla aynı abonelikte olmalıdır.

    • Çalışma alanınız ve eğitim işleriniz tarafından kullanılan depolama hesaplarını işlem örnekleri, sunucusuz işlem ve kümeler için kullanmayı planladığınız Azure bölgesine yerleştirmenizi öneririz. Bunlar aynı Azure bölgesinde değilse, veri aktarımı maliyetlerine ve ağ gecikme süresinin artmasına neden olabilirsiniz.
    • WebSocket iletişiminin sanal ağınızda *.instances.azureml.net ve *.instances.azureml.ms izni olduğundan emin olun. WebSocketler Jupyter tarafından işlem örneklerinde kullanılır.
  • Sanal ağda var olan bir alt ağ. Bu alt ağ sunucusuz işlem için işlem örnekleri, kümeler ve düğümler oluşturulurken kullanılır.

    • Alt ağın diğer Azure hizmetlerine temsilci olarak atanmadığından emin olun.
    • Alt ağın yeterli boş IP adresi içerdiğinden emin olun. Her işlem örneği bir IP adresi gerektirir. bir işlem kümesi içindeki her düğüm ve sunucusuz işlem düğümleri bir IP adresi gerektirir.
  • Kendi DNS sunucunuz varsa, işlem örneklerinin ve kümelerinin tam etki alanı adlarını (FQDN) çözümlemek için DNS iletmeyi kullanmanızı öneririz. Daha fazla bilgi için bkz . Azure Machine Learning ile özel DNS kullanma.

  • Kaynakları bir sanal ağa veya alt ağa dağıtmak için kullanıcı hesabınızın Azure rol tabanlı erişim denetiminde (Azure RBAC) aşağıdaki eylemlere yönelik izinleri olmalıdır:

    • Sanal ağ kaynağında "Microsoft.Network/*/read" yazın. Azure Resource Manager (ARM) şablonu dağıtımları için bu izin gerekli değildir.
    • Sanal ağ kaynağında "Microsoft.Network/virtualNetworks/join/action".
    • Alt ağ kaynağında "Microsoft.Network/virtualNetworks/subnets/join/action".

    Ağ ile Azure RBAC hakkında daha fazla bilgi için bkz . Ağ yerleşik rolleri

Sınırlamalar

  • Sanal ağda işlem kümesi/örneği ve sunucusuz işlem dağıtımı, Azure Lighthouse ile desteklenmez.

  • Eğitim sırasında işlem örneklerinizle varsayılan depolama hesabı arasındaki özel ağ iletişimleri için 445 numaralı bağlantı noktasının açık olması gerekir. Örneğin, işlemleriniz bir sanal ağdayken depolama hesabı başka bir sanal ağdaysa, depolama hesabı sanal ağında 445 numaralı bağlantı noktasını engellemeyin.

Çalışma alanından farklı bir sanal ağda/bölgede işlem kümesi

Önemli

Farklı bir bölgede/sanal ağda, yalnızca işlem kümesinde işlem örneği oluşturamazsınız.

Çalışma alanı sanal ağınızdan farklı bir bölgedeki Azure Sanal Ağ işlem kümesi oluşturmak için iki sanal ağ arasındaki iletişimi etkinleştirmek için birkaç seçeneğiniz vardır.

  • Sanal Ağ Eşlemesi'ni kullanın.
  • İşlem kümesini içerecek sanal ağda çalışma alanınız için özel bir uç nokta ekleyin.

Önemli

Seçilen yöntemden bağımsız olarak işlem kümesi için sanal ağı da oluşturmanız gerekir; Azure Machine Learning sizin için oluşturmaz.

Ayrıca işlem kümesi için sanal ağa erişmek için varsayılan depolama hesabı, Azure Container Registry ve Azure Key Vault'a izin vermelisiniz. Bunu yapmanın birden çok yolu vardır. Örneğin, işlem kümesi için sanal ağ içindeki her kaynak için özel bir uç nokta oluşturabilir veya çalışma alanı sanal asının işlem kümesi sanal asına erişmesine izin vermek için sanal ağ eşlemesini kullanabilirsiniz.

Senaryo: Sanal ağ eşlemesi

  1. Çalışma alanınızı Azure Sanal Ağ kullanacak şekilde yapılandırın. Daha fazla bilgi için bkz . Çalışma alanı kaynaklarınızın güvenliğini sağlama.

  2. İşlem kümeleriniz için kullanılacak ikinci bir Azure Sanal Ağ oluşturun. Çalışma alanınız için kullanılandan farklı bir Azure bölgesinde olabilir.

  3. İki sanal ağ arasında sanal ağ eşlemeyi yapılandırın.

    İpucu

    Devam etmeden önce Sanal Ağ Eşleme durumu Bağlan kadar bekleyin.

  4. privatelink.api.azureml.ms İşlem kümesi için sanal ağa bağlantı eklemek için DNS bölgesini değiştirin. Bu bölge, sanal ağa katılmak için özel bir uç nokta kullandığında Azure Machine Learning çalışma alanınız tarafından oluşturulur.

    1. DNS bölgesine yeni bir sanal ağ bağlantısı ekleyin. Bunu birden çok şekilde yapabilirsiniz:

      • Azure portalından DNS bölgesine gidin ve Sanal ağ bağlantıları'nı seçin. Ardından + Ekle'yi seçin ve işlem kümeleriniz için oluşturduğunuz sanal ağı seçin.
      • Azure CLI'dan komutunu kullanın az network private-dns link vnet create . Daha fazla bilgi için bkz . az network private-dns link vnet create.
      • Azure PowerShell'de komutunu kullanın New-AzPrivateDnsVirtualNetworkLink . Daha fazla bilgi için bkz . New-AzPrivateDnsVirtualNetworkLink.
  5. DNS bölgesi için privatelink.notebooks.azure.net önceki adımı ve alt adımları yineleyin.

  6. Her iki sanal ağdan da erişime izin vermek için aşağıdaki Azure kaynaklarını yapılandırın.

    • Çalışma alanı için varsayılan depolama hesabı.
    • Çalışma alanı için Azure Container registry.
    • Çalışma alanı için Azure Key Vault.

    İpucu

    Bu hizmetleri sanal ağlara erişime izin verecek şekilde yapılandırmanın birden çok yolu vardır. Örneğin, her iki sanal ağdaki her kaynak için özel bir uç nokta oluşturabilirsiniz. Ya da kaynakları her iki sanal ağdan erişime izin verecek şekilde yapılandırabilirsiniz.

  7. Sanal ağ kullanırken normalde yaptığınız gibi bir işlem kümesi oluşturun, ancak işlem kümesi için oluşturduğunuz sanal ağı seçin. Sanal ağ farklı bir bölgedeyse işlem kümesini oluştururken bu bölgeyi seçin.

    Uyarı

    Bölgeyi ayarlarken, çalışma alanınızdan veya veri depolarınızdan farklı bir bölgeyse artan ağ gecikme süresi ve veri aktarımı maliyetleri görebilirsiniz. Gecikme süresi ve maliyetler küme oluşturulurken ve üzerinde işler çalıştırılırken ortaya çıkabilir.

Senaryo: Özel uç nokta

  1. Çalışma alanınızı Azure Sanal Ağ kullanacak şekilde yapılandırın. Daha fazla bilgi için bkz . Çalışma alanı kaynaklarınızın güvenliğini sağlama.

  2. İşlem kümeleriniz için kullanılacak ikinci bir Azure Sanal Ağ oluşturun. Çalışma alanınız için kullanılandan farklı bir Azure bölgesinde olabilir.

  3. Sanal ağda işlem kümesini içerecek yeni bir özel uç nokta oluşturun.

    • Azure portalını kullanarak yeni bir özel uç nokta eklemek için çalışma alanınızı ve ardından Ağ'ı seçin. Özel uç nokta bağlantıları + Özel uç nokta'yı seçin ve alanları kullanarak yeni bir özel uç nokta oluşturun.

      • Bölge'yi seçerken sanal ağınızla aynı bölgeyi seçin.
      • Kaynak türü'nü seçerken Microsoft.MachineLearningServices/workspaces kullanın.
      • Kaynağı çalışma alanınızın adı olarak ayarlayın.
      • Sanal ağı ve Alt Ağı, işlem kümeleriniz için oluşturduğunuz sanal ağ ve alt ağ olarak ayarlayın.

      Son olarak Oluştur'u seçerek özel uç noktayı oluşturun.

    • Azure CLI kullanarak yeni bir özel uç nokta eklemek için kullanın az network private-endpoint create. Bu komutu kullanma örneği için bkz . Azure Machine Learning çalışma alanı için özel uç nokta yapılandırma.

  4. Sanal ağ kullanırken normalde yaptığınız gibi bir işlem kümesi oluşturun, ancak işlem kümesi için oluşturduğunuz sanal ağı seçin. Sanal ağ farklı bir bölgedeyse işlem kümesini oluştururken bu bölgeyi seçin.

    Uyarı

    Bölgeyi ayarlarken, çalışma alanınızdan veya veri depolarınızdan farklı bir bölgeyse artan ağ gecikme süresi ve veri aktarımı maliyetleri görebilirsiniz. Gecikme süresi ve maliyetler küme oluşturulurken ve üzerinde işler çalıştırılırken ortaya çıkabilir.

Genel IP olmadan işlem örneği/kümesi veya sunucusuz işlem

Uyarı

Bu bilgiler yalnızca Azure Sanal Ağ kullanılırken geçerlidir. Yönetilen sanal ağ kullanıyorsanız bkz. Yönetilen ağ ile yönetilen işlem.

Önemli

Önizlemeye katılmadan genel IP için yapılandırılmış işlem örneklerini veya işlem kümelerini kullandıysanız, 20 Ocak 2023'te (özellik genel kullanıma sunulduğunda) sonra bunları silmeniz ve yeniden oluşturmanız gerekir.

Daha önce genel IP yok önizlemesini kullanıyorsanız, genel kullanılabilirlik gereksinimleri değiştiğinden gelen ve giden trafiğe izin veren trafiği de değiştirmeniz gerekebilir:

  • Giden gereksinimleri - Yalnızca işlem örneklerinin ve kümelerinin yönetimi için kullanılan iki ek giden. Bu hizmet etiketlerinin hedefi Microsoft'a aittir:
    • AzureMachineLearning 5831 numaralı UDP bağlantı noktasında hizmet etiketi.
    • BatchNodeManagement 443 numaralı TCP bağlantı noktasında hizmet etiketi.

Aşağıdaki yapılandırmalar, Önkoşullar bölümünde listelenenlere ek olarak ve genel IP olmadan yapılandırılmış bir işlem örnekleri/kümeleri oluşturmaya özeldir. Bunlar sunucusuz işlem için de geçerlidir:

  • İşlem kaynağının sanal ağdan Azure Machine Learning hizmetleriyle iletişim kurması için bir çalışma alanı özel uç noktası kullanmanız gerekir. Daha fazla bilgi için bkz . Azure Machine Learning çalışma alanı için özel uç nokta yapılandırma.

  • Sanal ağınızda aşağıdaki hizmet etiketlerine veya tam etki alanı adlarına (FQDN) giden trafiğe izin verin:

    Hizmet etiketi Protokol Bağlantı noktası Notlar
    AzureMachineLearning TCP
    UDP
    443/8787/18881
    5831
    Azure Machine Learning hizmetiyle iletişim.
    BatchNodeManagement.<region> HERHANGİ BİRİ 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Azure Batch ile iletişim. İşlem örneği ve işlem kümesi, Azure Batch hizmeti kullanılarak uygulanır.
    Storage.<region> TCP 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Bu hizmet etiketi, Azure Batch tarafından kullanılan Azure Depolama hesabıyla iletişim kurmak için kullanılır.

    Önemli

    giden erişimi Storage.<region> , çalışma alanınızdan verileri dışarı çıkarmak için kullanılabilir. Servis Uç Noktası İlkesi kullanarak bu güvenlik açığını azaltabilirsiniz. Daha fazla bilgi için Azure Machine Learning veri sızdırma önleme makalesine bakın.

    FQDN Protokol Bağlantı noktası Notlar
    <region>.tundra.azureml.ms UDP 5831 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin.
    graph.windows.net TCP 443 Microsoft Graph API ile iletişim.
    *.instances.azureml.ms TCP 443/8787/18881 Azure Machine Learning ile iletişim.
    *.<region>.batch.azure.com HERHANGİ BİRİ 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Azure Batch ile iletişim.
    *.<region>.service.batch.azure.com HERHANGİ BİRİ 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Azure Batch ile iletişim.
    *.blob.core.windows.net TCP 443 Azure Blob depolama ile iletişim.
    *.queue.core.windows.net TCP 443 Azure Kuyruk depolama ile iletişim.
    *.table.core.windows.net TCP 443 Azure Tablo depolama ile iletişim.
  • Varsayılan olarak, genel IP olmayan durumlar için yapılandırılmış bir işlem örneğinin/kümesinin internete giden erişimi yoktur. Böyle bir işlem örneğinden/kümesinden internete erişebiliyorsanız, bunun nedeni Azure varsayılan giden erişimidir ve internete giden trafiğe izin veren bir NSG'niz vardır. Ancak, varsayılan giden erişimi kullanmanızı önermiyoruz. İnternet'e giden erişime ihtiyacınız varsa giden trafiğe izin vermek için güvenlik duvarı ve giden kuralları ya da NAT ağ geçidi ve ağ hizmeti grupları kullanmanızı öneririz.

    Azure Machine Learning tarafından kullanılan giden trafik hakkında daha fazla bilgi için aşağıdaki makalelere bakın:

    Azure Güvenlik Duvarı ile kullanılabilecek hizmet etiketleri hakkında daha fazla bilgi için Sanal ağ hizmet etiketleri makalesine bakın.

Genel IP adresi olmayan bir işlem örneği veya kümesi oluşturmak için aşağıdaki bilgileri kullanın:

komutta az ml compute create aşağıdaki değerleri değiştirin:

  • rg: İşlemin oluşturulacağı kaynak grubu.
  • ws: Azure Machine Learning çalışma alanı adı.
  • yourvnet: Azure Sanal Ağ.
  • yoursubnet: İşlem için kullanılacak alt ağ.
  • AmlCompute veya ComputeInstance: Belirtilmesi AmlCompute bir işlem kümesi oluşturur. ComputeInstance bir işlem örneği oluşturur.
# create a compute cluster with no public IP
az ml compute create --name cpu-cluster --resource-group rg --workspace-name ws --vnet-name yourvnet --subnet yoursubnet --type AmlCompute --set enable_node_public_ip=False

# create a compute instance with no public IP
az ml compute create --name myci --resource-group rg --workspace-name ws --vnet-name yourvnet --subnet yoursubnet --type ComputeInstance --set enable_node_public_ip=False

Belirli bir çalışma alanı için sanal ağda genel IP adresi olmayan sunucusuz işlem düğümlerini yapılandırmak için aşağıdaki bilgileri kullanın:

Çalışma alanı oluşturma:

az ml workspace create -n <workspace-name> -g <resource-group-name> --file serverlesscomputevnetsettings.yml
name: testserverlesswithnpip
location: eastus
public_network_access: Disabled
serverless_compute:
  custom_subnet: /subscriptions/<sub id>/resourceGroups/<resource group>/providers/Microsoft.Network/virtualNetworks/<vnet name>/subnets/<subnet name>
  no_public_ip: true

Çalışma alanını güncelleştirme:

az ml workspace update -n <workspace-name> -g <resource-group-name> --file serverlesscomputevnetsettings.yml
serverless_compute:
  custom_subnet: /subscriptions/<sub id>/resourceGroups/<resource group>/providers/Microsoft.Network/virtualNetworks/<vnet name>/subnets/<subnet name>
  no_public_ip: true

Genel IP ile işlem örneği/küme veya sunucusuz işlem

Önemli

Bu bilgiler yalnızca Azure Sanal Ağ kullanılırken geçerlidir. Yönetilen sanal ağ kullanıyorsanız bkz. Yönetilen ağ ile yönetilen işlem.

Aşağıdaki yapılandırmalar, Önkoşullar bölümünde listelenenlere ek olarak genel IP'ye sahip işlem örnekleri/kümeleri oluşturmaya özeldir. Bunlar sunucusuz işlem için de geçerlidir:

  • Bir sanal ağa birden çok işlem örneği/kümesi koyarsanız, bir veya daha fazla kaynağınız için kota artışı istemeniz gerekebilir. Machine Learning işlem örneği veya kümesi, sanal ağı içeren kaynak grubundaki ağ kaynaklarını otomatik olarak ayırır. Hizmet, her işlem örneği veya kümesi için aşağıdaki kaynakları ayırır:

    • Otomatik olarak bir ağ güvenlik grubu (NSG) oluşturulur. Bu NSG, hizmet etiketinden 44224 numaralı bağlantı noktasında gelen TCP trafiğine AzureMachineLearning izin verir.

      Önemli

      İşlem örneği ve işlem kümesi, gerekli kurallarla otomatik olarak bir NSG oluşturur.

      Alt ağ düzeyinde başka bir NSG'niz varsa, NSG alt ağ düzeyindeki kurallar otomatik olarak oluşturulan NSG'deki kurallarla çakışmamalıdır.

      NSG'lerin ağ trafiğinizi nasıl filtrelediğini öğrenmek için bkz . Ağ güvenlik gruplarının ağ trafiğini filtreleme.

    • Bir yük dengeleyici

    İşlem kümeleri için bu kaynaklar, kümenin ölçeği her 0 düğüme indirildiğinde silinir ve ölçek artırılırken oluşturulur.

    Bir işlem örneği için bu kaynaklar, örnek silinene kadar tutulur. Örneğin durdurulması kaynakları kaldırmaz.

    Önemli

    Bu kaynaklar, aboneliğin kaynak kotalarıyla sınırlıdır. Sanal ağ kaynak grubu kilitliyse işlem kümesi/örneği silinemez. İşlem kümesi/örneği silinene kadar yük dengeleyici silinemez. Ayrıca lütfen ağ güvenlik gruplarının oluşturulmasını engelleyen Azure İlkesi atama olmadığından emin olun.

  • Sanal ağınızda hizmet etiketinden 44224 numaralı bağlantı noktasında gelen TCP trafiğine AzureMachineLearning izin verin.

    Önemli

    İşlem örneği/kümesine, oluşturulduğunda dinamik olarak bir IP adresi atanır. Adres oluşturma işleminden önce bilinmediğinden ve oluşturma işleminin bir parçası olarak gelen erişim gerektiğinden, adresi güvenlik duvarınızda statik olarak atayamazsınız. Bunun yerine, sanal ağ ile bir güvenlik duvarı kullanıyorsanız, bu gelen trafiğe izin vermek için kullanıcı tanımlı bir yol oluşturmanız gerekir.

  • Sanal ağınızda aşağıdaki hizmet etiketlerine giden trafiğe izin verin:

    Hizmet etiketi Protokol Bağlantı noktası Notlar
    AzureMachineLearning TCP
    UDP
    443/8787/18881
    5831
    Azure Machine Learning hizmetiyle iletişim.
    BatchNodeManagement.<region> HERHANGİ BİRİ 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Azure Batch ile iletişim. İşlem örneği ve işlem kümesi, Azure Batch hizmeti kullanılarak uygulanır.
    Storage.<region> TCP 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Bu hizmet etiketi, Azure Batch tarafından kullanılan Azure Depolama hesabıyla iletişim kurmak için kullanılır.

    Önemli

    giden erişimi Storage.<region> , çalışma alanınızdan verileri dışarı çıkarmak için kullanılabilir. Servis Uç Noktası İlkesi kullanarak bu güvenlik açığını azaltabilirsiniz. Daha fazla bilgi için Azure Machine Learning veri sızdırma önleme makalesine bakın.

    FQDN Protokol Bağlantı noktası Notlar
    <region>.tundra.azureml.ms UDP 5831 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin.
    graph.windows.net TCP 443 Microsoft Graph API ile iletişim.
    *.instances.azureml.ms TCP 443/8787/18881 Azure Machine Learning ile iletişim.
    *.<region>.batch.azure.com HERHANGİ BİRİ 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Azure Batch ile iletişim.
    *.<region>.service.batch.azure.com HERHANGİ BİRİ 443 <region> değerini Azure Machine Learning çalışma alanınızı içeren Azure bölgesiyle değiştirin. Azure Batch ile iletişim.
    *.blob.core.windows.net TCP 443 Azure Blob depolama ile iletişim.
    *.queue.core.windows.net TCP 443 Azure Kuyruk depolama ile iletişim.
    *.table.core.windows.net TCP 443 Azure Tablo depolama ile iletişim.

Sanal ağda genel IP adresine sahip bir işlem örneği veya kümesi oluşturmak için aşağıdaki bilgileri kullanın:

komutta az ml compute create aşağıdaki değerleri değiştirin:

  • rg: İşlemin oluşturulacağı kaynak grubu.
  • ws: Azure Machine Learning çalışma alanı adı.
  • yourvnet: Azure Sanal Ağ.
  • yoursubnet: İşlem için kullanılacak alt ağ.
  • AmlCompute veya ComputeInstance: Belirtilmesi AmlCompute bir işlem kümesi oluşturur. ComputeInstance bir işlem örneği oluşturur.
# create a compute cluster with a public IP
az ml compute create --name cpu-cluster --resource-group rg --workspace-name ws --vnet-name yourvnet --subnet yoursubnet --type AmlCompute

# create a compute instance with a public IP
az ml compute create --name myci --resource-group rg --workspace-name ws --vnet-name yourvnet --subnet yoursubnet --type ComputeInstance

Belirli bir çalışma alanı için sanal ağda genel IP adresi olan sunucusuz işlem düğümlerini yapılandırmak için aşağıdaki bilgileri kullanın:

Çalışma alanı oluşturma:

az ml workspace create -n <workspace-name> -g <resource-group-name> --file serverlesscomputevnetsettings.yml
name: testserverlesswithvnet
location: eastus
serverless_compute:
  custom_subnet: /subscriptions/<sub id>/resourceGroups/<resource group>/providers/Microsoft.Network/virtualNetworks/<vnet name>/subnets/<subnet name>
  no_public_ip: false

Çalışma alanını güncelleştirme:

az ml workspace update -n <workspace-name> -g <resource-group-name> --file serverlesscomputevnetsettings.yml
serverless_compute:
  custom_subnet: /subscriptions/<sub id>/resourceGroups/<resource group>/providers/Microsoft.Network/virtualNetworks/<vnet name>/subnets/<subnet name>
  no_public_ip: false

Azure Databricks

  • Sanal ağ, Azure Machine Learning çalışma alanıyla aynı abonelikte ve bölgede olmalıdır.
  • Çalışma alanı için Azure Depolama Hesapları da bir sanal ağda güvenlik altına alınmışsa, bunların Azure Databricks kümesiyle aynı sanal ağda olması gerekir.
  • Azure Databricks tarafından kullanılan databricks-private ve databricks-public alt ağlarına ek olarak, sanal ağ için oluşturulan varsayılan alt ağ da gereklidir.
  • Azure Databricks, sanal ağ ile iletişim kurmak için özel uç nokta kullanmaz.

Azure Databricks'i sanal ağ ile kullanma hakkında belirli bilgiler için bkz. Azure Sanal Ağ Azure Databricks'i dağıtma.

Sanal makine veya HDInsight kümesi

Bu bölümde, çalışma alanınızla bir sanal ağda sanal makine veya Azure HDInsight kümesi kullanmayı öğreneceksiniz.

VM veya HDInsight kümesi oluşturma

Önemli

Azure Machine Learning yalnızca Ubuntu çalıştıran sanal makineleri destekler.

Azure portalını veya Azure CLI'yı kullanarak bir VM veya HDInsight kümesi oluşturun ve kümeyi bir Azure sanal ağına yerleştirin. Daha fazla bilgi için aşağıdaki makaleleri inceleyin:

Ağ bağlantı noktalarını yapılandırma

Azure Machine Learning'in VM veya kümedeki SSH bağlantı noktasıyla iletişim kurmasına izin verin, ağ güvenlik grubu için bir kaynak girdi yapılandırın. SSH bağlantı noktası genellikle 22 numaralı bağlantı noktasıdır. Bu kaynaktan gelen trafiğe izin vermek için aşağıdaki eylemleri gerçekleştirin:

  1. Kaynak açılan listesinde Hizmet Etiketi'ni seçin.

  2. Kaynak hizmet etiketi açılan listesinde AzureMachineLearning'i seçin.

    Sanal ağ içindeki bir VM veya HDInsight kümesinde deneme yapmaya yönelik gelen kuralların ekran görüntüsü.

  3. Kaynak bağlantı noktası aralıkları açılan listesinde öğesini seçin*.

  4. Hedef açılan listesinde Herhangi biri'ni seçin.

  5. Hedef bağlantı noktası aralıkları açılan listesinde 22'yi seçin.

  6. Protokol'in altında Herhangi biri'yi seçin.

  7. Eylem'in altında İzin Ver'i seçin.

Ağ güvenlik grubu için varsayılan giden kurallarını koruyun. Daha fazla bilgi için Bkz. Güvenlik grupları'ndaki varsayılan güvenlik kuralları.

Varsayılan giden kurallarını kullanmak istemiyorsanız ve sanal ağınızın giden erişimini sınırlamak istiyorsanız gerekli genel İnternet erişimi bölümüne bakın.

VM veya HDInsight kümesini ekleme

VM veya HDInsight kümesini Azure Machine Learning çalışma alanınıza ekleyin. Daha fazla bilgi için bkz . Studio'da model eğitimi ve dağıtımı için işlem kaynaklarını yönetme.

Modelleri eğitmek için gerekli genel İnternet erişimi

Önemli

Bu makalenin önceki bölümlerinde işlem kaynakları oluşturmak için gereken yapılandırmalar açıklanmış olsa da, bu bölümdeki yapılandırma bilgileri modelleri eğitmek için bu kaynakları kullanmak için gereklidir.

Azure Machine Learning, genel İnternet'e hem gelen hem de giden erişimi gerektirir. Aşağıdaki tablolarda, gerekli erişime ve hangi amaca hizmet yaptığına ilişkin bir genel bakış sağlanır. ile biten .regionhizmet etiketleri için değerini, çalışma alanınızı içeren Azure bölgesiyle değiştirin region . Örneğin, Storage.westus:

İpucu

Gerekli sekmede gerekli gelen ve giden yapılandırma listelenir. Durum sekmesinde, etkinleştirmek isteyebileceğiniz belirli yapılandırmalar için gereken isteğe bağlı gelen ve giden yapılandırmalar listelenir.

Yön Protokol &
ports
Hizmet etiketi Purpose
Giden TCP: 80, 443 AzureActiveDirectory Microsoft Entra ID'yi kullanan kimlik doğrulaması.
Giden TCP: 443, 18881
UDP: 5831
AzureMachineLearning Azure Machine Learning hizmetlerini kullanma.
Not defterlerindeki Python intellisense, 18881 numaralı bağlantı noktasını kullanır.
Azure Machine Learning işlem örneği oluşturma, güncelleştirme ve silme işlemleri 5831 numaralı bağlantı noktasını kullanır.
Giden ANY: 443 BatchNodeManagement.region Azure Machine Learning işlem örnekleri/kümeleri için Azure Batch arka ucuyla iletişim.
Giden TCP: 443 AzureResourceManager Azure Machine Learning, Azure CLI ve Azure Machine Learning SDK'sı ile Azure kaynakları oluşturma.
Giden TCP: 443 Storage.region İşlem kümesi ve işlem örneği için Azure Depolama Hesabında depolanan verilere erişin. Bu giden üzerinden veri sızdırmayı önleme hakkında bilgi için bkz . Veri sızdırma koruması.
Giden TCP: 443 AzureFrontDoor.FrontEnd
* 21Vianet tarafından sağlanan Microsoft Azure'da gerekli değildir.
Azure Machine Learning stüdyosu için genel giriş noktası. AutoML için görüntüleri ve ortamları depolayın. Bu giden üzerinden veri sızdırmayı önleme hakkında bilgi için bkz . Veri sızdırma koruması.
Giden TCP: 443 MicrosoftContainerRegistry.region
Bu etiketin etikete AzureFrontDoor.FirstParty bağımlılığı olduğunu unutmayın
Microsoft tarafından sağlanan docker görüntülerine erişin. Azure Kubernetes Service için Azure Machine Learning yönlendiricisinin kurulumu.

İpucu

Hizmet etiketleri yerine IP adreslerine ihtiyacınız varsa aşağıdaki seçeneklerden birini kullanın:

IP adresleri düzenli aralıklarla değişebilir.

Makine öğrenmesi projenizin gerektirdiği paketlerin yüklenmesi için Visual Studio Code'a ve Microsoft dışı sitelere giden trafiğe de izin vermeniz gerekebilir. Aşağıdaki tabloda makine öğrenmesi için yaygın olarak kullanılan depolar listelenir:

Konak adı Amaç
anaconda.com
*.anaconda.com
Varsayılan paketleri yüklemek için kullanılır.
*.anaconda.org Depo verilerini almak için kullanılır.
pypi.org Varsa, varsayılan dizinden bağımlılıkları listelemek için kullanılır ve kullanıcı ayarları dizinin üzerine yazılmaz. Dizinin üzerine yazılırsa, dizinine de izin *.pythonhosted.orgvermelisiniz.
cloud.r-project.org R geliştirmesi için CRAN paketleri yüklenirken kullanılır.
*.pytorch.org PyTorch tabanlı bazı örnekler tarafından kullanılır.
*.tensorflow.org Tensorflow tabanlı bazı örnekler tarafından kullanılır.
code.visualstudio.com Visual Studio Code masaüstünü indirmek ve yüklemek için gereklidir. Bu, Visual Studio Code Web için gerekli değildir.
update.code.visualstudio.com
*.vo.msecnd.net
Bir kurulum betiği aracılığıyla işlem örneğine yüklenen Visual Studio Code sunucu bitlerini almak için kullanılır.
marketplace.visualstudio.com
vscode.blob.core.windows.net
*.gallerycdn.vsassets.io
Visual Studio Code uzantılarını indirmek ve yüklemek için gereklidir. Bu konaklar, Visual Studio Code için Azure ML uzantısı tarafından sağlanan İşlem Örneklerine uzak bağlantıyı etkinleştirir. Daha fazla bilgi için bkz. Visual Studio Code'da Azure Machine Learning işlem örneğine bağlanma.
raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/* İşlem örneğine yüklenen websocket sunucu bitlerini almak için kullanılır. Websocket sunucusu, Visual Studio Code istemcisinden (masaüstü uygulaması) gelen istekleri işlem örneğinde çalışan Visual Studio Code sunucusuna iletmek için kullanılır.

Not

Azure Machine Learning VS Code uzantısını kullanırken uzak işlem örneği, uzantının gerektirdiği paketleri yüklemek için genel depolara erişim gerektirir. İşlem örneği bu genel depolara veya İnternet'e erişmek için bir ara sunucu gerektiriyorsa, işlem örneğinin dosyasında ve HTTPS_PROXY ortam değişkenlerini ~/.bashrc ayarlamanız ve dışarı aktarmanız HTTP_PROXY gerekir. Bu işlem, özel bir betik kullanılarak sağlama zamanında otomatikleştirilebilir.

Azure Machine Learning ile Azure Kubernetes Service (AKS) kullanırken AKS sanal asına şu trafiğe izin verin:

Güvenlik duvarı çözümü kullanma hakkında bilgi için bkz . Azure Machine Learning ile güvenlik duvarı kullanma.

Sonraki adımlar

Bu makale, Azure Machine Learning iş akışının güvenliğini sağlama serisinin bir parçasıdır. Bu serideki diğer makalelere bakın: