Isilon: Työ käynnistetään uudelleen pitkään jatkuneita lopullisia tehtäviä
Summary: Työt eivät etene pitkään jatkuneiden lopputehtävien vuoksi.
Symptoms
Tämä ongelma näkyy kaikissa töissä, yleisimmin merkinnöissä jobs(Collect, IntegrityScan) ja restriping jobs(SmartPools, AB/ABL, FP/FPL).
Järjestelmätyöt eivät välttämättä etene, kun työskentelet vaiheen viimeisiä tehtäviä kesken.
Tehtävien toistuvat poisheittämistulokset näkyvät tarkasteltaessa isi_job_d.log Kun tehtävät käynnistetään uudelleen.
Tämä voi johtaa siihen, että työtä ei koskaan suoriteta, koska yhtä tai useampaa lopullista tehtävää ei voida suorittaa ennen aktivoinnin poistamista.
Tämä johtuu useista syistä, kuten silloin, kun saman poissulkemisjoukon korkeamman prioriteetin työtä aletaan suorittaa.
Se voi johtua myös siitä, että käynnissä olevien töiden raja saavutetaan ja uudempi korkeamman prioriteetin työ alkaa toimia.
Muita mahdollisia ongelmia voivat olla itse työmoottori tai klusteriongelmat, kuten lukituskiista, solmujen jakautumiset, solmujen uudelleenkäynnistykset/paniikit, järjestelmän suorituskyky ja muut mahdolliset syyt.
Cause
Tarkista odottava tai käynnissä oleva työ, joka aiheuttaa tilan muutoksia työhön, ja tehtävien uudelleenkäynnistys
.Jos näet suuren määrän odottamisen tai käynnissä olevia tilamuutoksia, tarkista prioriteetti työstä.
Jos muilla aloittavilla töillä on korkeampi prioriteetti (1 on korkein prioriteetti), se voi aiheuttaa työn odottamisen.
Voit tarkistaa tilanteen reaaliaikaisesti seuraavasti:
isi job events list --job-id=<JobID>
isi_for_array -sQ 'grep -hi "<JobName>.*Run\|<JobName>.*Wait" /var/log/messages' |sort -u |tail
Lokien kuittaaminen:
zgrep -h '<JobName>.*Run\|<JobName>.*Wait' */varlog.tar/log/messages* |grep <JobID>|sort -u |tail
Joskus sama tehtävätunnus käynnistyy usein uudelleen, eikä sitä voida suorittaa onnistuneesti.
Useita tehtävätunnuksia saatetaan käynnistää uudelleen usein.
Varmista kummassakin tapauksessa, että työ ei ole odotus- tai keskeytystilassa, joka aiheuttaa edellisten vaiheiden hylätyt tehtävät.
Tarkista, onko tehtäviä poistettu käytöstä tai ne on hylätty, mikä voi johtua työmoottorin rajoittamisesta.
Voit tarkistaa tilanteen reaaliaikaisesti seuraavasti:
isi_for_array -sQ 'grep -hi "deactivat\|discard" /var/log/isi_job_d.log' |grep <JobName> | sort -u | tail
Lokien kuittaaminen:
grep -hi "deactivat\|discard" *-*/varlog.tar/log/isi_job_d.log* |grep <JobName> |sort -u|tail
Tässä esimerkissä sama tehtävätunnus hylätään FlexProtectLin Työ tarkastelee "tid=28-1" Lähdössä:
[martid32@elvis 2024-10-29_20-31]$ zgrep -hi "deactivat\|discard" *-*/varlog.tar/log/isi_job_d.log* |grep 'FlexProtectLin jid=6894' |sort -u |tail
2024-10-10T06:01:53.217905-05:00 <3.6> CLUSTER-22(id22) isi_job_d[92144]: Worker 12 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=57916 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-11T11:50:02.236664-05:00 <3.6> CLUSTER-5(id5) isi_job_d[79762]: Worker 77 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=60525 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-11T16:24:26.930667-05:00 <3.6> CLUSTER-7(id7) isi_job_d[68876]: Worker 21 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=58508 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-11T19:14:46.876445-05:00 <3.6> CLUSTER-11(id11) isi_job_d[28510]: Worker 39 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=60665 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-11T20:30:49.232915-05:00 <3.6> CLUSTER-8(id8) isi_job_d[58489]: Worker 20 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=74387 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-12T00:09:39.969852-05:00 <3.6> CLUSTER-26(id26) isi_job_d[12284]: Worker 13 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=58255 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-12T00:39:46.999158-05:00 <3.6> CLUSTER-2(id2) isi_job_d[78458]: Worker 485 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=58365 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-12T01:18:53.867843-05:00 <3.6> CLUSTER-11(id11) isi_job_d[28510]: Worker 53 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=60666 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-12T02:21:01.143101-05:00 <3.6> CLUSTER-28(id28) isi_job_d[11777]: Worker 18 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=58221 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
2024-10-12T03:19:07.198836-05:00 <3.6> CLUSTER-1(id1) isi_job_d[87488]: Worker 561 Stopped: (task_state_clean, 614) FlexProtectLin[6894].0: Discarding unsent task result: { task_result={ jtid=FlexProtectLin jid=6894 phase=0 tid=28-1 rid=60128 ready=false errors=[] } data={ lins=0 files=0 dirs=0 blocks=0 lins_processed=0 sins=0 sins_processed=0 } start_linsid=0::INVALID end_linsid=0::INVALID }
Alla olevien komentojen avulla voidaan vahvistaa tehtävien nykyinen määrä ja se, mitä ne käsittelevät:
for i in $(isi job list|grep '^[0-9].*Running'|awk '{print $1}'); do isi job view $i; isi job statistics view -v --job-id=$i|grep -o 'Workers: [0-9]*'|sort |uniq -c; echo $(find /ifs/.ifsvar/modules/jobengine/cp/$i/tasks -type f | wc -l) tasks remaining; done;
Korvata JOBID Kun JobID kyseisen työn numero:--
isi_for_array -XQ 'for n in $(sysctl efs.bam.busy_vnodes | grep "pid $(pgrep -f JOBID)" | egrep -o "[[:alnum:]]{1,4}:[[:alnum:]]{1,4}:[[:alnum:]]{1,4}"|sort|uniq); do isi get -L "$n" 2>&1; done' | grep -v 'job_d\|modules/jobengine' | sort | uniq -c
Resolution
Jos vahvistat, että työ odottaa tai on käynnissä usein muiden töiden alkamisen vuoksi, muokkaa tilapäisesti korkeamman prioriteetin mukaiseksi.
Prioriteetilla 2 voidaan estää töitä keskeyttämästä kyseistä työtä, ja se voidaan palauttaa oletusarvoon, kun työ on valmis.
Ota yhteyttä tukeen ja lue tämä tietämyskannan artikkeli, jos työ näyttää hidastavan työntekijöitä, jolloin tehtävä hylätään useita kertoja.