Mengonfigurasi lalu lintas jaringan masuk dan keluar

Pada artikel ini, pelajari tentang persyaratan komunikasi jaringan saat mengamankan ruang kerja Azure Machine Learning dalam jaringan virtual (VNet). Artikel ini mencakup cara mengonfigurasi Azure Firewall untuk mengontrol akses ke ruang kerja Azure Machine Learning Anda dan internet publik. Untuk mempelajari selengkapnya tentang mengamankan Azure Machine Learning, lihat Keamanan Enterprise untuk Azure Machine Learning.

Catatan

Informasi dalam artikel ini berlaku untuk ruang kerja Azure Machine Learning baik yang menggunakan titik akhir privat atau titik akhir layanan.

Tip

Artikel ini adalah bagian dari seri terkait cara mengamankan alur kerja Azure Machine Learning. Lihat artikel lain dalam seri ini:

Akses internet publik yang diperlukan

Azure Machine Learning membutuhkan akses masuk dan keluar ke internet publik. Tabel berikut memberikan gambaran umum tentang akses apa yang diperlukan dan untuk apa akses itu. Protokol untuk semua item adalah TCP. Untuk tag layanan yang diakhiri dengan .region, ganti region dengan wilayah Azure yang berisi ruang kerja Anda. Misalnya, Storage.westus:

Arah Port Tag layanan Tujuan
Masuk 29876-29877 BatchNodeManagement Membuat, memperbarui, dan menghapus instans komputasi Azure Machine Learning dan menghitung kluster.
Masuk 44224 AzureMachineLearning Membuat, memperbarui, dan menghapus instans komputasi Azure Machine Learning.
Keluar * AzureActiveDirectory Autentikasi menggunakan Azure Active Directory.
Keluar 443 AzureMachineLearning Menggunakan Azure Machine Learning service.
Keluar 443 AzureResourceManager Pembuatan sumber daya Azure dengan Azure Machine Learning.
Keluar 443 Storage.region Mengakses data tersimpan di Akun Azure Storage untuk layanan Azure Batch.
Keluar 443 AzureFrontDoor.FrontEnd
* Tidak diperlukan di Azure Tiongkok.
Titik masuk global untuk studio Azure Machine Learning.
Keluar 443 ContainerRegistry.region Mengakses gambar docker yang disediakan oleh Microsoft.
Keluar 443 MicrosoftContainerRegistry.region Mengakses gambar docker yang disediakan oleh Microsoft. Menyiapkan router Azure Machine Learning untuk Azure Kubernetes Service.

Tip

Jika Anda memerlukan alamat IP alih-alih tag layanan, gunakan salah satu opsi berikut:

Alamat IP dapat berubah seiring waktu.

Anda mungkin juga perlu mengizinkan lalu lintas keluar ke Visual Studio Code dan situs non-Microsoft untuk pemasangan paket yang diperlukan oleh proyek pembelajaran mesin Anda. Tabel berikut mencantumkan repositori yang umum digunakan untuk pembelajaran mesin:

Nama Host Tujuan
anaconda.com
*.anaconda.com
Digunakan untuk menginstal paket default.
*.anaconda.org Digunakan untuk mendapatkan data repositori.
pypi.org Digunakan untuk mencantumkan dependensi dari indeks default, jika ada, dan indeks tidak ditimpa oleh pengaturan pengguna. Jika indeks ditimpa, Anda juga harus mengizinkan *.pythonhosted.org.
cloud.r-project.org Digunakan saat menginstal paket CRAN untuk pengembangan R.
*pytorch.org Digunakan oleh beberapa contoh berdasarkan PyTorch.
*.tensorflow.org Digunakan oleh beberapa contoh berdasarkan Tensorflow.
update.code.visualstudio.com

*.vo.msecnd.net
Digunakan untuk mengambil bit server VS Code yang dipasang pada instans komputasi melalui skrip penyiapan.
raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/* Digunakan untuk mengambil bit server websocket yang dipasang pada instans komputasi. Server websocket digunakan untuk mengirimkan permintaan dari klien Visual Studio Code (aplikasi desktop) ke server Visual Studio Code yang berjalan pada instans komputasi.

Saat menggunakan Azure Kubernetes Service (AKS) dengan Azure Machine Learning, izinkan lalu lintas berikut ke VNet AKS:

Azure Firewall

Penting

Azure Firewall menyediakan keamanan untuk sumber daya Microsoft Azure Virtual Network. Beberapa Azure Services, seperti Azure Storage Accounts, memiliki pengaturan firewall sendiri yang berlaku ke titik akhir publik untuk instans layanan tertentu. Informasi dalam dokumen ini khusus untuk Azure Firewall.

Untuk informasi tentang pengaturan firewall instans layanan, lihat Menggunakan studio di jaringan virtual.

  • Untuk lalu lintas masuk ke kluster komputasi dan instans komputasi Azure Machine Learning, gunakan rute yang ditentukan pengguna (UDR) untuk melewati firewall.

  • Untuk lalu lintas keluar, buat aturan jaringan dan aturan aplikasi.

Kumpulan aturan ini dijelaskan secara lebih detail di Apa saja konsep Azure Firewall.

Konfigurasi masuk

Saat menggunakan Azure Machine Learning instans komputasi atau kluster komputasi, izinkan lalu lintas masuk dari manajemen Azure Batch dan layanan Azure Machine Learning. Saat membuat rute yang ditentukan pengguna untuk lalu lintas ini, Anda dapat menggunakan Alamat IP atau tag layanan untuk merutekan lalu lintas.

Penting

Menggunakan tag layanan dengan rute yang ditentukan pengguna saat ini sedang dalam pratinjau dan mungkin tidak didukung sepenuhnya. Untuk informasi selengkapnya, lihat Perutean Virtual Network.

Untuk Azure Machine Learning service, Anda harus menambahkan alamat IP wilayah utama dan sekunder. Untuk menemukan wilayah sekunder, lihat Memastikan kelangsungan bisnis & pemulihan bencana menggunakan Azure Paired Regions. Misalnya, jika Azure Machine Learning service Anda berada di US Timur 2, wilayah sekundernya adalah US Tengah.

Untuk mendapatkan daftar alamat IP layanan Batch dan Azure Machine Learning service, gunakan salah satu metode berikut:

  • Unduh Rentang IP Azure dan Tag Layanan dan cari file untuk BatchNodeManagement.<region> dan AzureMachineLearning.<region>, di mana <region> adalah wilayah Azure Anda.

  • Gunakan Azure CLI untuk mengunduh informasi. Contoh berikut mengunduh informasi alamat IP dan memfilter informasi untuk wilayah US Timur 2 (utama) dan wilayah US Tengah (sekunder):

    az network list-service-tags -l "East US 2" --query "values[?starts_with(id, 'Batch')] | [?properties.region=='eastus2']"
    # Get primary region IPs
    az network list-service-tags -l "East US 2" --query "values[?starts_with(id, 'AzureMachineLearning')] | [?properties.region=='eastus2']"
    # Get secondary region IPs
    az network list-service-tags -l "Central US" --query "values[?starts_with(id, 'AzureMachineLearning')] | [?properties.region=='centralus']"
    

    Tip

    Jika Anda menggunakan wilayah US-Virginia, wilayah US-Arizona, atau wilayah Cina-Timur-2, perintah ini tidak akan mengembalikan alamat IP. Sebagai gantinya, gunakan salah satu tautan berikut untuk mengunduh daftar alamat IP:

Penting

Alamat IP dapat berubah seiring waktu.

Saat membuat UDR, atur Jenis hop berikutnya ke Internet. Gambar berikut menunjukkan contoh UDR berbasis alamat IP di portal Azure:

Gambar konfigurasi rute yang ditentukan pengguna

Untuk informasi tentang mengonfigurasi UDR, lihat Merutekan lalu lintas jaringan dengan tabel perutean.

Konfigurasi keluar

  1. Tambahkan Aturan jaringan, yang memungkinkan lalu lintas ke dan dari tag layanan berikut:

    Tag layanan Protokol Port
    AzureActiveDirectory TCP *
    AzureMachineLearning TCP 443
    AzureResourceManager TCP 443
    Storage.region TCP 443
    AzureFrontDoor.FrontEnd
    * Tidak diperlukan di Azure Tiongkok.
    TCP 443
    ContainerRegistry.region TCP 443
    MicrosoftContainerRegistry.region TCP 443

    Tip

    • ContainerRegistry.region hanya diperlukan untuk gambar Docker kustom. Hal ini mencakup modifikasi kecil (seperti paket tambahan) untuk membuat citra dasar yang disediakan oleh Microsoft.
    • MicrosoftContainerRegistry.region hanya diperlukan jika Anda berencana untuk menggunakan citra Docker default yang disediakan oleh Microsoft dan mengaktifkan dependensi yang dikelola pengguna.
    • Untuk entri yang berisi region, ganti dengan wilayah Azure yang Anda gunakan. Contohnya:ContainerRegistry.westus
  2. Tambahkan Aturan aplikasi untuk host berikut:

    Catatan

    Ini bukan daftar lengkap host yang diperlukan untuk semua sumber daya Python di internet, hanya yang paling umum digunakan. Misalnya, jika Anda memerlukan akses ke repositori GitHub atau host lain, Anda harus mengidentifikasi dan menambahkan host yang diperlukan untuk skenario tersebut.

    Nama host Tujuan
    graph.windows.net Digunakan oleh instans/kluster komputasi Azure Machine Learning.
    anaconda.com
    *.anaconda.com
    Digunakan untuk menginstal paket default.
    *.anaconda.org Digunakan untuk mendapatkan data repositori.
    pypi.org Digunakan untuk mencantumkan dependensi dari indeks default, jika ada, dan indeks tidak ditimpa oleh pengaturan pengguna. Jika indeks ditimpa, Anda juga harus mengizinkan *.pythonhosted.org.
    cloud.r-project.org Digunakan saat menginstal paket CRAN untuk pengembangan R.
    *pytorch.org Digunakan oleh beberapa contoh berdasarkan PyTorch.
    *.tensorflow.org Digunakan oleh beberapa contoh berdasarkan Tensorflow.
    update.code.visualstudio.com

    *.vo.msecnd.net
    Digunakan untuk mengambil bit server VS Code yang diinstal pada instans komputasi melalui skrip penyetelan.
    raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/* Digunakan untuk mengambil bit server websocket yang diinstal pada instans komputasi. Server websocket digunakan untuk mengirimkan permintaan dari klien Visual Studio Code (aplikasi desktop) ke server Visual Studio Code yang berjalan pada instans komputasi.

    Untuk Protocol:Port, pilih gunakan http, https.

    Untuk informasi selengkapnya tentang mengonfigurasi aturan aplikasi, lihat Menyebarkan dan mengonfigurasi Azure Firewall.

  3. Untuk membatasi lalu lintas keluar untuk model yang disebarkan ke Azure Kubernetes Service (AKS), lihat artikel Membatasi lalu lintas egress di Azure Kubernetes Service dan Menyebarkan model ML ke Azure Kubernetes Service.

Azure Kubernetes Services

Saat menggunakan Azure Kubernetes Service dengan Azure Machine Learning, lalu lintas berikut harus diizinkan:

Diagnostik untuk dukungan

Jika Anda perlu mengumpulkan informasi diagnostik saat bekerja dengan dukungan Microsoft, gunakan langkah-langkah berikut:

  1. Tambahkan Aturan jaringan untuk mengizinkan lalu lintas ke dan dari tag AzureMonitor.

  2. Tambahkan Aturan aplikasi untuk host berikut. Pilih http, https untuk Protocol:Port untuk host ini:

    • dc.applicationinsights.azure.com
    • dc.applicationinsights.microsoft.com
    • dc.services.visualstudio.com

    Untuk daftar alamat IP untuk host Azure Monitor, lihat Alamat IP yang digunakan oleh Azure Monitor.

Firewall lainnya

Panduan di bagian ini bersifat umum, karena setiap firewall memiliki terminologinya sendiri dan konfigurasi yang spesifik. Jika Anda memiliki pertanyaan, periksa dokumentasi firewall yang Anda gunakan.

Jika tidak dikonfigurasi dengan benar, firewall dapat menyebabkan masalah menggunakan ruang kerja Anda. Ada berbagai nama host yang digunakan oleh ruang kerja Azure Machine Learning. Bagian berikut ini mencantumkan host yang diperlukan untuk Azure Machine Learning.

Host Microsoft

Host di tabel berikut dimiliki oleh Microsoft dan menyediakan layanan yang diperlukan agar ruang kerja Anda berfungsi dengan baik. Tabel berikut ini mencantumkan nama host untuk wilayah Azure publik, Azure Government, dan Azure Tiongkok 21Vianet.

Host Azure Umum

Diperlukan untuk Azure publik Azure Government Azure China 21Vianet
Azure Active Directory http://login.microsoftonline.com/ login.microsoftonline.us login.chinacloudapi.cn
Portal Azure management.azure.com management.azure.us management.azure.cn
Azure Resource Manager management.azure.com management.usgovcloudapi.net management.chinacloudapi.cn

Host Azure Machine Learning

Penting

Di tabel berikut, ganti <storage> dengan nama penyimpanan akun penyimpanan default ruang kerja Azure Machine Learning Anda.

Diperlukan untuk Azure publik Azure Government Azure China 21Vianet
Studio Azure Machine Learning ml.azure.com ml.azure.us studio.ml.azure.cn
API *.azureml.ms *.ml.azure.us *.ml.azure.cn
Notebook terintegrasi *.notebooks.azure.net *.notebooks.usgovcloudapi.net *.notebooks.chinacloudapi.cn
Notebook terintegrasi <storage>.file.core.windows.net <storage>.file.core.usgovcloudapi.net <storage>.file.core.chinacloudapi.cn
Notebook terintegrasi <storage>.dfs.core.windows.net <storage>.dfs.core.usgovcloudapi.net <storage>.dfs.core.chinacloudapi.cn
Notebook terintegrasi <storage>.blob.core.windows.net <storage>.blob.core.usgovcloudapi.net <storage>.blob.core.chinacloudapi.cn
Notebook terintegrasi graph.microsoft.com graph.microsoft.us graph.chinacloudapi.cn
Notebook terintegrasi *.aznbcontent.net

Host instans komputasi dan host kluster komputasi Azure Machine Learning

Diperlukan untuk Azure publik Azure Government Azure China 21Vianet
Kluster/instans komputasi graph.windows.net graph.windows.net graph.chinacloudapi.cn
Hitung intance *.instances.azureml.net *.instances.azureml.us *.instances.azureml.cn
Hitung intance *.instances.azureml.ms
Akun Azure Storage *.blob.core.windows.net
*.table.core.windows.net
*.queue.core.windows.net
*.blob.core.usgovcloudapi.net
*.table.core.usgovcloudapi.net
*.queue.core.usgovcloudapi.net
*blob.core.chinacloudapi.cn
*.table.core.chinacloudapi.cn
*.queue.core.chinacloudapi.cn
Azure Key Vault *.vault.azure.net *.vault.usgovcloudapi.net *.vault.azure.cn

Penting

Firewall Anda harus mengizinkan komunikasi dengan menggunakan *.instances.azureml.ms daripada port TCP 18881, 443, and 8787.

Gambar Docker dipelihara oleh Azure Machine Learning

Diperlukan untuk Azure publik Azure Government Azure China 21Vianet
Azure Container Registry azurecr.io azurecr.us azurecr.cn
Microsoft Container Registry mcr.microsoft.com mcr.microsoft.com mcr.microsoft.com
Citra bawaan Azure Machine Learning viennaglobal.azurecr.io viennaglobal.azurecr.io viennaglobal.azurecr.io

Tip

  • Azure Container Registry diperlukan untuk setiap citra Docker kustom. Hal ini mencakup modifikasi kecil (seperti paket tambahan) untuk membuat citra dasar yang disediakan oleh Microsoft.
  • Microsoft Container Registry hanya diperlukan jika Anda berencana untuk menggunakan citra Docker default yang disediakan Microsoft dan mengaktifkan dependensi yang dikelola pengguna.
  • Jika Anda berencana menggunakan identitas federasi, lihat artikel Praktik terbaik untuk mengamankan Layanan Federasi Direktori Aktif.

Juga, gunakan informasi di bagian konfigurasi masuk untuk menambahkan alamat IP untuk BatchNodeManagement dan AzureMachineLearning.

Untuk informasi tentang cara membatasi akses ke model yang disebarkan ke Azure Kubernetes Service (AKS), lihat Membatasi lalu lintas egress di Azure Kubernetes Service.

Tip

Jika Anda bekerja dengan Dukungan Microsoft untuk mengumpulkan informasi diagnostik, Anda harus mengizinkan lalu lintas keluar ke alamat IP yang digunakan oleh host Azure Monitor. Untuk daftar alamat IP untuk host Azure Monitor, lihat Alamat IP yang digunakan oleh Azure Monitor.

Host Python

Host di bagian ini digunakan untuk memasang paket Python dan diperlukan selama pengembangan, pelatihan, dan penyebaran.

Catatan

Ini bukan daftar lengkap host yang diperlukan untuk semua sumber daya Python di internet, hanya yang paling umum digunakan. Misalnya, jika Anda memerlukan akses ke repositori GitHub atau host lain, Anda harus mengidentifikasi dan menambahkan host yang diperlukan untuk skenario tersebut.

Nama host Tujuan
anaconda.com
*.anaconda.com
Digunakan untuk menginstal paket default.
*.anaconda.org Digunakan untuk mendapatkan data repositori.
pypi.org Digunakan untuk mencantumkan dependensi dari indeks default, jika ada, dan indeks tidak ditimpa oleh pengaturan pengguna. Jika indeks ditimpa, Anda juga harus mengizinkan *.pythonhosted.org.
*pytorch.org Digunakan oleh beberapa contoh berdasarkan PyTorch.
*.tensorflow.org Digunakan oleh beberapa contoh berdasarkan Tensorflow.

Host R

Host di bagian ini digunakan untuk memasang paket R dan diperlukan selama pengembangan, pelatihan, dan penyebaran.

Catatan

Ini bukan daftar lengkap host yang diperlukan untuk semua sumber daya R di internet, hanya yang paling umum digunakan. Misalnya, jika Anda memerlukan akses ke repositori GitHub atau host lain, Anda harus mengidentifikasi dan menambahkan host yang diperlukan untuk skenario tersebut.

Nama host Tujuan
cloud.r-project.org Digunakan saat menginstal paket CRAN.

Azure Kubernetes Services

Saat menggunakan Azure Kubernetes Service dengan Azure Machine Learning, lalu lintas berikut harus diizinkan:

Host Visual Studio Code

Host di bagian ini digunakan untuk memasang paket Visual Studio Code untuk membuat koneksi jarak jauh antara Visual Studio Code dan menghitung instans di ruang kerja Azure Machine Learning Anda.

Catatan

Daftar ini bukan daftar lengkap host yang diperlukan untuk semua sumber daya Visual Studio Code di internet, melainkan yang paling umum digunakan saja. Misalnya, jika Anda memerlukan akses ke repositori GitHub atau host lain, Anda harus mengidentifikasi dan menambahkan host yang diperlukan untuk skenario tersebut.

Nama host Tujuan
update.code.visualstudio.com

*.vo.msecnd.net
Digunakan untuk mengambil bit server VS Code yang diinstal pada instans komputasi melalui skrip penyetelan.
raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/* Digunakan untuk mengambil bit server websocket yang diinstal pada instans komputasi. Server websocket digunakan untuk mengirimkan permintaan dari klien Visual Studio Code (aplikasi desktop) ke server Visual Studio Code yang berjalan pada instans komputasi.

Langkah berikutnya

Artikel ini adalah bagian dari seri tentang mengamankan alur kerja Azure Machine Learning. Lihat artikel lain dalam seri ini:

Untuk informasi lebih lanjut terkait cara mengonfigurasi Azure Firewall, lihat Tutorial: Menyebarkan dan mengonfigurasi Azure Firewall menggunakan portal Microsoft Azure.