Gyakorlat – Azure Batch-feladat monitorozása a parancssori felületen

Befejeződött

Ha nagy erőforrás-igényű tevékenységeket futtat az Azure Batchcsel, gyakran előfordulhat, hogy szeretné megtudni, mi történik a tevékenységekkel.

A nonprofit szervezet megoldástervezőjeként szüksége lesz arra, hogy hozzáférjen az Azure Batchben zajló eseményekhez. Azt is meg kell határoznia, hogy a csomópontok és a feladatok működnek-e, milyen messze haladtak előre, és hogy letölthető kimeneti fájlokat hoztak-e létre.

Ebben a leckében létrehoz egy, az előző leckében létrehozott feladathoz hasonló feladatot, monitorozza a feladat tevékenységeinek előrehaladását, illetve letölti a tevékenységek kimeneti fájljait, mindezt az Azure CLI használatával.

Fontos

A modulban található gyakorlatok opcionálisak. A gyakorlatok elvégzéséhez saját Azure-előfizetésre lesz szüksége.

Tevékenységek monitorozása a parancssori felület használatával

Az Azure Batch a számítási csomópontok létrehozásának és felügyeletének, valamint a csomópontokon futtatandó feladatok ütemezésének összes részletéről gondoskodik.

Az utolsó lecke tevékenységeinek létrehozásakor az Azure Batch várólistára helyezte a tevékenységeket a készletben történő futtatáshoz. Mivel a csomópontok úgy lettek meghatározva, hogy rendelkezzenek elérhető kapacitással, az Azure Batch úgy ütemezte a tevékenységeket, hogy az adott csomópontokon fussanak.

Az utolsó lecke végén töröltük a feladatot, aminek következtében az összes tevékenysége is törlődött. Most egy új feladatot és új tevékenységeket fogunk létrehozni. Érdemes megjegyezni, hogy a tevékenységek törlése és újbóli létrehozása meglehetősen gyors művelet, és lehetővé teszi különböző kísérletek és projektek egyszerű szétválasztását az Azure Batchben. Ezzel szemben a magasabb szintű Batch-entitások (például fiókok) törlése és újbóli létrehozása több időt vesz igénybe, mivel a Batch-készletet újra létre kell hozni, és virtuális gépeket kell lefoglalni.

  1. Jelentkezzen be az Azure Portalra.

  2. Nyissa meg a Cloud Shellt a felső menü Cloud Shell ikonjának (>_) kiválasztásával.

  3. Futtassa a következő parancsot a Cloud Shellben az új Batch-feladat létrehozásához:

    az batch job create \
     --id myjob2 \
     --pool-id mypool
    

    Másképp neveztük el, hogy elkerülje az előző egység feladatával való ütközést, amely törlésre lett ütemezve, de még nem feltétlenül törölve.

  4. Futtassa a következő parancsot a Batch-tevékenységek új feladaton belüli létrehozásához:

    for i in {1..10}
    do
       az batch task create \
        --task-id mytask$i \
        --job-id myjob2 \
        --command-line "/bin/bash -c 'echo \$(printenv | grep \AZ_BATCH_TASK_ID) processed by; echo \$(printenv | grep \AZ_BATCH_NODE_ID)'"
    done
    
  5. Futtassa a következő parancsot a Cloud Shellben az egyik létrehozott tevékenység állapotának megtekintéséhez:

    az batch task show \
     --job-id myjob2 \
     --task-id mytask1
    

A tevékenység kimenetének letöltése a parancssori felülettel

A batch-feladat helyes végrehajtásának ellenőrzéséhez letöltheti és megvizsgálhatja a létrehozott fájlokat.

  1. Futtassa a következő parancsot a Cloud Shellben az egyik létrehozott tevékenység által létrehozott fájlok táblázatának megtekintéséhez:

    az batch task file list \
     --job-id myjob2 \
     --task-id mytask5 \
     --output table
    

    Feljegyzés

    Ha hibaüzenet jelenik The files of the specified task cannot be accessed as the task state is still active meg, várjon néhány percet, és futtassa újra a parancsot.

  2. Futtassa a következő parancsot a Cloud Shellben egy tevékenységkimenetekhez dedikált könyvtár létrehozásához, majd lépjen be a könyvtárba:

    mkdir taskoutputs && cd taskoutputs
    
  3. Futtassa a következő parancsot a Cloud Shellben a létrehozott tevékenységek által létrehozott fájlok letöltéséhez:

    for i in {1..10}
    do
    az batch task file download \
        --job-id myjob2 \
        --task-id mytask$i \
        --file-path stdout.txt \
        --destination ./stdout$i.txt
    done
    

    A tevékenységek alapértelmezett munkakönyvtárral rendelkeznek, és alapértelmezés szerint a munka a következőre lesz irányítva stdout.txt. Az átcsatolással átirányíthatjuk stdout.txt azokat a számozott verziókat stdout.txt, amelyek mindegyike egy adott tevékenység munkáját mutatja, és hogy melyik csomópontot használták a végrehajtáshoz.

  4. Futtassa a következő parancsot a minta által létrehozott fájlok szöveges tartalmának megtekintéséhez:

    cat stdout1.txt && cat stdout2.txt
    

    Ez a kimenet a különböző tevékenységek különböző csomópontokra történő ütemezését mutatja, amint a Batch ütemezője feldolgozza őket.

    A következő leckében ismét a helyén hagyjuk az Azure Batch-fiókot és a feldolgozó csomópontok készletét, de töröljük a Batch-feladatot. Mivel a Batch-feladat a Batch-tevékenységek tárolójaként működik, ezeket a tevékenységeket is törölni kell.

  5. A Batch-feladat törléséhez használja a következő parancsot:

    az batch job delete --job-id myjob2 -y