Много ошибок на диске, но нет аппаратного оповещения. Это аппаратное или программное обеспечение?
534
Sedat Kestepe
Описание: Случайные диски на одной датоде кластера Hadoop постоянно доступны только для чтения. Задания не выполняются, но на сервере отсутствует аппаратное оповещение.
Привет,
Я управляю кластером Hadoop, который работает на CentOS 7 (7.4.1708).
Команда Datascience долгое время получала неудачную работу. К тому времени мы также получили наши диски хранения (на одном конкретном датоде) только для чтения.
Поскольку первоначальное исключение, которое мы получали, вводило в заблуждение, мы не могли связать оба (на самом деле, мы не смогли найти доказательство того, что они были связаны). Я запускаю fsck(с тэгом -a для автоматического исправления) каждый раз, когда один диск становится доступным только для чтения, но он только исправляет логические блоки, но не находит никаких аппаратных ошибок.
Мы установили связь между двумя проблемами, так как обнаружили, что во всех невыполненных заданиях этот узел использовался для Application Master.
Хотя на уровне ОС существует много дисковых ошибок, на серверах не сообщается об аппаратных ошибках / предупреждениях (светодиодные сигналы / аппаратный интерфейс). Является ли получение таких отчетов об аппаратных проблемах обязательным для того, чтобы проблема называлась аппаратной проблемой?
Заранее спасибо.
ОС: CentOS 7.4.1708
Аппаратное обеспечение: HPE Apollo 4530
Жесткий диск: HPE MB6000GEFNB 765251-002 (жесткий диск SATA с емкостью 6 ТБ, 6 ГБ, с жестким диском SATA 7,2 К, 3,5 дюйма, 512e, MDL LP) - (сообщается, что Smart не поддерживается)
Вы можете найти приложение и системные журналы для деталей.
Ниже мы обнаружили исключения в журналах Yarn NodeManager проблемного узла:
2018-06-04 06:54:27,390 ERROR yarn.YarnUncaughtExceptionHandler (YarnUncaughtExceptionHandler.java:uncaughtException(68)) - Thread Thread[LocalizerRunner for container_e77_1527963665893_4250_01_000009,5,main] threw an Exception. org.apache.hadoop.yarn.exceptions.YarnRuntimeException: java.lang.InterruptedException at org.apache.hadoop.yarn.event.AsyncDispatcher$GenericEventHandler.handle(AsyncDispatcher.java:259) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService$LocalizerRunner.run(ResourceLocalizationService.java:1138) Caused by: java.lang.InterruptedException at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireInterruptibly(AbstractQueuedSynchronizer.java:1220) at java.util.concurrent.locks.ReentrantLock.lockInterruptibly(ReentrantLock.java:335) at java.util.concurrent.LinkedBlockingQueue.put(LinkedBlockingQueue.java:339) at org.apache.hadoop.yarn.event.AsyncDispatcher$GenericEventHandler.handle(AsyncDispatcher.java:251) ... 1 more 2018-06-04 06:54:27,394 INFO localizer.ResourceLocalizationService (ResourceLocalizationService.java:run(1134)) - Localizer failed java.lang.RuntimeException: Error while running command to get file permissions : java.io.InterruptedIOException: java.lang.InterruptedException at org.apache.hadoop.util.Shell.runCommand(Shell.java:947) at org.apache.hadoop.util.Shell.run(Shell.java:848) at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:1142) at org.apache.hadoop.util.Shell.execCommand(Shell.java:1236) at org.apache.hadoop.util.Shell.execCommand(Shell.java:1218) at org.apache.hadoop.fs.FileUtil.execCommand(FileUtil.java:1077) at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.loadPermissionInfo(RawLocalFileSystem.java:686) at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.getPermission(RawLocalFileSystem.java:661) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService.checkLocalDir(ResourceLocalizationService.java:1440) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService.getInitializedLocalDirs(ResourceLocalizationService.java:1404) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService.access$800(ResourceLocalizationService.java:141) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService$LocalizerRunner.run(ResourceLocalizationService.java:1111) Caused by: java.lang.InterruptedException at java.lang.Object.wait(Native Method) at java.lang.Object.wait(Object.java:502) at java.lang.UNIXProcess.waitFor(UNIXProcess.java:396) at org.apache.hadoop.util.Shell.runCommand(Shell.java:937) ... 11 more at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.loadPermissionInfo(RawLocalFileSystem.java:726) at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.getPermission(RawLocalFileSystem.java:661) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService.checkLocalDir(ResourceLocalizationService.java:1440) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService.getInitializedLocalDirs(ResourceLocalizationService.java:1404) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService.access$800(ResourceLocalizationService.java:141) at org.apache.hadoop.yarn.server.nodemanager.containermanager.localizer.ResourceLocalizationService$LocalizerRunner.run(ResourceLocalizationService.java:1111)
И есть некоторые редкие исключения, как показано ниже в журналах HDFS узла:
2018-06-10 06:55:27,280 ERROR datanode.DataNode (DataXceiver.java:run(278)) - dnode003.mycompany.local:50010:DataXceiver error processing WRITE_BLOCK operation src: /10.0.0.17:50095 dst: /10.0.0.13:50010 java.io.IOException: Premature EOF from inputStream at org.apache.hadoop.io.IOUtils.readFully(IOUtils.java:203) at org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doReadFully(PacketReceiver.java:213) at org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.doRead(PacketReceiver.java:134) at org.apache.hadoop.hdfs.protocol.datatransfer.PacketReceiver.receiveNextPacket(PacketReceiver.java:109) at org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receivePacket(BlockReceiver.java:500) at org.apache.hadoop.hdfs.server.datanode.BlockReceiver.receiveBlock(BlockReceiver.java:929) at org.apache.hadoop.hdfs.server.datanode.DataXceiver.writeBlock(DataXceiver.java:817) at org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.opWriteBlock(Receiver.java:137) at org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.processOp(Receiver.java:74) at org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:251) at java.lang.Thread.run(Thread.java:745)
Некоторые контроллеры HPE Smart Array имеют ошибки встроенного программного обеспечения, которые могут блокировать контроллеры и могут регистрировать или не регистрировать любые ошибки в журнале интегрированного управления.
Найдите, загрузите и установите прошивку Smart Array версии 4.02 (или более поздней).
Если у вас возникли проблемы с приведенными выше инструкциями, возможно, вы сможете быстрее найти прошивку, выполнив поиск по сети для вашей модели Smart Array плюс «прошивка» и выбрав «драйверы», как показано ниже:
Спасибо, @ Делтик. Я проверил нашу версию прошивки. Это 4.52 Хорошо знать это, хотя.
Sedat Kestepe 5 лет назад
0
@SedatKestepe: было несколько [важных обновлений] (https://support.hpe.com/hpsc/swd/public/detail?sp4ts.oid=7274897&swItemId=MTX_94d23918a511422fa46c3f49f7&swEnvOid=4184#tab) с момента появления консультанта включая большее количество блокировок, поэтому стоит попробовать обновить прошивку.
Deltik 5 лет назад
0