HPC Packet tartalmazó Windows RDMA-fürt beállítása MPI-alkalmazások futtatására

Fontos

A klasszikus virtuális gépeket 2023. március 1-jén kivonjuk.

Ha IaaS-erőforrásokat használ az ASM-ből, 2023. március 1-ig fejezze be a migrálást. Javasoljuk, hogy előbb végezze el a váltást, hogy kihasználhassa az Azure Resource Manager számos funkciófejlesztését.

További információ: IaaS-erőforrások migrálása az Azure Resource Manager-be 2023. március 1-ig.

Állítson be egy Windows RDMA-fürtöt az Azure-ban Microsoft HPC Pack és RDMA-kompatibilis HPC virtuálisgép-méretekkel a párhuzamos Message Passing Interface (MPI) alkalmazások futtatásához. Amikor RDMA-kompatibilis, Windows Server-alapú csomópontokat állít be egy HPC Pack-fürtben, az MPI-alkalmazások hatékonyan kommunikálnak egy alacsony késésű, nagy átviteli sebességű hálózaton az Azure-ban, amely a távoli közvetlen memória-hozzáférési (RDMA) technológián alapul.

HPC Pack-fürt üzembehelyezési lehetőségei

A Microsoft HPC Pack egy olyan eszköz, amely további költségek nélkül használható HPC-fürtök létrehozásához a helyszínen vagy az Azure-ban Windows vagy Linux rendszerű HPC-alkalmazások futtatásához. A HPC Pack egy futtatókörnyezetet tartalmaz a Windows üzenetátadási felületének (MS-MPI) Microsoft-implementációjához. Támogatott Windows Server operációs rendszert futtató RDMA-kompatibilis példányokkal való használat esetén a HPC Pack hatékony lehetőséget biztosít az Azure RDMA-hálózathoz hozzáférő Windows MPI-alkalmazások futtatására.

Ez a cikk két forgatókönyvet és részletes útmutatásra mutató hivatkozásokat mutat be a Windows RDMA-fürt Microsoft HPC Pack 2012 R2 csomaggal való beállításához.

  • 1\. forgatókönyv. Nagy számítási igényű feldolgozói szerepkörpéldányok (PaaS) üzembe helyezése
  • 2\. forgatókönyv. Számítási csomópontok üzembe helyezése nagy számítási igényű virtuális gépeken (IaaS)

1. forgatókönyv: Nagy számítási igényű feldolgozói szerepkörpéldányok (PaaS) üzembe helyezése

Egy meglévő HPC Pack-fürtből adjon hozzá további számítási erőforrásokat egy felhőszolgáltatásban (PaaS) futó Azure-feldolgozói szerepkörpéldányokhoz (Azure-csomópontokhoz). Ez a HPC Packből az Azure-ba történő kipukkadásnak is nevezett funkció számos méretet támogat a feldolgozói szerepkörpéldányokhoz. Az Azure-csomópontok hozzáadásakor adja meg az RDMA-kompatibilis méretek egyikét.

Az alábbiakban a meglévő (jellemzően helyszíni) fürtökről RDMA-kompatibilis Azure-példányokra történő kipukkadás szempontjait és lépéseit találja. Hasonló eljárásokkal adhat hozzá feldolgozói szerepkörpéldányokat egy Azure-beli virtuális gépen üzembe helyezett HPC Pack átjárócsomóponthoz.

Megjegyzés

A HPC Packkel az Azure-ba történő kipukkadást bemutató oktatóanyagért tekintse meg a hibrid fürt HPC Packkel való beállítását ismertető témakört. Vegye figyelembe a következő lépésekben szereplő szempontokat, amelyek kifejezetten az RDMA-kompatibilis Azure-csomópontokra vonatkoznak.

Kipukkadás az Azure-ba

Lépések

  1. HPC Pack 2012 R2 átjárócsomópont üzembe helyezése és konfigurálása

    Töltse le a HPC Pack telepítőcsomagját a Microsoft letöltőközpontból. Az Azure-beli kipukkadt üzemelő példányok előkészítésére vonatkozó követelményekért és utasításokért tekintse meg a Microsoft HPC Packkel rendelkező Azure-beli feldolgozópéldányok kipukkadását ismertető cikket.

  2. Felügyeleti tanúsítvány konfigurálása az Azure-előfizetésben

    Konfiguráljon egy tanúsítványt az átjárócsomópont és az Azure közötti kapcsolat biztonságossá tételéhez. A lehetőségeket és eljárásokat a HPC Pack azure-beli felügyeleti tanúsítványának konfigurálására vonatkozó forgatókönyvekben találhatja meg. Teszttelepítések esetén a HPC Pack egy alapértelmezett Microsoft HPC Azure felügyeleti tanúsítványt telepít, amelyet gyorsan feltölthet az Azure-előfizetésbe.

  3. Új felhőszolgáltatás és tárfiók létrehozása

    A Azure Portal használatával hozzon létre egy (klasszikus) felhőszolgáltatást és egy (klasszikus) tárfiókot az üzembe helyezéshez. Ezeket az erőforrásokat olyan régióban hozza létre, ahol elérhető a használni kívánt H sorozat, A8 vagy A9 méret. Tekintse meg az Azure-termékeket régiónként.

  4. Azure-csomópontsablon létrehozása

    Használja a Csomópontsablon létrehozása varázslót a HPC-fürtkezelőben. A lépésekért lásd: Azure-csomópontsablon létrehozása az "Azure-csomópontok üzembe helyezésének lépései a Microsoft HPC Pack csomaggal" című témakörben.

    A kezdeti tesztekhez javasoljuk, hogy konfiguráljon egy manuális rendelkezésre állási szabályzatot a sablonban.

  5. Csomópontok hozzáadása a fürthöz

    Használja a Csomópont hozzáadása varázslót a HPC-fürtkezelőben. További információ: Azure-csomópontok hozzáadása a Windows HPC-fürthöz.

    A csomópontok méretének megadásakor válasszon egy RDMA-kompatibilis példányméretet.

    Megjegyzés

    A nagy számítási igényű példányokkal rendelkező Azure-beli üzemelő példányok mindegyikében a HPC Pack automatikusan üzembe helyez legalább két RDMA-képes példányt (például A8) proxycsomópontokként a megadott Azure-feldolgozói szerepkörpéldányok mellett. A proxycsomópontok az előfizetéshez lefoglalt magokat használják, és díjakat vonnak maga után az Azure-beli feldolgozói szerepkörpéldányokkal együtt.

  6. A csomópontok elindítása (kiépítése) és online állapotba helyezése a feladatok futtatásához

    Jelölje ki a csomópontokat, és használja a Start műveletet a HPC-fürtkezelőben. Ha a kiépítés befejeződött, jelölje ki a csomópontokat, és használja az Online állapotba hozás műveletet a HPC-fürtkezelőben. A csomópontok készen állnak a feladatok futtatására.

  7. Feladatok elküldése a fürtbe

    Fürtfeladatok futtatásához használja a HPC Pack feladatbeküldési eszközeit. Lásd: Microsoft HPC Pack: Job Management.

  8. A csomópontok leállítása (megszüntetése)

    Ha végzett a feladatok futtatásával, állítsa offline állapotba a csomópontokat, és használja a Leállítás műveletet a HPC-fürtkezelőben.

2. forgatókönyv: Számítási csomópontok üzembe helyezése nagy számítási igényű virtuális gépeken (IaaS)

Ebben a forgatókönyvben üzembe helyezi a HPC Pack átjárócsomópontját és a fürt számítási csomópontjait egy Azure-beli virtuális hálózaton lévő virtuális gépeken. A HPC Pack számos üzembehelyezési lehetőséget kínál az Azure-beli virtuális gépeken, beleértve az automatizált üzembehelyezési szkripteket és az Azure gyorsindítási sablonjait. Az alábbi szempontok és lépések például a HPC Pack IaaS üzembehelyezési szkript használatával automatizálják a HPC Pack 2012 R2-fürt Üzembe helyezését az Azure-ban.

Fürt Azure-beli virtuális gépeken

Lépések

  1. Fürtfőcsomópont és számítási csomópont virtuális gépeinek létrehozása a HPC Pack IaaS üzembehelyezési szkript ügyfélszámítógépen való futtatásával

    Töltse le a HPC Pack IaaS telepítési szkriptcsomagot a Microsoft letöltőközpontból.

    Az ügyfélszámítógép előkészítéséhez, a szkript konfigurációs fájljának létrehozásához és a szkript futtatásához lásd: HPC-fürt létrehozása a HPC Pack IaaS üzembehelyezési szkripttel.

    Az RDMA-kompatibilis számítási csomópontok üzembe helyezésének szempontjaiért tekintse meg a nagy teljesítményű számítási virtuális gépek méretét , és jegyezze fel a következőket:

    • Virtuális hálózat: Adjon meg egy új virtuális hálózatot egy olyan régióban, amelyben a használni kívánt H sorozat, A8 vagy A9 méret elérhető. Tekintse meg az Azure-termékeket régiónként.

    • Windows Server operációs rendszer: Az RDMA-kapcsolat támogatásához adjon meg egy kompatibilis Windows Server operációs rendszert, például Windows Server 2012 R2-t a számítási csomópont virtuális gépeihez.

    • Felhőszolgáltatások: Mivel a szkript a klasszikus üzemi modellt használja, a fürt virtuális gépei az Azure-felhőszolgáltatások (ServiceName a konfigurációs fájl beállításai) használatával lesznek üzembe helyezve. Javasoljuk, hogy helyezze üzembe az átjárócsomópontot egy felhőszolgáltatásban, a számítási csomópontokat pedig egy másik felhőszolgáltatásban.

    • Átjárócsomópont mérete: Ebben a forgatókönyvben fontolja meg az átjárócsomópont legalább A4 -es (extra nagy) méretét.

    • HpcVmDrivers bővítmény: Az üzembehelyezési szkript automatikusan telepíti az Azure-beli virtuálisgép-ügynököt és a HpcVmDrivers bővítményt, amikor A8 vagy A9 méretű számítási csomópontokat helyez üzembe Windows Server operációs rendszerrel. A HpcVmDrivers illesztőprogramokat telepít a számítási csomópont virtuális gépeihez, hogy csatlakozzanak az RDMA-hálózathoz. RDMA-kompatibilis H sorozatú virtuális gépeken manuálisan kell telepítenie a HpcVmDrivers bővítményt. Tekintse meg a nagy teljesítményű számítási virtuálisgép-méreteket.

    • Fürt hálózati konfigurációja: Az üzembehelyezési szkript automatikusan beállítja a HPC Pack-fürtöt az 5. topológiában (a vállalati hálózat összes csomópontja). Ez a topológia a virtuális gépeken található összes HPC Pack-fürt üzembe helyezéséhez szükséges. A fürt hálózati topológiája később ne változzon.

  2. A számítási csomópontok online állapotba hozása feladatok futtatásához

    Jelölje ki a csomópontokat, és használja az Online állapotba hozás műveletet a HPC-fürtkezelőben. A csomópontok készen állnak a feladatok futtatására.

  3. Feladatok elküldése a fürtbe

    A feladatok elküldéséhez csatlakozzon az átjárócsomóponthoz, vagy állítson be erre egy helyszíni számítógépet. További információ: Feladatok elküldése HPC-fürtbe az Azure-ban.

  4. A csomópontok offline állapotba helyezése és leállítása (felszabadítása)

    Ha végzett a feladatok futtatásával, a csomópontokat offline állapotba kell helyeznie a HPC-fürtkezelőben. Ezután az Azure felügyeleti eszközeit használva állítsa le őket.

MPI-alkalmazások futtatása a fürtön

Példa: Mpipingpong futtatása HPC Pack-fürtön

Az RDMA-kompatibilis példányok HPC Pack-telepítésének ellenőrzéséhez futtassa a HPC Pack mpipingpong parancsot a fürtön. Az mpipingpong ismétlődően küld adatcsomagokat a párosított csomópontok között, hogy kiszámítsa a késést és az átviteli sebességet, valamint az RDMA-kompatibilis alkalmazáshálózat statisztikáit. Ez a példa az MPI-feladatok (ebben az esetben mpipingpong) futtatásának tipikus mintáját mutatja be az mpiexec fürtparancs használatával.

