Score:0

เริ่ม Hive ล้มเหลว: 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 ในไดเร็กทอรี lib ของไฮฟ์ เมื่อฉันป้อนข้อมูล รัง ใน 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: จริง
ข้อยกเว้นในเธรด "main" 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)
        ที่ sun.reflect.NativeMethodAccessorImpl.invoke0 (เมธอดเนทีฟ)
        ที่ sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
        ที่ 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: ไม่มีเส้นทางไปยังโฮสต์จากผู้ปฏิบัติงาน 84/172.20.237.84 ไปยังผู้ปฏิบัติงาน 80:22332 ล้มเหลวในการหมดเวลาของซ็อกเก็ต ข้อยกเว้น: java.net.NoRouteToHostException: ไม่มีเส้นทางไปยังโฮสต์ สำหรับรายละเอียดเพิ่มเติม โปรดดูที่: http://wiki.apache.org/hadoop/NoRouteToHost
        ที่ sun.reflect.NativeConstructorAccessorImpl.newInstance0 (เมธอดเนทีฟ)
        ที่ sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        ที่ 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)
        ที่ sun.reflect.NativeMethodAccessorImpl.invoke0 (เมธอดเนทีฟ)
        ที่ sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
        ที่ 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: ไม่มีเส้นทางไปยังโฮสต์
        ที่ 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 Local Address ที่อยู่ต่างประเทศ State 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/docker-proxy
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/docker-proxy
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/docker-proxy
tcp 0 0 :::6379 :::* ฟัง 11044/docker-proxy
tcp 0 0 :::22 :::* ฟัง 2598/sshd
tcp 0 0 ::1:25 :::* ฟัง 2834/master
tcp 0 0 :::27017 :::* ฟัง 6537/docker-proxy
tcp 0 0 :::2377 :::* ฟัง 25215/นักเทียบท่า
tcp 0 0 :::3306 :::* ฟัง 8979/docker-proxy
tcp 0 0 :::7946 :::* ฟัง 25215/นักเทียบท่า

ทุกคนสามารถให้เงื่อนงำวิธีแก้ปัญหาการเริ่มต้นไฮฟ์แก่ฉันได้ไหม

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา