Isilon: Uzun süre çalışan son görevleri yeniden başlatma işi
Summary: İşler, uzun süre çalışan son görevler nedeniyle ilerleme göstermiyor.
Symptoms
Bu sorun, en yaygın olarak işaretlenen tüm işlerde görülebilir jobs(Collect, IntegrityScan) ve restriping jobs(SmartPools, AB/ABL, FP/FPL)'dir.
Sistem işleri, aşama başına son birkaç görev üzerinde çalışırken ilerleme göstermeyebilir.
Gözden geçirme sırasında görev sonuçlarının sık atıldığı görülüyor isi_job_d.log görevler yeniden başlatılırken.
Bir veya daha fazla son görev devre dışı bırakılmadan önce tamamlanamadığı için bu durum işin asla tamamlanmamasına neden olabilir.
Bu durum, aynı dışlama kümesindeki daha yüksek öncelikli bir işin çalışmaya başlaması gibi çeşitli nedenlerle oluşur.
Bunun nedeni, çalışan işlerin sınırına ulaşılması ve daha yüksek öncelikli daha yeni bir işin çalışmaya başlaması da olabilir.
Diğer olası sorunlar, iş motorunun kendisi veya kilitleme çekişmesi, düğüm bölünmeleri, düğüm yeniden başlatmaları/panikleri, sistem performansı ve diğer olası nedenler gibi küme sorunları olabilir.
Cause
İşin beklemede veya çalışıyor olarak gidip durum değişikliklerine neden olup olmadığını kontrol edin ve görevlerin yeniden başlatın.
Çok sayıda bekleme veya çalışma durumu değişikliği görürseniz Önceliği onaylamak için işe bakın.
Diğer işlerin başlatılması daha yüksek önceliğe sahipse (1 en yüksek önceliktir), işin beklemeye gitmesine neden olabilir.
Canlı kontrol etmek için:
isi job events list --job-id=<JobID>
isi_for_array -sQ 'grep -hi "<JobName>.*Run\|<JobName>.*Wait" /var/log/messages' |sort -u |tail
Günlükleri iade etmek için:
zgrep -h '<JobName>.*Run\|<JobName>.*Wait' */varlog.tar/log/messages* |grep <JobID>|sort -u |tail
Bazen aynı görev kimliğinin sık sık yeniden başlatıldığı görülür ve başarıyla tamamlanamaz.
Potansiyel olarak, sık sık yeniden başlatılan birkaç görev kimliği vardır.
Her iki durumda da, önceki adımlarla atılan görevlere neden olan işin bekleme veya duraklatıldı durumuna alınmadığından emin olun.
İş motoru kısıtlamasından kaynaklanabilecek devre dışı bırakılmış veya atılmış görevleri kontrol edin.
Canlı kontrol etmek için:
isi_for_array -sQ 'grep -hi "deactivat\|discard" /var/log/isi_job_d.log' |grep <JobName> | sort -u | tail
Günlükleri iade etmek için:
grep -hi "deactivat\|discard" *-*/varlog.tar/log/isi_job_d.log* |grep <JobName> |sort -u|tail
Bu örnekte, aynı görev kimliği FlexProtectLin İş Görünümleri "tid=28-1" Çıktıda:
[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 }
Aşağıdaki komutlar, mevcut görev sayısını ve ne üzerinde çalıştıklarını doğrulamak için kullanılabilir:
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;
Değiştirmek JOBID ile JobID Söz konusu işin numarası:--
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
Diğer işlerin başlaması nedeniyle işin beklemeye devam ettiği veya sık sık çalıştığı doğrulanırsa geçici olarak daha yüksek bir önceliğe geçin.
İşlerin sorun duyulan işi kesintiye uğratmasını önlemek için 2 önceliği kullanılabilir ve iş tamamlandıktan sonra varsayılana döndürülebilir.
Yardım için desteğe başvurun ve iş, çalışanların kısıtlamasına neden olarak görevin birden çok kez atılmasına neden oluyorsa bu KB makalesine başvurun.