Ez a példa feltételezi, hogy azure-csomópontokat adott hozzá egy "azure-ra történő kipukkadás" konfigurációban ([1. forgatókönyv](#scenario-1.-deploy-compute-intensive-worker-role-instances-(PaaS) ebben a cikkben). Ha a HPC Pack szolgáltatást Azure-beli virtuális gépek fürtjén helyezte üzembe, módosítania kell a parancs szintaxisát egy másik csomópontcsoport megadásához, és további környezeti változókat kell beállítania a hálózati forgalom RDMA-hálózatra irányításához.

Az mpipingpong futtatása a fürtön:

  1. Az átjárócsomóponton vagy egy megfelelően konfigurált ügyfélszámítógépen nyisson meg egy parancssort.

  2. Ha meg szeretné becsülni a csomópontpárok közötti késést egy négy csomópontból álló Azure-beli üzemelő példányban, írja be a következő parancsot, hogy elküldjön egy feladatot az mpipingpong kis csomagmérettel és számos iterációval történő futtatásához:

    job submit /nodegroup:azurenodes /numnodes:4 mpiexec -c 1 -affinity mpipingpong -p 1:100000 -op -s nul
    

    A parancs visszaadja az elküldött feladat azonosítóját.

    Ha az Azure-beli virtuális gépeken üzembe helyezett HPC Pack-fürtöt telepítette, adjon meg egy csomópontcsoportot, amely egyetlen felhőszolgáltatásban üzembe helyezett számítási csomópont virtuális gépeket tartalmaz, és módosítsa az mpiexec parancsot az alábbiak szerint:

    job submit /nodegroup:vmcomputenodes /numnodes:4 mpiexec -c 1 -affinity -env MSMPI_DISABLE_SOCK 1 -env MSMPI_PRECONNECT all -env MPICH_NETMASK 172.16.0.0/255.255.0.0 mpipingpong -p 1:100000 -op -s nul
    
  3. A feladat befejezése után a kimenet (ebben az esetben a feladat 1. feladatának kimenete) megtekintéséhez írja be a következőt:

    task view <JobID>.1
    

    ahol < a JobID> a beküldött feladat azonosítója.

    A kimenet az alábbihoz hasonló késési eredményeket tartalmaz.

    Pingpong késése

  4. Az Azure-csomópontpárok közötti átviteli sebesség becsléséhez írja be a következő parancsot egy feladat elküldéséhez, amely nagy csomagmérettel és néhány iterációval futtatja az mpipingpongot :

    job submit /nodegroup:azurenodes /numnodes:4 mpiexec -c 1 -affinity mpipingpong -p 4000000:1000 -op -s nul
    

    A parancs visszaadja az elküldött feladat azonosítóját.

    Az Azure-beli virtuális gépeken üzembe helyezett HPC Pack-fürtökön módosítsa a 2. lépésben leírtak szerint a parancsot.

  5. Amikor a feladat befejeződik, a kimenet megtekintéséhez (ebben az esetben a feladat 1. feladatának kimenete) írja be a következőt:

    task view <JobID>.1
    

    A kimenet az alábbihoz hasonló átviteli sebességet tartalmaz.

    Pingpong átviteli sebessége

MPI-alkalmazásokkal kapcsolatos szempontok

Az alábbiakban az MPI-alkalmazások HPC Packkel való Azure-beli futtatásával kapcsolatos szempontokat tekintjük át. Néhány csak az Azure-csomópontok üzemelő példányaira vonatkozik (a feldolgozói szerepkör-példányok az Azure-ba való kipukkadásos konfigurációban vannak hozzáadva).

  • A felhőszolgáltatásban lévő feldolgozói szerepkörpéldányokat az Azure rendszeresen, előzetes értesítés nélkül újra kiépíti (például rendszerkarbantartás céljából, vagy ha egy példány meghibásodik). Ha egy példányt újraépítenek mpi-feladat futtatása közben, a példány elveszíti az adatait, és az első üzembe helyezéskor visszatér az állapotba, ami az MPI-feladat sikertelenségét okozhatja. Minél több csomópontot használ egyetlen MPI-feladathoz, és minél hosszabb ideig fut a feladat, annál valószínűbb, hogy az egyik példány újraépül egy feladat futtatása közben. Ezt akkor is vegye figyelembe, ha egyetlen csomópontot jelöl ki az üzemelő példányban fájlkiszolgálóként.

  • Ha MPI-feladatokat szeretne futtatni az Azure-ban, nem kell RDMA-kompatibilis példányokat használnia. Bármilyen példányméretet használhat, amelyet a HPC Pack támogat. Az RDMA-kompatibilis példányokat azonban viszonylag nagy méretű MPI-feladatok futtatásához javasoljuk, amelyek érzékenyek a csomópontokat összekötő hálózat késésére és sávszélességére. Ha más méreteket használ a késésre és a sávszélességre érzékeny MPI-feladatok futtatására, javasoljuk, hogy futtasson kisebb feladatokat, amelyekben egyetlen feladat csak néhány csomóponton fut.

  • Az Azure-példányokon üzembe helyezett alkalmazásokra az alkalmazáshoz társított licencfeltételek vonatkoznak. Minden kereskedelmi alkalmazás szállítójánál érdeklődjön a felhőbeli futtatásra vonatkozó licencelési vagy egyéb korlátozásokról. Nem minden szállító kínál használatalapú licencet.

  • Az Azure-példányoknak további beállításokra van szükségük a helyszíni csomópontokhoz, megosztásokhoz és licenckiszolgálókhoz való hozzáféréshez. Ha például engedélyezni szeretné, hogy az Azure-csomópontok hozzáférjenek egy helyszíni licenckiszolgálóhoz, konfigurálhat egy helyek közötti Azure-beli virtuális hálózatot.

  • Ha MPI-alkalmazásokat szeretne futtatni az Azure-példányokon, regisztrálja az egyes MPI-alkalmazásokat a Windows tűzfalon a példányokon a hpcfwutil parancs futtatásával. Ez lehetővé teszi az MPI-kommunikációt a tűzfal által dinamikusan hozzárendelt porton.

    Megjegyzés

    Az Azure-beli üzemelő példányok kipukkanásához egy tűzfalkivételi parancsot is konfigurálhat úgy, hogy automatikusan fusson a fürthöz hozzáadott összes új Azure-csomóponton. Miután futtatta a hpcfwutil parancsot, és ellenőrizte, hogy az alkalmazás működik-e, adja hozzá a parancsot az Azure-csomópontok indítási szkriptjéhez. További információ: Indítási szkript használata azure-csomópontokhoz.

  • A HPC Pack a CCP_MPI_NETMASK fürt környezeti változóját használja az MPI-kommunikáció elfogadható címtartományának megadására. A HPC Pack 2012 R2-től kezdődően a CCP_MPI_NETMASK fürt környezeti változója csak a tartományhoz csatlakoztatott fürt számítási csomópontjai közötti MPI-kommunikációt befolyásolja (helyszíni vagy Azure-beli virtuális gépeken). A változót figyelmen kívül hagyják a csomópontok, amelyeket egy azure-konfigurációban adnak hozzá.

  • Az MPI-feladatok nem futtathatók különböző felhőszolgáltatásokban üzembe helyezett Azure-példányokon (például különböző csomópontsablonokkal rendelkező Azure-beli üzemelő példányokban, vagy több felhőszolgáltatásban üzembe helyezett Azure-beli virtuálisgép-számítási csomópontokon). Ha több, különböző csomópontsablonokkal indított Azure-csomóponttelepítéssel rendelkezik, az MPI-feladatnak csak egy Azure-csomópontkészleten kell futnia.

  • Amikor Azure-csomópontokat ad hozzá a fürthöz, és online állapotba hozza őket, a HPC feladatütemező szolgáltatás azonnal megpróbálja elindítani a feladatokat a csomópontokon. Ha a számítási feladatnak csak egy része futhat az Azure-ban, győződjön meg arról, hogy frissíti vagy létrehozza a feladatsablonokat, hogy meghatározza, milyen feladattípusok futtathatók az Azure-ban. Ha például biztosítani szeretné, hogy a feladatsablonnal elküldött feladatok csak Az Azure-csomópontokon fussanak, adja hozzá a Node Groups tulajdonságot a feladatsablonhoz, és válassza ki az AzureNodes értéket a szükséges értékként. Ha egyéni csoportokat szeretne létrehozni az Azure-csomópontokhoz, használja a Add-HpcGroup HPC PowerShell-parancsmagot.

Következő lépések