A HDInsight csatlakoztatása a helyszíni hálózathoz

Megtudhatja, hogyan csatlakoztathatja a HDInsightot a helyszíni hálózathoz az Azure Virtual Networks és egy VPN-átjáró használatával. Ez a dokumentum a következő tervezési információkat tartalmazza:

  • A HDInsight használata a helyszíni hálózathoz csatlakozó Azure-beli virtuális hálózaton.
  • DNS-névfeloldás konfigurálása a virtuális hálózat és a helyszíni hálózat között.
  • Hálózati biztonsági csoportok konfigurálása a HDInsight internet-hozzáférésének korlátozásához.
  • A HDInsight által a virtuális hálózaton biztosított portok.

Áttekintés

Ahhoz, hogy a HDInsight és a csatlakoztatott hálózat erőforrásai név szerint kommunikálhassanak, a következő műveleteket kell végrehajtania:

  1. Azure-beli virtuális hálózat létrehozása.
  2. Hozzon létre egy egyéni DNS-kiszolgálót az Azure Virtual Networkben.
  3. Konfigurálja a virtuális hálózatot úgy, hogy az alapértelmezett Azure Rekurzív Feloldó helyett az egyéni DNS-kiszolgálót használja.
  4. Konfigurálja az egyéni DNS-kiszolgáló és a helyszíni DNS-kiszolgáló közötti továbbítást.

Ezek a konfigurációk a következő viselkedést teszik lehetővé:

  • A virtuális hálózat DNS-utótagjával rendelkező teljes tartománynevekre vonatkozó kérelmeket a rendszer az egyéni DNS-kiszolgálóra továbbítja. Az egyéni DNS-kiszolgáló ezután továbbítja ezeket a kéréseket az Azure Rekurzív Feloldónak, amely visszaadja az IP-címet.
  • Az összes többi kérést a rendszer a helyszíni DNS-kiszolgálóra továbbítja. A rendszer a névfeloldás érdekében még a nyilvános internetes erőforrások, például a microsoft.com kéréseit is továbbítja a helyszíni DNS-kiszolgálónak.

Az alábbi ábrán a zöld vonalak a virtuális hálózat DNS-utótagjában végződő erőforrásokra vonatkozó kérések. A kék vonalak a helyszíni hálózaton vagy a nyilvános interneten található erőforrásokra vonatkozó kérések.

Diagram of how DNS requests are resolved in the configuration.

Előfeltételek

Virtuális hálózati konfiguráció létrehozása

Az alábbi dokumentumokból megtudhatja, hogyan hozhat létre helyszíni hálózathoz csatlakoztatott Azure-beli virtuális hálózatot:

Egyéni DNS-kiszolgáló létrehozása

Fontos

A HDInsight virtuális hálózatba való telepítése előtt létre kell hoznia és konfigurálnia kell a DNS-kiszolgálót.

Ezek a lépések az Azure Portal használatával hoznak létre egy Azure-beli virtuális gépet. A virtuális gépek létrehozásának egyéb módjai: Virtuális gép létrehozása – Azure CLI és virtuális gép létrehozása – Azure PowerShell. A Bind DNS-szoftvert használó Linux rendszerű virtuális gép létrehozásához kövesse az alábbi lépéseket:

  1. Jelentkezzen be az Azure Portalra.

  2. A felső menüsávból válassza az +Erőforrás létrehozása elemet.

    Create an Ubuntu virtual machine.

  3. Válassza a Számítási>virtuális gép lehetőséget a Virtuális gép létrehozása lapra való ugráshoz.

  4. Az Alapismeretek lapon adja meg a következő adatokat:

    Mező Érték
    Előfizetés Válassza ki a megfelelő előfizetést.
    Erőforráscsoport Válassza ki a korábban létrehozott virtuális hálózatot tartalmazó erőforráscsoportot.
    Virtuális gép neve Adjon meg egy rövid nevet, amely azonosítja ezt a virtuális gépet. Ez a példa DNSProxyt használ.
    Régió Válassza ki ugyanazt a régiót, mint a korábban létrehozott virtuális hálózat. Nem minden virtuálisgép-méret érhető el minden régióban.
    Rendelkezésre állási beállítások Válassza ki a kívánt rendelkezésre állási szintet. Az Azure számos lehetőséget kínál az alkalmazások rendelkezésre állásának és rugalmasságának kezelésére. A megoldás kialakítása replikált virtuális gépek rendelkezésreállási zónákban vagy rendelkezésre állási csoportokban való használatára az alkalmazások és adatok adatközpont-kimaradások és karbantartási események elleni védelme érdekében. Ebben a példában nincs szükség infrastruktúra-redundanciára.
    Kép Hagyja meg az Ubuntu Server 18.04 LTS-t.
    Hitelesítés típusa Jelszó vagy SSH nyilvános kulcs: Az SSH-fiók hitelesítési módszere. Javasoljuk a nyilvános kulcsok használatát, mivel biztonságosabbak. Ez a példa a Jelszót használja. További információ: SSH-kulcsok létrehozása és használata Linux rendszerű virtuális gépekhez .
    Felhasználónév Adja meg a virtuális gép rendszergazdai felhasználónevét. Ez a példa sshuser-t használ.
    Jelszó vagy SSH nyilvános kulcs Az elérhető mezőt az Ön által választott hitelesítési típus határozza meg. Adja meg a megfelelő értéket.
    Nyilvános bejövő portok Válassza a Kijelölt portok engedélyezése lehetőséget. Ezután válassza ki az SSH-t (22) a Bejövő portok kiválasztása legördülő listából.

    Virtual machine basic configuration.

    Hagyja meg a többi bejegyzést az alapértelmezett értékeknél, majd válassza a Hálózatkezelés lapot.

  5. A Hálózatkezelés lapon adja meg a következő adatokat:

    Mező Érték
    Virtuális hálózat Válassza ki a korábban létrehozott virtuális hálózatot.
    Alhálózat Válassza ki a korábban létrehozott virtuális hálózat alapértelmezett alhálózatát. Ne válassza ki a VPN-átjáró által használt alhálózatot.
    Nyilvános IP-cím Használja az automatikusan feltöltött értéket.

    HDInsight Virtual network settings.

    Hagyja meg a többi bejegyzést az alapértelmezett értékeknél, majd válassza a Véleményezés + létrehozás lehetőséget.

  6. A Véleményezés + létrehozás lapon válassza a Létrehozás lehetőséget a virtuális gép létrehozásához.

IP-címek áttekintése

A virtuális gép létrehozása után egy sikeres üzembe helyezési értesítést fog kapni az Erőforrás megnyitása gombbal. Válassza az Ugrás az erőforrásra lehetőséget az új virtuális gépre való ugráshoz. Az új virtuális gép alapértelmezett nézetében kövesse az alábbi lépéseket a társított IP-címek azonosításához:

  1. A Gépház válassza a Tulajdonságok lehetőséget.

  2. Jegyezze fel a NYILVÁNOS IP-CÍM/DNS-NÉV CÍMKE és a PRIVÁT IP-CÍM értékét későbbi használatra.

    Public and private IP addresses.

A Bind (DNS-szoftver) telepítése és konfigurálása

  1. Az SSH használatával csatlakozzon a virtuális gép nyilvános IP-címéhez . Cserélje le sshuser a virtuális gép létrehozásakor megadott SSH-felhasználói fiókra. Az alábbi példa egy 40.68.254.142-nél lévő virtuális géphez csatlakozik:

    ssh sshuser@40.68.254.142
    
  2. A Bind telepítéséhez használja az alábbi parancsokat az SSH-munkamenetből:

    sudo apt-get update -y
    sudo apt-get install bind9 -y
    
  3. Ha úgy szeretné konfigurálni a Kötést, hogy továbbítsa a névfeloldási kérelmeket a helyszíni DNS-kiszolgálóra, a fájl tartalmaként használja a /etc/bind/named.conf.options következő szöveget:

    acl goodclients {
        10.0.0.0/16; # Replace with the IP address range of the virtual network
        10.1.0.0/16; # Replace with the IP address range of the on-premises network
        localhost;
        localnets;
    };
    
    options {
            directory "/var/cache/bind";
    
            recursion yes;
    
            allow-query { goodclients; };
    
            forwarders {
            192.168.0.1; # Replace with the IP address of the on-premises DNS server
            };
    
            dnssec-validation auto;
    
            auth-nxdomain no;    # conform to RFC1035
            listen-on { any; };
    };
    

    Fontos

    Cserélje le a goodclients szakasz értékeit a virtuális hálózat és a helyszíni hálózat IP-címtartományára. Ez a szakasz határozza meg azokat a címeket, amelyekről ez a DNS-kiszolgáló fogadja a kéréseket.

    Cserélje le a 192.168.0.1forwarders szakasz bejegyzését a helyszíni DNS-kiszolgáló IP-címére. Ez a bejegyzés a DNS-kérelmeket a helyszíni DNS-kiszolgálóra irányítja a megoldás érdekében.

    A fájl szerkesztéséhez használja a következő parancsot:

    sudo nano /etc/bind/named.conf.options
    

    A fájl mentéséhez használja a Ctrl+X, Y, majd az Enter billentyűkombinációt.

  4. Az SSH-munkamenetben használja a következő parancsot:

    hostname -f
    

    Ez a parancs az alábbi szöveghez hasonló értéket ad vissza:

    dnsproxy.icb0d0thtw0ebifqt0g1jycdxd.ex.internal.cloudapp.net
    

    A icb0d0thtw0ebifqt0g1jycdxd.ex.internal.cloudapp.net szöveg a virtuális hálózat DNS-utótagja . Mentse ezt az értéket a későbbi használatnak megfelelően.

  5. Ha a kötést a virtuális hálózaton belüli erőforrások DNS-nevének feloldására szeretné konfigurálni, használja a következő szöveget a /etc/bind/named.conf.local fájl tartalmaként:

    // Replace the following with the DNS suffix for your virtual network
    zone "icb0d0thtw0ebifqt0g1jycdxd.ex.internal.cloudapp.net" {
        type forward;
        forwarders {168.63.129.16;}; # The Azure recursive resolver
    };
    

    Fontos

    Cserélje le a icb0d0thtw0ebifqt0g1jycdxd.ex.internal.cloudapp.net korábban lekért DNS-utótagot.

    A fájl szerkesztéséhez használja a következő parancsot:

    sudo nano /etc/bind/named.conf.local
    

    A fájl mentéséhez használja a Ctrl+X, Y, majd az Enter billentyűkombinációt.

  6. A Kötés indításához használja a következő parancsot:

    sudo service bind9 restart
    
  7. Annak ellenőrzéséhez, hogy a kötés feloldja-e a helyszíni hálózat erőforrásainak nevét, használja az alábbi parancsokat:

    sudo apt install dnsutils
    nslookup dns.mynetwork.net 10.0.0.4
    

    Fontos

    Cserélje le dns.mynetwork.net a helyszíni hálózatban lévő erőforrás teljes tartománynevét (FQDN).

    Cserélje le 10.0.0.4 az egyéni DNS-kiszolgáló belső IP-címére a virtuális hálózaton.

    A válasz az alábbi szöveghez hasonlóan jelenik meg:

    Server:         10.0.0.4
    Address:        10.0.0.4#53
    
    Non-authoritative answer:
    Name:   dns.mynetwork.net
    Address: 192.168.0.4
    

Virtuális hálózat konfigurálása az egyéni DNS-kiszolgáló használatára

Ha úgy szeretné konfigurálni a virtuális hálózatot, hogy az Azure rekurzív feloldó helyett az egyéni DNS-kiszolgálót használja, kövesse az Alábbi lépéseket az Azure Portalról:

  1. A bal oldali menüben keresse meg az Összes szolgáltatás>hálózatkezelési>virtuális hálózatát.

  2. Válassza ki a virtuális hálózatot a listából, amely megnyitja a virtuális hálózat alapértelmezett nézetét.

  3. Az alapértelmezett nézet Gépház területén válassza ki a DNS-kiszolgálókat.

  4. Válassza az Egyéni lehetőséget, és adja meg az egyéni DNS-kiszolgáló PRIVÁT IP-címét.

  5. Válassza a Mentés lehetőséget.

    Set the custom DNS server for the network.

Helyszíni DNS-kiszolgáló konfigurálása

Az előző szakaszban úgy konfigurálta az egyéni DNS-kiszolgálót, hogy a kéréseket továbbítsa a helyszíni DNS-kiszolgálónak. Ezután konfigurálnia kell a helyszíni DNS-kiszolgálót, hogy továbbítsa a kéréseket az egyéni DNS-kiszolgálónak.

A DNS-kiszolgáló konfigurálására vonatkozó konkrét lépésekért tekintse meg a DNS-kiszolgáló szoftverének dokumentációját. Keresse meg a feltételes továbbító konfigurálásának lépéseit.

A feltételes továbbítás csak egy adott DNS-utótagra vonatkozó kéréseket továbbít. Ebben az esetben konfigurálnia kell egy továbbítót a virtuális hálózat DNS-utótagjára. Az utótagra vonatkozó kéréseket az egyéni DNS-kiszolgáló IP-címére kell továbbítani.

Az alábbi szöveg egy példa a Bind DNS-szoftver feltételes továbbító konfigurációjára:

zone "icb0d0thtw0ebifqt0g1jycdxd.ex.internal.cloudapp.net" {
    type forward;
    forwarders {10.0.0.4;}; # The custom DNS server's internal IP address
};

A DNS Windows Server 2016-on való használatáról az Add-DnsServerConditionalForwarderZone dokumentációjában talál további információt...

Miután konfigurálta a helyszíni DNS-kiszolgálót, nslookup a helyszíni hálózatból ellenőrizheti, hogy fel tudja-e oldani a neveket a virtuális hálózaton. Az alábbi példa

nslookup dnsproxy.icb0d0thtw0ebifqt0g1jycdxd.ex.internal.cloudapp.net 196.168.0.4

Ez a példa a helyszíni DNS-kiszolgálót használja a 196.168.0.4-nél az egyéni DNS-kiszolgáló nevének feloldásához. Cserélje le az IP-címet a helyszíni DNS-kiszolgálóra. Cserélje le a dnsproxy címet az egyéni DNS-kiszolgáló teljes tartománynevére.

Nem kötelező: Hálózati forgalom szabályozása

Hálózati biztonsági csoportok (NSG) vagy felhasználó által megadott útvonalak (UDR) használatával szabályozhatja a hálózati forgalmat. Az NSG-k lehetővé teszik a bejövő és kimenő forgalom szűrését, valamint a forgalom engedélyezését vagy elutasítását. Az UDR-ek lehetővé teszik a virtuális hálózat, az internet és a helyszíni hálózat erőforrásai közötti forgalom szabályozását.

Figyelmeztetés

A HDInsight bejövő hozzáférést igényel az Azure-felhőben található meghatározott IP-címekről, valamint korlátlan kimenő hozzáféréshez. Ha NSG-ket vagy UDR-eket használ a forgalom szabályozásához, a következő lépéseket kell végrehajtania:

  1. Keresse meg a virtuális hálózatot tartalmazó hely IP-címét. A szükséges IP-címek hely szerinti listájáért tekintse meg a szükséges IP-címeket.

  2. Az 1. lépésben azonosított IP-címek esetében engedélyezze a bejövő forgalmat az adott IP-címekről.

    • Ha NSG-t használ: Engedélyezze a bejövő forgalmat a 443-as porton az IP-címekhez.
    • UDR használata esetén: Állítsa be az internetre irányuló útvonal következő ugrási típusát az IP-címekhez.

Ha például az Azure PowerShellt vagy az Azure CLI-t használja NSG-k létrehozásához, tekintse meg a HDInsight kiterjesztése azure-beli virtuális hálózatokkal című dokumentumot.

A HDInsight-fürt létrehozása

Figyelmeztetés

A HDInsight virtuális hálózaton való telepítése előtt konfigurálnia kell az egyéni DNS-kiszolgálót.

A HDInsight-fürt létrehozása az Azure Portal-dokumentum használatával a HDInsight-fürt létrehozásához szükséges lépésekkel.

Figyelmeztetés

  • A fürt létrehozása során ki kell választania a virtuális hálózatot tartalmazó helyet.
  • A konfiguráció Speciális beállítások részében ki kell választania a korábban létrehozott virtuális hálózatot és alhálózatot.

Csatlakozás a HDInsightba

A HDInsight legtöbb dokumentációja feltételezi, hogy az interneten keresztül fér hozzá a fürthöz. Például hogy a https://CLUSTERNAME.azurehdinsight.net címen tud csatlakozni a fürthöz. Ez a cím a nyilvános átjárót használja, amely nem érhető el, ha NSG-ket vagy UDR-eket használt az internetről való hozzáférés korlátozásához.

Egyes dokumentációk arra is hivatkoznak headnodehost , amikor SSH-munkamenetből csatlakozik a fürthöz. Ez a cím csak egy fürt csomópontjairól érhető el, és nem használható a virtuális hálózaton keresztül csatlakoztatott ügyfeleken.

Ha közvetlenül szeretne csatlakozni a HDInsighthoz a virtuális hálózaton keresztül, kövesse az alábbi lépéseket:

  1. A HDInsight-fürtcsomópontok belső teljes tartományneveinek felderítéséhez használja az alábbi módszerek egyikét:

    $resourceGroupName = "The resource group that contains the virtual network used with HDInsight"
    
    $clusterNICs = Get-AzNetworkInterface -ResourceGroupName $resourceGroupName | 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 <resourcegroupname> --output table --query "[?contains(name,'node')].{NICname:name,InternalIP:ipConfigurations[0].privateIpAddress,InternalFQDN:dnsSettings.internalFqdn}"
    
  2. A szolgáltatás által elérhető port meghatározásához tekintse meg az Apache Hadoop-szolgáltatások által a HDInsight-dokumentumon használt portokat.

    Fontos

    A fő 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 főcsomóponton, és az sikertelen, váltson a másik főcsomópontra.

    Az Apache Ambari például egyszerre csak egy fejcsomóponton aktív. Ha megpróbál hozzáférni az Ambarihoz az egyik fejcsomóponton, és 404-et ad vissza, akkor a másik főcsomóponton fut.

Következő lépések