Udostępnij za pośrednictwem


Scenariusz: W węźle klastra zabraknie miejsca na dysku w usłudze Azure HDInsight

W tym artykule opisano kroki rozwiązywania problemów i możliwe rozwiązania problemów podczas interakcji z klastrami usługi Azure HDInsight.

Problem

Zadanie może zakończyć się niepowodzeniem z komunikatem o błędzie podobnym do następującego: /usr/hdp/2.6.3.2-14/hadoop/libexec/hadoop-config.sh: fork: No space left on device.

Może też zostać wyświetlony alert apache Ambari podobny do następującego: local-dirs usable space is below configured utilization percentage.

Przyczyna

Pamięć podręczna aplikacji apache Yarn mogła zużywać wszystkie dostępne miejsce na dysku. Aplikacja Platformy Spark prawdopodobnie działa nieefektywnie.

Rozwiązanie

  1. Użyj interfejsu użytkownika systemu Ambari, aby określić, który węzeł brakuje miejsca na dysku.

  2. Ustal, który folder w niepokojącym węźle przyczynia się do większości miejsca na dysku. Najpierw należy uruchomić protokół SSH do węzła, a następnie uruchomić polecenie df , aby wyświetlić listę użycia dysku dla wszystkich instalacji. Zazwyczaj jest to /mnt dysk tymczasowy używany przez system operacyjny. Możesz wprowadzić w folderze, a następnie wpisać sudo du -hs , aby wyświetlić podsumowane rozmiary plików w folderze. Jeśli zobaczysz folder podobny do /mnt/resource/hadoop/yarn/local/usercache/livy/appcache/application_1537280705629_0007, te dane wyjściowe oznaczają, że aplikacja jest nadal uruchomiona. Te dane wyjściowe mogą być spowodowane trwałością RDD lub pośrednimi plikami mieszania.

  3. Aby rozwiązać ten problem, zabij aplikację, co spowoduje zwolnienie miejsca na dysku używanego przez tę aplikację.

  4. Jeśli problem występuje często w węzłach procesu roboczego, możesz dostosować ustawienia lokalnej pamięci podręcznej usługi YARN w klastrze.

    Otwórz interfejs użytkownika ambari Przejdź do YARN --> Configs --> Advanced.
    Dodaj następujące dwie właściwości do sekcji niestandardowej yarn-site.xml i zapisz:

    yarn.nodemanager.localizer.cache.target-size-mb=2048
    yarn.nodemanager.localizer.cache.cleanup.interval-ms=300000
    
  5. Jeśli powyższe rozwiązanie problemu nie zostanie trwale rozwiązane, zoptymalizuj aplikację.

Następne kroki

Jeśli nie widzisz problemu lub nie możesz go rozwiązać, odwiedź jeden z następujących kanałów, aby uzyskać dodatkową pomoc techniczną: