Рейтинг:0

Ошибка запуска куста: java.net.NoRouteToHostException: нет маршрута к хосту от xxx до xxx: 22332.

флаг cn

Я запускаю док-контейнер mysql на машине CentOS 172.20.237.80, установил Apache Hive 3.1.3 на 172.20.237.84. Hive-site.xml:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:mysql://172.20.237.80:3306/hive?createDatabaseIfNotExist=true</value>
</property>

<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.cj.jdbc.Driver</value>
</property>

<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
</property>

<property>
    <name>javax.jdo.option.ConnectionPassword</name>
  <value>123456</value>
</property>
</configuration>

Конечно, в каталоге улья есть файл mysql-connector-java-xxx.jar. Когда я ввожу улей на 172.20.237.84 он дал следующую информацию об ошибке:

который: нет hbase в (/usr/local/src/jdk1.8.0_321/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/home/app/ffmpeg -4.4/bin:/usr/local/src/hadoop-3.3.2/bin:/usr/local/src/jdk1.8.0_321/bin://usr/local/src/hadoop-3.3.2/bin: /usr/local/src/apache-hive-3.1.3-bin/bin:/usr/local/src/jdk1.8.0_321/bin:/usr/local/sbin:/usr/local/bin:/usr/ sbin:/usr/bin:/home/app/ffmpeg-4.4/bin:/usr/local/src/hadoop-3.3.2/bin:/root/bin)
SLF4J: путь к классу содержит несколько привязок SLF4J.
SLF4J: найдена привязка в [jar:file:/usr/local/src/apache-hive-3.1.3-bin/lib/log4j-slf4j-impl-2.17.1.jar!/org/slf4j/impl/StaticLoggerBinder. учебный класс]
SLF4J: найдена привязка в [jar:file:/usr/local/src/hadoop-3.3.2/share/hadoop/common/lib/slf4j-log4j12-1.7.30.jar!/org/slf4j/impl/StaticLoggerBinder. учебный класс]
SLF4J: см. http://www.slf4j.org/codes.html#multiple_bindings для объяснения.
SLF4J: фактическая привязка имеет тип [org.apache.logging.slf4j.Log4jLoggerFactory].
Идентификатор сеанса куста = 6e1f526a-367c-4be7-82b9-07f236845d8d

Ведение журнала инициализировано с использованием конфигурации в jar:file:/usr/local/src/apache-hive-3.1.3-bin/lib/hive-common-3.1.3.jar!/hive-log4j2.properties Async: true
Исключение в потоке «основной» java.lang.RuntimeException: java.net.NoRouteToHostException: нет маршрута к хосту от worker84/172.20.237.84 до worker80:22332 не удалось из-за исключения тайм-аута сокета: java.net.NoRouteToHostException: нет маршрута к хосту; Подробнее см.: http://wiki.apache.org/hadoop/NoRouteToHost.
        в org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:651)
        в org.apache.hadoop.hive.ql.session.SessionState.beginStart(SessionState.java:591)
        на org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:747)
        на org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:683)
        at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        в java.lang.reflect.Method.invoke(Method.java:498)
        в org.apache.hadoop.util.RunJar.run(RunJar.java:323)
        в org.apache.hadoop.util.RunJar.main(RunJar.java:236)
Вызвано: java.net.NoRouteToHostException: нет маршрута к хосту от worker84/172.20.237.84 до worker80:22332, ошибка из-за исключения времени ожидания сокета: java.net.NoRouteToHostException: нет маршрута к хосту; Подробнее см.: http://wiki.apache.org/hadoop/NoRouteToHost.
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0 (собственный метод)
        в sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        в java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        на org.apache.hadoop.net.NetUtils.wrapWithMessage(NetUtils.java:913)
        на org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:855)
        в org.apache.hadoop.ipc.Client.getRpcResponse(Client.java:1616)
        в org.apache.hadoop.ipc.Client.call(Client.java:1558)
        в org.apache.hadoop.ipc.Client.call(Client.java:1455)
        в org.apache.hadoop.ipc.ProtobufRpcEngine2$Invoker.invoke(ProtobufRpcEngine2.java:242)
        в org.apache.hadoop.ipc.ProtobufRpcEngine2$Invoker.invoke(ProtobufRpcEngine2.java:129)
        на com.sun.proxy.$Proxy28.getFileInfo(неизвестный источник)
        в org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getFileInfo(ClientNamenodeProtocolTranslatorPB.java:965)
        at sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        в java.lang.reflect.Method.invoke(Method.java:498)
        в org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:422)
        в org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invokeMethod(RetryInvocationHandler.java:165)
        в org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invoke(RetryInvocationHandler.java:157)
        в org.apache.hadoop.io.retry.RetryInvocationHandler$Call.invokeOnce(RetryInvocationHandler.java:95)
        в org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:359)
        на com.sun.proxy.$Proxy29.getFileInfo (неизвестный источник)
        в org.apache.hadoop.hdfs.DFSClient.getFileInfo(DFSClient.java:1739)
        в org.apache.hadoop.hdfs.DistributedFileSystem$29.doCall(DistributedFileSystem.java:1753)
        в org.apache.hadoop.hdfs.DistributedFileSystem$29.doCall(DistributedFileSystem.java:1750)
        в org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
        в org.apache.hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:1765)
        в org.apache.hadoop.fs.FileSystem.exists(FileSystem.java:1760)
        в org.apache.hadoop.hive.ql.exec.Utilities.ensurePathIsWritable(Utilities.java:4486)
        в org.apache.hadoop.hive.ql.session.SessionState.createRootHDFSDir(SessionState.java:760)
        в org.apache.hadoop.hive.ql.session.SessionState.createSessionDirs(SessionState.java:701)
        в org.apache.hadoop.hive.ql.session.SessionState.start(SessionState.java:627)
        ... еще 9
Вызвано: java.net.NoRouteToHostException: нет маршрута к хосту
        at sun.nio.ch.SocketChannelImpl.checkConnect (собственный метод)
        на sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:715)
        на org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:205)
        на org.apache.hadoop.net.NetUtils.connect(NetUtils.java:586)
        в org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:711)
        в org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:833)
        в org.apache.hadoop.ipc.Client$Connection.access$3800(Client.java:414)
        в org.apache.hadoop.ipc.Client.getConnection(Client.java:1677)
        в org.apache.hadoop.ipc.Client.call(Client.java:1502)
        ... еще 34

Собственно, /etc/hosts:

172.20.237.80 рабочий80
172.20.237.82 рабочий82
172.20.237.83 рабочий83
172.20.237.84 рабочий84

Итак, worker80 — это 172.20.237.80, а на worker80 я запустил dfs, используя start-all.sh в каталоге hadoop3.3.2->sbin. Бег netstat -ntlp, мы могли видеть:

Активные интернет-соединения (только серверы)
Proto Recv-Q Send-Q Локальный адрес Внешний адрес Состояние PID/имя программы
TCP 0 0 0.0.0.0:9867 0.0.0.0:* ПРОСЛУШАТЬ 16947/java
TCP 0 0 0.0.0.0:6379 0.0.0.0:* ПРОСЛУШАТЬ 11036/докер-прокси
TCP 0 0 0.0.0.0:22 0.0.0.0:* ПРОСЛУШИВАТЬ 2598/sshd
TCP 0 0 127.0.0.1:25 0.0.0.0:* ПРОСЛУШИВАТЬ 2834/мастер
TCP 0 0 172.20.237.80:22331 0.0.0.0:* ПРОСЛУШАТЬ 17609/java
TCP 0 0 127.0.0.1:39645 0.0.0.0:* ПРОСЛУШАТЬ 16947/java
TCP 0 0 0.0.0.0:9864 0.0.0.0:* ПРОСЛУШАТЬ 16947/java
TCP 0 0 0.0.0.0:27017 0.0.0.0:* ПРОСЛУШИВАТЬ 6530/докер-прокси
TCP 0 0 0.0.0.0:9866 0.0.0.0:* ПРОСЛУШАТЬ 16947/java
TCP 0 0 0.0.0.0:3306 0.0.0.0:* ПРОСЛУШИВАТЬ 8972/докер-прокси
TCP 0 0 ::: 6379 ::: * ПРОСЛУШИВАТЬ 11044/докер-прокси
tcp 0 0 :::22 :::* ПРОСЛУШИВАТЬ 2598/sshd
tcp 0 0 ::1:25 :::* ПРОСЛУШИВАТЬ 2834/мастер
TCP 0 0 ::: 27017 ::: * ПРОСЛУШИВАТЬ 6537/докер-прокси
tcp 0 0 :::2377 :::* ПРОСЛУШИВАТЬ 25215/dockerd
tcp 0 0 :::3306 :::* ПРОСЛУШИВАТЬ 8979/докер-прокси
tcp 0 0 :::7946 :::* ПРОСЛУШИВАТЬ 25215/dockerd

Так может ли кто-нибудь дать мне ключ, как решить проблему запуска улья?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.