Virtuális hálózat tervezése az Azure HDInsighthoz
Ez a cikk háttérinformációkat tartalmaz az Azure Virtual Networks (VNets) és az Azure HDInsight használatával kapcsolatban. Emellett tárgyalja a HDInsight-fürt virtuális hálózatának implementálása előtt meghozandó tervezési és megvalósítási döntéseket. A tervezési fázis befejezése után továbbléphet a Virtuális hálózatok létrehozása azure HDInsight-fürtökhöz című szakaszra. További információ a HDInsight felügyeleti IP-címekkel kapcsolatban, amelyek a hálózati biztonsági csoportok (NSG-k) és a felhasználó által megadott útvonalak megfelelő konfigurálásához szükségesek, lásd: HDInsight felügyeleti IP-címek.
Az Azure Virtual Network használata a következő forgatókönyveket teszi lehetővé:
- Csatlakozás a HDInsighthoz közvetlenül egy helyszíni hálózatról.
- A HDInsight csatlakoztatása egy Azure-beli virtuális hálózat adattáraihoz.
- Közvetlen hozzáférés az Apache Hadoop-szolgáltatásokhoz, amelyek nem érhetők el nyilvánosan az interneten keresztül. Ilyenek például az Apache Kafka API-k vagy az Apache HBase Java API.
Fontos
Ha HDInsight-fürtöt hoz létre egy virtuális hálózaton, több hálózati erőforrást is létrehoz, például hálózati adaptereket és terheléselosztókat. Ne törölje vagy módosítsa ezeket a hálózati erőforrásokat, mert a fürtnek megfelelően kell működnie a virtuális hálózattal.
Tervezés
A HDInsight virtuális hálózaton való telepítésekor a következő kérdésekre kell válaszolnia:
Telepítenie kell a HDInsightot egy meglévő virtuális hálózatba? Vagy új hálózatot hoz létre?
Ha meglévő virtuális hálózatot használ, előfordulhat, hogy módosítania kell a hálózati konfigurációt a HDInsight telepítése előtt. További információt a HDInsight hozzáadása meglévő virtuális hálózathoz című szakaszban talál.
Csatlakoztatja a HDInsightot tartalmazó virtuális hálózatot egy másik virtuális hálózathoz vagy a helyszíni hálózathoz?
Az erőforrások hálózatok közötti egyszerű használatához előfordulhat, hogy létre kell hoznia egy egyéni DNS-t, és konfigurálnia kell a DNS-továbbítást. További információt a Több hálózat összekapcsolása című szakaszban talál.
Korlátozza/átirányítja a bejövő vagy kimenő forgalmat a HDInsightba?
A HDInsightnak korlátlan kommunikációval kell rendelkeznie meghatározott IP-címekkel az Azure-adatközpontban. Több portot is engedélyezni kell tűzfalakon keresztül az ügyfélkommunikációhoz. További információ: Hálózati forgalom szabályozása.
HDInsight hozzáadása meglévő virtuális hálózathoz
Az ebben a szakaszban ismertetett lépésekkel megtudhatja, hogyan adhat hozzá új HDInsightot egy meglévő Azure-Virtual Network.
Megjegyzés
- Meglévő HDInsight-fürtöt nem vehet fel virtuális hálózatba.
- A virtuális hálózatnak és a létrehozott fürtnek ugyanabban az előfizetésben kell lennie.
Klasszikus vagy Resource Manager üzembehelyezési modellt használ a virtuális hálózathoz?
A HDInsight 3.4-s és újabb verziója Resource Manager virtuális hálózatot igényel. A HDInsight korábbi verzióihoz klasszikus virtuális hálózatra volt szükség.
Ha a meglévő hálózat klasszikus virtuális hálózat, akkor létre kell hoznia egy Resource Manager virtuális hálózatot, majd csatlakoztatnia kell a kettőt. Klasszikus virtuális hálózatok csatlakoztatása új virtuális hálózatokhoz.
A csatlakozás után a Resource Manager hálózatba telepített HDInsight képes a klasszikus hálózat erőforrásaival együttműködni.
Hálózati biztonsági csoportokat, felhasználó által megadott útvonalakat vagy Virtual Network berendezéseket használ a virtuális hálózatba vagy onnan kimenő forgalom korlátozására?
Felügyelt szolgáltatásként a HDInsight korlátlan hozzáférést igényel az Azure-adatközpontban található több IP-címhez. Az ip-címekkel való kommunikáció engedélyezéséhez frissítse a meglévő hálózati biztonsági csoportokat vagy felhasználó által megadott útvonalakat.
A HDInsight több szolgáltatást üzemeltet, amelyek számos portot használnak. Ne tiltsa le a portok felé történő forgalmat. A virtuális berendezés tűzfalain keresztül engedélyezendő portok listáját a Biztonság szakaszban találja.
A meglévő biztonsági konfiguráció megkereséséhez használja a következő Azure PowerShell vagy Azure CLI-parancsokat:
Network security groups (Hálózati biztonsági csoportok)
Cserélje le
RESOURCEGROUP
a elemet a virtuális hálózatot tartalmazó erőforráscsoport nevére, majd írja be a következő parancsot:Get-AzNetworkSecurityGroup -ResourceGroupName "RESOURCEGROUP"
az network nsg list --resource-group RESOURCEGROUP
További információt a Hálózati biztonsági csoportok hibaelhárítása című dokumentumban talál.
Fontos
A hálózati biztonsági csoport szabályai szabályprioritás alapján sorrendben lesznek alkalmazva. A rendszer az első olyan szabályt alkalmazza, amely megfelel a forgalmi mintának, és a rendszer nem alkalmaz másokat az adott forgalomra. Rendezze a szabályokat a legtöbb megengedőtől a legkevésbé megengedőig. További információt a Hálózati forgalom szűrése hálózati biztonsági csoportokkal című dokumentumban talál.
Felhasználó által megadott útvonalak
Cserélje le
RESOURCEGROUP
a elemet a virtuális hálózatot tartalmazó erőforráscsoport nevére, majd írja be a következő parancsot:Get-AzRouteTable -ResourceGroupName "RESOURCEGROUP"
az network route-table list --resource-group RESOURCEGROUP
További információt az Útvonalak hibaelhárítása című dokumentumban talál.
Hozzon létre egy HDInsight-fürtöt, és válassza ki az Azure Virtual Network a konfiguráció során. A fürtlétrehozás folyamatának megismeréséhez kövesse az alábbi dokumentumok lépéseit:
- HDInsight létrehozása az Azure Portalon
- HDInsight létrehozása az Azure PowerShell-lel
- HDInsight létrehozása a klasszikus Azure CLI használatával
- HDInsight létrehozása Azure Resource Manager-sablonnal
Fontos
A HDInsight virtuális hálózathoz való hozzáadása nem kötelező konfigurációs lépés. A fürt konfigurálásakor mindenképpen válassza ki a virtuális hálózatot.
Több hálózat összekapcsolása
A több hálózati konfigurációval kapcsolatos legnagyobb kihívás a hálózatok közötti névfeloldás.
Az Azure névfeloldást biztosít a virtuális hálózaton telepített Azure-szolgáltatásokhoz. Ez a beépített névfeloldás lehetővé teszi, hogy a HDInsight teljes tartománynévvel (FQDN) csatlakozzon a következő erőforrásokhoz:
Bármely, az interneten elérhető erőforrás. Például microsoft.com, windowsupdate.com.
Minden olyan erőforrás, amely ugyanabban az Azure Virtual Network található, az erőforrás belső DNS-nevének használatával. Az alapértelmezett névfeloldás használatakor például az alábbi példák a HDInsight-munkavégző csomópontokhoz rendelt belső DNS-nevekre mutatnak be példákat:
<workername1.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net>
<workername2.0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net>
Mindkét csomópont képes közvetlenül kommunikálni egymással és a HDInsight más csomópontjaival belső DNS-nevek használatával.
Az alapértelmezett névfeloldás nem teszi lehetővé, hogy a HDInsight feloldja a virtuális hálózathoz csatlakoztatott hálózatokban lévő erőforrások nevét. Gyakori például, hogy csatlakoztatja a helyszíni hálózatot a virtuális hálózathoz. Csak az alapértelmezett névfeloldással a HDInsight név szerint nem fér hozzá a helyszíni hálózat erőforrásaihoz. Az ellenkezője is igaz, a helyszíni hálózat erőforrásai név szerint nem férnek hozzá a virtuális hálózat erőforrásaihoz.
Figyelmeztetés
A HDInsight-fürt létrehozása előtt létre kell hoznia az egyéni DNS-kiszolgálót, és konfigurálnia kell a virtuális hálózatot annak használatára.
A virtuális hálózat és a csatlakoztatott hálózatok erőforrásai közötti névfeloldás engedélyezéséhez a következő műveleteket kell végrehajtania:
Hozzon létre egy egyéni DNS-kiszolgálót az Azure Virtual Network, ahol a HDInsight telepítését tervezi.
Konfigurálja a virtuális hálózatot az egyéni DNS-kiszolgáló használatára.
Keresse meg a virtuális hálózathoz hozzárendelt Azure-beli DNS-utótagot. Ez az érték hasonló a értékhez
0owcbllr5hze3hxdja3mqlrhhe.ex.internal.cloudapp.net
. A DNS-utótag megkereséséről további információt a Példa: Egyéni DNS szakaszban talál.Konfigurálja a DNS-kiszolgálók közötti továbbítást. A konfiguráció a távoli hálózat típusától függ.
Ha a távoli hálózat helyszíni hálózat, konfigurálja a DNS-t az alábbiak szerint:
Egyéni DNS (a virtuális hálózatban):
A virtuális hálózat DNS-utótagjával kapcsolatos kérések továbbítása az Azure rekurzív feloldónak (168.63.129.16). Az Azure kezeli a virtuális hálózaton lévő erőforrásokra vonatkozó kéréseket
Továbbítja az összes többi kérést a helyszíni DNS-kiszolgálónak. A helyszíni DNS kezeli az összes többi névfeloldási kérést, még az internetes erőforrásokra, például Microsoft.com vonatkozó kéréseket is.
Helyszíni DNS: A virtuális hálózati DNS-utótagra vonatkozó kérések továbbítása az egyéni DNS-kiszolgálóra. Az egyéni DNS-kiszolgáló ezután továbbítja az Azure rekurzív feloldójának.
Ez a konfiguráció a virtuális hálózat DNS-utótagját tartalmazó teljes tartománynevek kéréseit irányítja az egyéni DNS-kiszolgálóra. Az összes többi kérést (még a nyilvános internetes címek esetében is) a helyszíni DNS-kiszolgáló kezeli.
Ha a távoli hálózat egy másik Azure-Virtual Network, konfigurálja a DNS-t az alábbiak szerint:
Egyéni DNS (minden virtuális hálózatban):
A virtuális hálózatok DNS-utótagjára vonatkozó kérelmeket a rendszer az egyéni DNS-kiszolgálókra továbbítja. Az egyes virtuális hálózatok DNS-ének feladata a hálózaton belüli erőforrások feloldása.
Továbbítja az összes többi kérést az Azure rekurzív feloldójának. A rekurzív feloldó felelős a helyi és internetes erőforrások feloldásáért.
Az egyes hálózatok DNS-kiszolgálója a dns-utótag alapján továbbítja a kéréseket a másiknak. Az egyéb kérések az Azure rekurzív feloldójának használatával lesznek feloldva.
Az egyes konfigurációkra példaként tekintse meg a Példa: Egyéni DNS szakaszt.
További információ: Virtuális gépek és szerepkörpéldányok névfeloldása .
Közvetlen csatlakozás az Apache Hadoop-szolgáltatásokhoz
A fürthöz a következő címen csatlakozhat: https://CLUSTERNAME.azurehdinsight.net
. Ez a cím nyilvános IP-címet használ, amely nem érhető el, ha NSG-k használatával korlátozta az internetről érkező bejövő forgalmat. Emellett a fürt virtuális hálózaton való üzembe helyezésekor a privát végponttal https://CLUSTERNAME-int.azurehdinsight.net
is elérheti azt. Ez a végpont egy privát IP-címre oldódik fel a virtuális hálózaton belül fürthozzáférés céljából.
Ha a virtuális hálózaton keresztül szeretne csatlakozni az Apache Ambarihoz és más weblapokhoz, kövesse az alábbi lépéseket:
A HDInsight-fürtcsomópontok belső teljes tartományneveinek (FQDN) felderítéséhez használja az alábbi módszerek egyikét:
Cserélje le
RESOURCEGROUP
a elemet a virtuális hálózatot tartalmazó erőforráscsoport nevére, majd írja be a következő parancsot:$clusterNICs = Get-AzNetworkInterface -ResourceGroupName "RESOURCEGROUP" | where-object {$_.Name -like "*node*"} $nodes = @() foreach($nic in $clusterNICs) { $node = new-object System.Object $node | add-member -MemberType NoteProperty -name "Type" -value $nic.Name.Split('-')[1] $node | add-member -MemberType NoteProperty -name "InternalIP" -value $nic.IpConfigurations.PrivateIpAddress $node | add-member -MemberType NoteProperty -name "InternalFQDN" -value $nic.DnsSettings.InternalFqdn $nodes += $node } $nodes | sort-object Type
az network nic list --resource-group RESOURCEGROUP --output table --query "[?contains(name, 'node')].{NICname:name,InternalIP:ipConfigurations[0].privateIpAddress,InternalFQDN:dnsSettings.internalFqdn}"
A visszaadott csomópontok listájában keresse meg az átjárócsomópontok teljes tartománynevét, és használja az FQDN-eket az Ambarihoz és más webszolgáltatásokhoz való csatlakozáshoz. Például az Ambari eléréséhez használható
http://<headnode-fqdn>:8080
.Fontos
Az átjárócsomópontokon üzemeltetett egyes szolgáltatások egyszerre csak egy csomóponton aktívak. Ha megpróbál hozzáférni egy szolgáltatáshoz az egyik átjárócsomóponton, és 404-et ad vissza, váltson a másik átjárócsomópontra.
Annak a csomópontnak és portnak a meghatározásához, amelyen egy szolgáltatás elérhető, tekintse meg a Hadoop-szolgáltatások által a HDInsighton használt portokat ismertető dokumentumot.
Terheléselosztás
HDInsight-fürt létrehozásakor egy terheléselosztó is létrejön. Ennek a terheléselosztónak a típusa az alapszintű termékváltozat szintjén van, amely bizonyos korlátozásokkal rendelkezik. Az egyik ilyen korlátozás az, hogy ha két virtuális hálózata van különböző régiókban, nem csatlakozhat alapszintű terheléselosztókhoz. További információt a virtuális hálózatok gyakori kérdései: a virtuális hálózatok közötti társviszony-létesítés korlátozásai című témakörben talál.
Egy másik korlátozás, hogy a HDInsight terheléselosztókat nem szabad törölni vagy módosítani. A terheléselosztó szabályainak módosításai felülíródnak bizonyos karbantartási események, például a tanúsítványmegújítások során. Ha a terheléselosztók módosulnak, és hatással vannak a fürt működésére, előfordulhat, hogy újra létre kell hoznia a fürtöt.
Következő lépések
- Az Azure-beli virtuális hálózatok létrehozására vonatkozó kódmintákért és példákért lásd: Virtuális hálózatok létrehozása Azure HDInsight-fürtökhöz.
- A HDInsight helyszíni hálózathoz való csatlakozásra való konfigurálásának teljes körű példáját lásd: A HDInsight csatlakoztatása helyszíni hálózathoz.
- Az Azure-beli virtuális hálózatokkal kapcsolatos további információkért tekintse meg az Azure Virtual Network áttekintését.
- A hálózati biztonsági csoportokkal kapcsolatos további információkért lásd: Hálózati biztonsági csoportok.
- A felhasználó által megadott útvonalakról további információt a Felhasználó által megadott útvonalak és AZ IP-továbbítás című témakörben talál.
- További információ a forgalom szabályozásáról, beleértve a tűzfalintegrációt is, lásd: Hálózati forgalom szabályozása.