Azure Machine Learning-beli betanítási környezet biztonságossá tétele virtuális hálózatokkal
A KÖVETKEZŐKRE VONATKOZIK: Python SDK azure-ai-ml v2 (aktuális)
Tipp.
A cikkben ismertetett lépések helyett használhatja az Azure Machine Learning által felügyelt virtuális hálózatokat . Felügyelt virtuális hálózat esetén az Azure Machine Learning kezeli a munkaterület és a felügyelt számítások hálózati elkülönítésének feladatát. Privát végpontokat is hozzáadhat a munkaterülethez szükséges erőforrásokhoz, például az Azure Storage-fiókhoz. További információ: Munkaterület kezelt hálózati elkülönítés.
Az Azure Machine Learning számítási példánya, a kiszolgáló nélküli számítási és számítási fürt használatával biztonságosan taníthat be modelleket egy Azure-beli virtuális hálózaton. A környezet tervezésekor konfigurálhatja a számítási példányt/fürtöt vagy a kiszolgáló nélküli számítást nyilvános IP-címmel vagy anélkül. A kettő közötti általános különbségek a következők:
- Nincs nyilvános IP-cím: Csökkenti a költségeket, mivel nem rendelkezik ugyanazokkal a hálózati erőforrás-követelményekkel. Javítja a biztonságot azáltal, hogy eltávolítja az internetről érkező bejövő forgalomra vonatkozó követelményt. A szükséges erőforrásokhoz (Microsoft Entra ID, Azure Resource Manager stb.) való kimenő hozzáférés engedélyezéséhez azonban további konfigurációmódosítások szükségesek.
- Nyilvános IP-cím: Alapértelmezés szerint működik, de további Azure-hálózati erőforrások miatt többe kerül. Bejövő kommunikációt igényel az Azure Machine Learning szolgáltatástól a nyilvános interneten keresztül.
Az alábbi táblázat a konfigurációk közötti különbségeket tartalmazza:
Konfiguráció | Nyilvános IP-címmel | Nyilvános IP-cím nélkül |
---|---|---|
Bejövő forgalom | AzureMachineLearning szolgáltatáscímke. |
Egyik sem |
Kimenő forgalom | Alapértelmezés szerint korlátozás nélkül elérheti a nyilvános internetet. A hálózati biztonsági csoport vagy tűzfal használatával korlátozhatja, hogy mit ér el. |
Alapértelmezés szerint az Azure által biztosított alapértelmezett kimenő hozzáféréssel érheti el a nyilvános hálózatot. Javasoljuk, hogy inkább virtuális hálózati NAT-átjárót vagy tűzfalat használjon, ha a kimenő forgalmat a szükséges internetes erőforrásokhoz kell irányítania. |
Azure-beli hálózati erőforrások | Nyilvános IP-cím, terheléselosztó, hálózati adapter | Egyik sem |
Az Azure Databricks vagy a HDInsight használatával modelleket taníthat be egy virtuális hálózaton.
Fontos
A cikkben megjelölt (előzetes verziójú) elemek jelenleg nyilvános előzetes verzióban érhetők el. Az előzetes verzió szolgáltatásszint-szerződés nélkül érhető el, és éles számítási feladatokhoz nem ajánlott. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik. További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.
Ez a cikk egy Azure Machine Learning-munkafolyamat biztonságossá tételéről szóló sorozat része. Tekintse meg a sorozat többi cikkét:
- A virtuális hálózat áttekintése
- A munkaterület erőforrásainak védelme
- A következtetési környezet védelme
- Studio-funkciók engedélyezése
- Egyéni DNS használata
- Tűzfal használata
A biztonságos munkaterületek létrehozásáról szóló oktatóanyagért lásd : Biztonságos munkaterület, Bicep-sablon vagy Terraform-sablon létrehozása.
Ebből a cikkből megtudhatja, hogyan védheti meg a következő betanítási számítási erőforrásokat egy virtuális hálózaton:
- Azure Machine Learning számítási fürt
- Azure Machine Learning számítási példány
- Kiszolgáló nélküli Azure Machine Learning-számítás
- Azure Databricks
- Virtuális gép
- HDInsight-fürt
Előfeltételek
Olvassa el a Hálózatbiztonság áttekintési cikket a gyakori virtuális hálózati forgatókönyvek és az általános virtuális hálózati architektúra megismeréséhez.
A számítási erőforrásokhoz használandó meglévő virtuális hálózat és alhálózat. Ennek a virtuális hálózatnak ugyanabban az előfizetésben kell lennie, mint az Azure Machine Learning-munkaterület.
- Javasoljuk, hogy a munkaterület és a betanítási feladatok által használt tárfiókokat ugyanabban az Azure-régióban helyezze el, amelyet számítási példányokhoz, kiszolgáló nélküli számításokhoz és fürtökhöz kíván használni. Ha nem ugyanabban az Azure-régióban vannak, adatátviteli költségekkel és nagyobb hálózati késéssel járhat.
- Győződjön meg arról, hogy a WebSocket-kommunikáció engedélyezve van az
*.instances.azureml.net
és az*.instances.azureml.ms
felé a virtuális hálózaton. A WebSocketeket a Jupyter használja a számítási példányokon.
A virtuális hálózat egy meglévő alhálózata. Ez az alhálózat számítási példányok, fürtök és csomópontok kiszolgáló nélküli számításhoz való létrehozásakor használatos.
- Győződjön meg arról, hogy az alhálózat nincs delegálva más Azure-szolgáltatásokba.
- Győződjön meg arról, hogy az alhálózat elegendő ingyenes IP-címet tartalmaz. Minden számítási példányhoz egy IP-cím szükséges. A számítási fürtön belüli összes csomóponthoz és minden kiszolgáló nélküli számítási csomóponthoz egy IP-cím szükséges.
Ha saját DNS-kiszolgálóval rendelkezik, javasoljuk a DNS-továbbítás használatát a számítási példányok és fürtök teljes tartományneveinek (FQDN) feloldásához. További információ: Egyéni DNS használata az Azure Machine Learning használatával.
Ha erőforrásokat szeretne üzembe helyezni egy virtuális hálózaton vagy alhálózaton, a felhasználói fióknak rendelkeznie kell az Azure szerepköralapú hozzáférés-vezérlési (Azure RBAC) alábbi műveleteihez szükséges engedélyekkel:
- "Microsoft.Network/*/read" a virtuális hálózati erőforráson. Erre az engedélyre nincs szükség az Azure Resource Manager-sablontelepítésekhez.
- "Microsoft.Network/virtualNetworks/join/action" a virtuális hálózati erőforráson.
- "Microsoft.Network/virtualNetworks/alhálózatok/csatlakozás/művelet" az alhálózati erőforráson.
További információ a hálózatkezeléssel rendelkező Azure RBAC-ről: A hálózatkezelés beépített szerepkörei
Korlátozások
A virtuális hálózatban történő számítási fürt/telepítés és a kiszolgáló nélküli számítási rendszer telepítése nem támogatott az Azure Lighthouse segítségével.
A 445-ös portot privát hálózati kommunikációhoz meg kell nyitni a számítási példányok és az alapértelmezett tárolófiók között a képzés során. Ha például a számítógépek egy VNetben, a tárolófiók pedig egy másikban van, ne blokkolja a 445-ös portot a tárolófiók VNetjéhez.
Számítási fürt egy másik virtuális hálózaton/régióban a munkaterülettől
Fontos
Nem hozhat létre számítási példányt egy másik régióban/virtuális hálózaton, csak egy számítási fürtben.
Ha egy számítási fürtöt a munkaterület virtuális hálózatától eltérő régióban szeretne létrehozni egy Azure-beli virtuális hálózatban, több lehetősége van a két virtuális hálózat közötti kommunikáció engedélyezésére.
- Virtuális hálózatok közötti társviszony-létesítés használata.
- Adjon hozzá egy privát végpontot a munkaterülethez a számítási fürtöt tartalmazó virtuális hálózaton.
Fontos
A kiválasztott metódustól függetlenül létre kell hoznia a virtuális hálózatot is a számítási fürthöz; Az Azure Machine Learning nem hozza létre Önnek.
Azt is engedélyeznie kell, hogy az alapértelmezett tárfiók, az Azure Container Registry és az Azure Key Vault hozzáférjen a számítási fürt virtuális hálózatához. Ennek többféle módja is van. Létrehozhat például egy privát végpontot a számítási fürt virtuális hálózatának minden egyes erőforrásához, vagy virtuális hálózatok közötti társviszony-létesítéssel engedélyezheti a munkaterület virtuális hálózatának a számítási fürt virtuális hálózatának elérését.
Forgatókönyv: Virtuális hálózatok közötti társviszony-létesítés
A munkaterület konfigurálása Azure-beli virtuális hálózat használatára. További információ: Munkaterület erőforrásainak védelme.
Hozzon létre egy második Azure-beli virtuális hálózatot, amelyet a számítási fürtökhöz fog használni. A munkaterülethez használttól eltérő Azure-régióban is lehet.
Konfigurálja a virtuális hálózatok közötti társviszonyt a két virtuális hálózat között.
Tipp.
A folytatás előtt várjon, amíg a virtuális hálózatok társviszony-létesítési állapota csatlakoztatva van.
Módosítsa a
privatelink.api.azureml.ms
DNS-zónát a számítási fürt virtuális hálózatára mutató hivatkozás hozzáadásához. Ezt a zónát az Azure Machine Learning-munkaterület hozza létre, amikor privát végpontot használ a virtuális hálózatban való részvételhez.Adjon hozzá egy új virtuális hálózati hivatkozást a DNS-zónához. Ezt többféleképpen is megteheti:
- Az Azure Portalon keresse meg a DNS-zónát, és válassza ki a virtuális hálózati kapcsolatokat. Ezután válassza a + Hozzáadás lehetőséget, és válassza ki a számítási fürtökhöz létrehozott virtuális hálózatot.
- Az Azure CLI-ben használja a
az network private-dns link vnet create
parancsot. További információ: az network private-dns link vnet create. - Az Azure PowerShellben használja a
New-AzPrivateDnsVirtualNetworkLink
parancsot. További információ: New-AzPrivateDnsVirtualNetworkLink.
Ismételje meg a DNS-zóna előző lépését és allépését
privatelink.notebooks.azure.net
.Konfigurálja a következő Azure-erőforrásokat, hogy mindkét virtuális hálózatról engedélyezze a hozzáférést.
- A munkaterület alapértelmezett tárfiókja.
- A munkaterület Azure Container Registryje.
- A munkaterület Azure Key Vaultja.
Tipp.
Ezeket a szolgáltatásokat többféleképpen is konfigurálhatja a virtuális hálózatokhoz való hozzáférés engedélyezéséhez. Létrehozhat például egy privát végpontot mindkét virtuális hálózat egyes erőforrásaihoz. Vagy konfigurálhatja az erőforrásokat úgy, hogy mindkét virtuális hálózatról engedélyezze a hozzáférést.
Hozzon létre egy számítási fürtöt, ahogyan a VNet használata esetén általában tenné, de válassza ki a számítási fürthöz létrehozott virtuális hálózatot. Ha a virtuális hálózat egy másik régióban található, válassza ki ezt a régiót a számítási fürt létrehozásakor.
Figyelmeztetés
A régió beállításakor, ha a munkaterületétől vagy adattáraitól eltérő régióról van szó, nagyobb hálózati késés és adatátviteli költségek jelentkezhetnek. A késés és a költségek a fürt létrehozásakor és a rajta futó feladatok esetén fordulhatnak elő.
Forgatókönyv: Privát végpont
A munkaterület konfigurálása Azure-beli virtuális hálózat használatára. További információ: Munkaterület erőforrásainak védelme.
Hozzon létre egy második Azure-beli virtuális hálózatot, amelyet a számítási fürtökhöz fog használni. A munkaterülethez használttól eltérő Azure-régióban is lehet.
Hozzon létre egy új privát végpontot a munkaterülethez a számítási fürtöt tartalmazó virtuális hálózaton.
Ha új privát végpontot szeretne hozzáadni az Azure Portalon, jelölje ki a munkaterületet, majd válassza a Hálózatkezelés lehetőséget. Válassza ki a privát végpont kapcsolatait és a privát végpontot, és a mezők használatával hozzon létre egy új privát végpontot.
- A Régió kiválasztásakor válassza ki ugyanazt a régiót, mint a virtuális hálózat.
- Az erőforrástípus kiválasztásakor használja a Microsoft.MachineLearningServices/workspaces szolgáltatást.
- Állítsa be az erőforrást a munkaterület nevére.
- Állítsa a virtuális hálózatot és az alhálózatot a számítási fürtökhöz létrehozott virtuális hálózatra és alhálózatra.
Végül válassza a Létrehozás lehetőséget a privát végpont létrehozásához.
Ha új privát végpontot szeretne hozzáadni az Azure CLI használatával, használja a
az network private-endpoint create
. A parancs használatára példa: Privát végpont konfigurálása az Azure Machine Learning-munkaterülethez.
Hozzon létre egy számítási fürtöt, ahogyan a VNet használata esetén általában tenné, de válassza ki a számítási fürthöz létrehozott virtuális hálózatot. Ha a virtuális hálózat egy másik régióban található, válassza ki ezt a régiót a számítási fürt létrehozásakor.
Figyelmeztetés
A régió beállításakor, ha a munkaterületétől vagy adattáraitól eltérő régióról van szó, nagyobb hálózati késés és adatátviteli költségek jelentkezhetnek. A késés és a költségek a fürt létrehozásakor és a rajta futó feladatok esetén fordulhatnak elő.
Számítási példány/fürt vagy kiszolgáló nélküli számítás nyilvános IP-cím nélkül
Fontos
Ezek az információk csak Azure-beli virtuális hálózat használatakor érvényesek. Felügyelt virtuális hálózat használata esetén a számítási erőforrások nem helyezhetők üzembe az Azure-beli virtuális hálózaton. A felügyelt virtuális hálózatok használatáról további információt a felügyelt hálózattal végzett felügyelt számítással kapcsolatban talál.
Fontos
Ha nem nyilvános IP-címre konfigurált számítási példányokat vagy számítási fürtöket használ az előzetes verzió engedélyezése nélkül, 2023. január 20. után törölnie kell és újra létre kell hoznia őket (ha a szolgáltatás általánosan elérhető).
Ha korábban nem használt nyilvános IP-címet, előfordulhat, hogy módosítania kell a bejövő és kimenő forgalmat, mivel az általános rendelkezésre állásra vonatkozó követelmények megváltoztak:
- Kimenő követelmények – Két további kimenő, amelyeket csak számítási példányok és fürtök kezelésére használnak. A szolgáltatáscímkék célhelye a Microsoft tulajdonában van:
AzureMachineLearning
szolgáltatáscímke az 5831-ös UDP-porton.BatchNodeManagement
szolgáltatáscímke a 443-at tartalmazó TCP-porton.
Az előfeltételek szakaszban felsorolt konfigurációk mellett az alábbi konfigurációk is szerepelnek, amelyek egy nyilvános IP-cím nélküli számítási példányok/fürtök létrehozására vonatkoznak. A kiszolgáló nélküli számításra is vonatkoznak:
A virtuális hálózatról származó Azure Machine Learning-szolgáltatásokkal való kommunikációhoz a számítási erőforráshoz egy privát munkaterületi végpontot kell használnia. További információ: Privát végpont konfigurálása az Azure Machine Learning-munkaterülethez.
A VNet hálózaton engedélyezze a kimenő forgalmat a következő szolgáltatáscímkék vagy teljesen minősített tartománynevek (FQDN) felé:
Szolgáltatáscímke Protokoll Kikötő Jegyzetek AzureMachineLearning
TCP
UDP443/8787/18881
5831Kommunikáció az Azure Machine Learning szolgáltatással. BatchNodeManagement.<region>
BÁRMELY 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Kommunikáció az Azure Batch-szal. A számítási példány és a számítási fürt az Azure Batch szolgáltatás segítségével valósul meg.Storage.<region>
TCP 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Ez a szolgáltatáscímke az Azure Batch által használt Azure Storage fiókkal való kommunikációra szolgál.Fontos
A kimenő hozzáférés
Storage.<region>
felhasználható a munkaterületről származó adatok kiszűrésére. Szolgáltatásvégpont-szabályzat használatával enyhítheti ezt a biztonsági rést. További információkért tekintse meg az Azure Machine Learning adatkiszivárgás megelőzéséről szóló cikket.FQDN Protokoll Kikötő Jegyzetek <region>.tundra.azureml.ms
UDP 5831 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza.graph.windows.net
TCP 443 Kommunikáció a Microsoft Graph API-val. *.instances.azureml.ms
TCP 443/8787/18881 Kommunikáció az Azure Machine Learning szolgáltatással. *.<region>.batch.azure.com
BÁRMELY 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Kommunikáció az Azure Batch-szal.*.<region>.service.batch.azure.com
BÁRMELY 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Kommunikáció az Azure Batch-szal.*.blob.core.windows.net
TCP 443 Kommunikáció az Azure Blob tárolóval. *.queue.core.windows.net
TCP 443 Kommunikáció az Azure Queue tárolóval. *.table.core.windows.net
TCP 443 Kommunikáció az Azure Table tárolóval. Alapértelmezés szerint a nyilvános IP-cím nélkül konfigurált számítási példányok/fürtök nem rendelkeznek kimenő hozzáféréssel az internethez. Ha a elérheti róla az internetet, az Azure alapértelmezett kimenő hozzáférés és az internetre való kimenő hozzáférést engedélyező NSG miatt van. A azonban nem ajánljuk, hogy a az alapértelmezett kimenő hozzáférést használja. Ha kimenő internet-hozzáférésre van szüksége, javasoljuk, hogy használjon tűzfalat és kimenő szabályokat, vagy NAT-átjárót és hálózati szolgáltatáscsoportokat a kimenő forgalom engedélyezéséhez.
Az Azure Machine Learning által használt kimenő forgalommal kapcsolatos további információkért lásd a következő cikkeket:
Az Azure Firewall használatával használható szolgáltatáscímkékről további információt a virtuális hálózati szolgáltatás címkéiről szóló cikkben talál.
Az alábbi információk segítségével hozzon létre egy nyilvános IP-cím nélküli számítási példányt vagy fürtöt:
A parancsban az ml compute create
cserélje le a következő értékeket:
rg
: Az az erőforráscsoport, amelyben a számítás létrejön.ws
: Az Azure Machine Learning-munkaterület neve.yourvnet
: Az Azure-beli virtuális hálózat.yoursubnet
: A számításhoz használni kívánt alhálózat.AmlCompute
vagyComputeInstance
: A beállítás létrehozAmlCompute
egy számítási fürtöt.ComputeInstance
létrehoz egy számítási példányt.
# 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
Az alábbi információk segítségével konfigurálhat kiszolgáló nélküli számítási csomópontokat nyilvános IP-cím nélkül egy adott munkaterület virtuális hálózatában:
Fontos
Ha nem használ nyilvános IP-cím nélküli számítást, és a munkaterület IP-engedélyezési listát használ, hozzá kell adnia egy kimenő privát végpontot a munkaterülethez. A kiszolgáló nélküli számításnak kommunikálnia kell a munkaterülettel, de ha nem nyilvános IP-címre van konfigurálva, az Azure Default Outbound-t használja az internet-hozzáféréshez. A kimenő forgalom nyilvános IP-címe dinamikus, és nem vehető fel az IP-engedélyezési listára. A munkaterületre irányuló kimenő privát végpont létrehozása lehetővé teszi, hogy a munkaterület kiszolgáló nélküli számításából érkező forgalom megkerülje az IP-engedélyezési listát.
Munkaterület létrehozása:
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
Munkaterület frissítése:
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
Számítási példány/fürt vagy kiszolgáló nélküli számítás nyilvános IP-címmel
Fontos
Ezek az információk csak Azure-beli virtuális hálózat használatakor érvényesek. Felügyelt virtuális hálózat használata esetén a számítási erőforrások nem helyezhetők üzembe az Azure-beli virtuális hálózaton. A felügyelt virtuális hálózatok használatáról további információt a felügyelt hálózattal végzett felügyelt számítással kapcsolatban talál.
Az előfeltételek szakaszban felsorolt konfigurációk mellett az alábbi konfigurációk is kifejezetten nyilvános IP-címekkel rendelkező számítási példányok/fürtök létrehozására vonatkoznak. A kiszolgáló nélküli számításra is vonatkoznak:
Ha több számítási példányt/fürtöt helyez el egy virtuális hálózatban, előfordulhat, hogy egy vagy több erőforrásra kvótanövelést kell kérnie. A Machine Learning számítási példány vagy -fürt automatikusan lefoglalja a hálózati erőforrásokat a virtuális hálózatot tartalmazó erőforráscsoportban. A szolgáltatás minden számítási példányhoz vagy fürthöz a következő erőforrásokat foglalja le:
A rendszer automatikusan létrehoz egy hálózati biztonsági csoportot (NSG). Ez az NSG engedélyezi a bejövő TCP-forgalmat a 44224-s porton a
AzureMachineLearning
szolgáltatáscímkéről.Fontos
A számítási példány és a számítási fürt automatikusan létrehoz egy NSG-t a szükséges szabályokkal.
Ha egy másik NSG-vel rendelkezik az alhálózat szintjén, az alhálózati szintű NSG szabályainak nem szabad ütközniük az automatikusan létrehozott NSG szabályaival.
A hálózati biztonsági csoportok hálózati forgalmának szűréséről a hálózati biztonsági csoportok hogyan szűrik a hálózati forgalmat.
Egy terheléselosztó
A számítási fürtök esetében ezek az erőforrások minden alkalommal törlődnek, amikor a fürt 0 csomópontra skáláz, és felskálázáskor jön létre.
A számítási példányok esetében ezeket az erőforrásokat a rendszer a példány törléséig megőrzi. A példány leállítása nem távolítja el az erőforrásokat.
Fontos
Ezekre az erőforrásokra az előfizetésben meghatározott erőforráskvóták vonatkoznak. Ha a virtuális hálózati erőforráscsoport zárolva van, a számítási fürt/példány törlése sikertelen lesz. A terheléselosztó csak a számítási fürt/példány törléséig törölhető. Győződjön meg arról is, hogy nincs olyan Azure Policy-hozzárendelés, amely tiltaná a hálózati biztonsági csoportok létrehozását.
A virtuális hálózatban engedélyezze a bejövő TCP-forgalmat a 44224-s porton a
AzureMachineLearning
szolgáltatáscímkéről.Fontos
A számítási példány/fürt létrehozásakor dinamikusan hozzárendel egy IP-címet. Mivel a cím nem ismert a létrehozás előtt, és a létrehozási folyamat részeként bejövő hozzáférésre van szükség, statikusan nem rendelheti hozzá a tűzfalhoz. Ehelyett, ha tűzfalat használ a virtuális hálózattal, létre kell hoznia egy felhasználó által megadott útvonalat a bejövő forgalom engedélyezéséhez.
Ha virtuális hálózaton van, engedélyezze a kimenő forgalmat a következő szolgáltatáscímkék felé:
Szolgáltatáscímke Protokoll Kikötő Jegyzetek AzureMachineLearning
TCP
UDP443/8787/18881
5831Kommunikáció az Azure Machine Learning szolgáltatással. BatchNodeManagement.<region>
BÁRMELY 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Kommunikáció az Azure Batch-szal. A számítási példány és a számítási fürt az Azure Batch szolgáltatás segítségével valósul meg.Storage.<region>
TCP 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Ez a szolgáltatáscímke az Azure Batch által használt Azure Storage fiókkal való kommunikációra szolgál.Fontos
A kimenő hozzáférés
Storage.<region>
felhasználható a munkaterületről származó adatok kiszűrésére. Szolgáltatásvégpont-szabályzat használatával enyhítheti ezt a biztonsági rést. További információkért tekintse meg az Azure Machine Learning adatkiszivárgás megelőzéséről szóló cikket.FQDN Protokoll Kikötő Jegyzetek <region>.tundra.azureml.ms
UDP 5831 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza.graph.windows.net
TCP 443 Kommunikáció a Microsoft Graph API-val. *.instances.azureml.ms
TCP 443/8787/18881 Kommunikáció az Azure Machine Learning szolgáltatással. *.<region>.batch.azure.com
BÁRMELY 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Kommunikáció az Azure Batch-szal.*.<region>.service.batch.azure.com
BÁRMELY 443 Helyettesítse a <region>
címet azzal az Azure régióval, amely az Azure Machine Learning munkaterületet tartalmazza. Kommunikáció az Azure Batch-szal.*.blob.core.windows.net
TCP 443 Kommunikáció az Azure Blob tárolóval. *.queue.core.windows.net
TCP 443 Kommunikáció az Azure Queue tárolóval. *.table.core.windows.net
TCP 443 Kommunikáció az Azure Table tárolóval.
A következő információk segítségével hozzon létre egy számítási példányt vagy fürtöt nyilvános IP-címmel a virtuális hálózaton:
A parancsban az ml compute create
cserélje le a következő értékeket:
rg
: Az az erőforráscsoport, amelyben a számítás létrejön.ws
: Az Azure Machine Learning-munkaterület neve.yourvnet
: Az Azure-beli virtuális hálózat.yoursubnet
: A számításhoz használni kívánt alhálózat.AmlCompute
vagyComputeInstance
: A beállítás létrehozAmlCompute
egy számítási fürtöt.ComputeInstance
létrehoz egy számítási példányt.
# 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
Az alábbi információk segítségével konfigurálhat kiszolgáló nélküli számítási csomópontokat nyilvános IP-címmel egy adott munkaterület virtuális hálózatában:
Munkaterület létrehozása:
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
Munkaterület frissítése:
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
- A virtuális hálózatnak ugyanabban az előfizetésben és régióban kell lennie, mint az Azure Machine Learning-munkaterületnek.
- Ha a munkaterületHez tartozó Azure Storage-fiók(ok) is védettek egy virtuális hálózaton, akkor azoknak ugyanabban a virtuális hálózaton kell lenniük, mint az Azure Databricks-fürt.
- Az Azure Databricks által használt databricks-private és databricks-public alhálózatok mellett a virtuális hálózathoz létrehozott alapértelmezett alhálózatra is szükség van.
- Az Azure Databricks nem használ privát végpontot a virtuális hálózattal való kommunikációhoz.
Az Azure Databricks virtuális hálózattal való használatáról további információt az Azure Databricks üzembe helyezése az Azure-beli virtuális hálózaton című témakörben talál.
Virtuális gép vagy HDInsight-fürt
Ebben a szakaszban megtudhatja, hogyan használhat virtuális gépet vagy Azure HDInsight-fürtöt egy virtuális hálózatban a munkaterületével.
A virtuális gép vagy a HDInsight-fürt létrehozása
Fontos
Az Azure Machine Learning csak az Ubuntu rendszerű virtuális gépeket támogatja.
Hozzon létre egy virtuális gépet vagy HDInsight-fürtöt az Azure Portal vagy az Azure CLI használatával, és helyezze a fürtöt egy Azure-beli virtuális hálózatba. További információért tekintse át az alábbi cikkeket:
Azure-beli virtuális hálózatok létrehozása és kezelése Linux rendszerű virtuális gépekhez
A HDInsight kiterjesztése Azure-beli virtuális hálózat használatával
Hálózati portok konfigurálása
Engedélyezze az Azure Machine Learning számára, hogy kommunikáljon a virtuális gépen vagy a fürtben lévő SSH-porttal, konfiguráljon egy forrásbejegyzést a hálózati biztonsági csoporthoz. Az SSH-port általában a 22-s port. A forrásból érkező forgalom engedélyezéséhez hajtsa végre a következő műveleteket:
A Forrás legördülő listában válassza a Szolgáltatáscímke lehetőséget.
A Forrásszolgáltatás címke legördülő listájában válassza az AzureMachineLearning lehetőséget.
A Forrásporttartományok legördülő listában válassza a *lehetőséget.
A Cél legördülő listában válassza az Any (Bármelyik) lehetőséget.
A Célporttartományok legördülő listában válassza a 22 lehetőséget.
A Protokoll területen válassza az Any (Bármelyik) lehetőséget.
A Művelet csoportban válassza az Engedélyezés lehetőséget.
Tartsa meg a hálózati biztonsági csoport alapértelmezett kimenő szabályait. További információkért tekintse meg a biztonsági csoportok alapértelmezett biztonsági szabályait.
Ha nem szeretné használni az alapértelmezett kimenő szabályokat, és korlátozni szeretné a virtuális hálózat kimenő hozzáférését, tekintse meg a szükséges nyilvános internet-hozzáférési szakaszt.
A virtuális gép vagy a HDInsight-fürt csatolása
Csatolja a virtuális gépet vagy a HDInsight-fürtöt az Azure Machine Learning-munkaterülethez. További információ: Számítási erőforrások kezelése modellbetanításhoz és üzembe helyezéshez a studióban.
A modellek betanítása érdekében szükséges nyilvános internet-hozzáférés
Fontos
Bár a jelen cikk korábbi szakaszai a számítási erőforrások létrehozásához szükséges konfigurációkat ismertetik, az ebben a szakaszban szereplő konfigurációs információk szükségesek ahhoz, hogy ezeket az erőforrásokat a modellek betanítására használják.
Az Azure Machine Learningnek bejövő és kimenő hozzáférést kell biztosítani a nyilvános internethez. Az alábbi táblázatok áttekintést nyújtanak a szükséges hozzáférésről és annak céljáról. A végződő .region
szolgáltatáscímkék esetében cserélje le region
a munkaterületet tartalmazó Azure-régióra. Például Storage.westus
:
Tipp.
A szükséges lap felsorolja a szükséges bejövő és kimenő konfigurációt. A helyzet lap felsorolja azokat az opcionális bejövő és kimenő konfigurációkat, amelyeket engedélyezni szeretne bizonyos konfigurációkhoz.
Irány | Protokoll > ports |
Szolgáltatáscímke | Cél |
---|---|---|---|
Kimenő | TCP: 80, 443 | AzureActiveDirectory |
Hitelesítés Microsoft Entra ID használatával. |
Kimenő | TCP: 443, 18881 UDP: 5831 |
AzureMachineLearning |
Az Azure Machine Learning-szolgáltatások használata. A python intellisense a jegyzetfüzetekben az 18881-ben használt portot használja. Egy Azure Machine Learning számítási példány létrehozása, frissítése és törlése az 5831-ös portot használja. |
Kimenő | BÁRMELY: 443 | BatchNodeManagement.region |
Kommunikáció az Azure Batch háttérrendszerével az Azure Machine Learning számítási példányaihoz/fürtjeihez. |
Kimenő | TCP: 443 | AzureResourceManager |
Azure-erőforrások létrehozása az Azure Machine Learning, az Azure CLI és az Azure Machine Learning SDK használatával. |
Kimenő | TCP: 443 | Storage.region |
Az Azure Storage-fiókban tárolt adatok elérése a számítási fürthöz és a számítási példányhoz. A kimenő adatkiszivárgás megelőzéséről további információt az Adatkiszivárgás elleni védelem című témakörben talál. |
Kimenő | TCP: 443 | AzureFrontDoor.FrontEnd * Nem szükséges a 21Vianet által üzemeltetett Microsoft Azure-ban. |
Az Azure Machine Learning stúdió globális belépési pontja. Képek és környezetek tárolása az AutoML-hez. A kimenő adatkiszivárgás megelőzéséről további információt az Adatkiszivárgás elleni védelem című témakörben talál. |
Kimenő | TCP: 443 | MicrosoftContainerRegistry.region Vegye figyelembe , hogy ez a címke függőségben van a AzureFrontDoor.FirstParty címkén |
A Microsoft által biztosított Docker-rendszerképek elérése. Az Azure Machine Learning útválasztó beállítása az Azure Kubernetes Service-hez. |
Tipp.
Ha a szolgáltatáscímkék helyett az IP-címekre van szüksége, használja az alábbi lehetőségek egyikét:
- Töltsön le egy listát az Azure IP-tartományokból és szolgáltatáscímkékből.
- Használja az Azure CLI az network list-service-tags parancsot.
- Használja az Azure PowerShell Get-AzNetworkServiceTag parancsot.
Az IP-címek rendszeresen változhatnak.
Előfordulhat, hogy engedélyeznie kell a Visual Studio Code-ba és nem Microsoft-webhelyekre irányuló kimenő forgalmat a gépi tanulási projekt által igényelt csomagok telepítéséhez. Az alábbi táblázat a gépi tanuláshoz gyakran használt adattárakat sorolja fel:
Gazdagép neve | Cél |
---|---|
anaconda.com *.anaconda.com |
Az alapértelmezett csomagok telepítéséhez használatos. |
*.anaconda.org |
Adattáradatok lekérésére szolgál. |
pypi.org |
Az alapértelmezett index függőségeinek listázására szolgál, ha vannak ilyenek, és az indexet a felhasználói beállítások nem írják felül. Ha az index felülírva van, engedélyeznie *.pythonhosted.org kell azt is. |
cloud.r-project.org |
CRAN-csomagok R-fejlesztéshez való telepítésekor használatos. |
*.pytorch.org |
Néhány példa a PyTorch alapján használja. |
*.tensorflow.org |
A Tensorflow alapján néhány példa használja. |
code.visualstudio.com |
A Visual Studio Code asztali verziójának letöltéséhez és telepítéséhez szükséges. Ez a Visual Studio Code Web esetében nem szükséges. |
update.code.visualstudio.com *.vo.msecnd.net |
A számítási példányra telepített Visual Studio Code-kiszolgáló bitjeinek lekérésére szolgál egy beállítási szkripten keresztül. |
marketplace.visualstudio.com vscode.blob.core.windows.net *.gallerycdn.vsassets.io |
A Visual Studio Code-bővítmények letöltéséhez és telepítéséhez szükséges. Ezek a gazdagépek engedélyezik a Visual Studio Code Azure ML-bővítménye által biztosított számítási példányokhoz való távoli kapcsolatot. További információ: Csatlakozás Azure Machine Learning számítási példányokhoz a Visual Studio Code-ban. |
raw.githubusercontent.com/microsoft/vscode-tools-for-ai/master/azureml_remote_websocket_server/* |
A számítási példányra telepített websocket-kiszolgáló bitjeinek lekérésére szolgál. A websocket-kiszolgáló kéréseket továbbít a Visual Studio Code-ügyféltől (asztali alkalmazás) a számítási példányon futtatott Visual Studio Code-kiszolgálóhoz. |
Feljegyzés
Az Azure Machine Learning VS Code-bővítmény használatakor a távoli számítási példánynak hozzá kell férnie a nyilvános adattárakhoz a bővítmény által igényelt csomagok telepítéséhez. Ha a számítási példány proxyt igényel ezen nyilvános adattárak vagy az Internet eléréséhez, a számítási példány ~/.bashrc
fájljában be kell állítania és exportálnia kell a HTTP_PROXY
és a HTTPS_PROXY
környezeti változót. Ez a folyamat az üzembe helyezéskor automatizálható egy egyéni szkript használatával.
Ha az Azure Kubernetes Service-t (AKS) az Azure Machine Learning szolgáltatással használja, engedélyezze a következő forgalmat az AKS virtuális hálózatra:
- Az AKS-re vonatkozó általános bejövő/kimenő követelmények az Azure Kubernetes Service-ben a kimenő forgalom korlátozása című cikkben leírtak szerint.
- Kimenő mcr.microsoft.com .
- Modell AKS-fürtön való üzembe helyezésekor használja az ML-modellek Üzembe helyezése az Azure Kubernetes Service-ben című cikkben található útmutatást.
A tűzfalmegoldások használatáról további információt a Tűzfal használata az Azure Machine Learningdel című témakörben talál.
Következő lépések
Ez a cikk egy Azure Machine Learning-munkafolyamat biztonságossá tételéről szóló sorozat része. Tekintse meg a sorozat többi cikkét: