मैं एक पिग नौकरी चला रहा हूं जो हैडोप जॉब इतिहास सर्वर से कनेक्ट करने में विफल रहता है।पिग नौकरी इतिहास सर्वर से कनेक्ट करने की कोशिश करता रहता है (और विफल रहता है)
कार्य (आमतौर पर GROUP BY
के साथ किसी भी कार्य) थोड़ी देर के लिए चलाता है और फिर इसे की तरह एक संदेश के साथ शुरू होता है:
2015-04-21 19:05:22,825 [main] INFO org.apache.hadoop.mapred.ClientServiceDelegate - Application state is completed. FinalApplicationStatus=SUCCEEDED. Redirecting to job history server
2015-04-21 19:05:26,721 [main] INFO org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 0 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
2015-04-21 19:05:29,721 [main] INFO org.apache.hadoop.ipc.Client - Retrying connect to server: 0.0.0.0/0.0.0.0:10020. Already tried 1 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 MILLISECONDS)
यह तो थोड़ी देर के पुन: प्रयास कनेक्शन के लिए जारी है। कभी-कभी यह नौकरी के साथ आगे आता है। Othertimes यह इस अपवाद फेंकता है:
2015-04-21 19:05:55,822 [main] WARN org.apache.pig.tools.pigstats.mapreduce.MRJobStats - Unable to get job counters
java.io.IOException: java.io.IOException: java.net.NoRouteToHostException: No Route to Host from cluster-01/10.10.10.11 to 0.0.0.0:10020 failed on socket timeout exception: java.net.NoRouteToHostException: No route to host; For more details see: http://wiki.apache.org/hadoop/NoRouteToHost
at org.apache.pig.backend.hadoop.executionengine.shims.HadoopShims.getCounters(HadoopShims.java:132)
at org.apache.pig.tools.pigstats.mapreduce.MRJobStats.addCounters(MRJobStats.java:284)
at org.apache.pig.tools.pigstats.mapreduce.MRPigStatsUtil.addSuccessJobStats(MRPigStatsUtil.java:235)
at org.apache.pig.tools.pigstats.mapreduce.MRPigStatsUtil.accumulateStats(MRPigStatsUtil.java:165)
at org.apache.pig.backend.hadoop.executionengine.mapReduceLayer.MapReduceLauncher.launchPig(MapReduceLauncher.java:360)
at org.apache.pig.backend.hadoop.executionengine.HExecutionEngine.launchPig(HExecutionEngine.java:280)
मैं इस सवाल here पाया, लेकिन मेरे मामले में काम इतिहास सर्वर शुरू कर दिया है। अगर मैं netstat चलाने के लिए, मुझे लगता है:
tcp 0 0 0.0.0.0:10020 0.0.0.0:* LISTEN 12073/java off (0.00/0/0)
कहाँ 12073 है ...
12073 pts/4 Sl 0:07 /usr/lib/jvm/java-7-openjdk-amd64/bin/java -Dproc_historyserver -Xmx1000m -Djava.library.path=/data/hadoop/hadoop/lib -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/data/hadoop/hadoop-2.3.0/logs -Dhadoop.log.file=hadoop.log -Dhadoop.home.dir=/data/hadoop/hadoop-2.3.0 -Dhadoop.id.str=hadoop -Dhadoop.root.logger=INFO,console -Dhadoop.policy.file=hadoop-policy.xml -Djava.net.preferIPv4Stack=true -Dhadoop.log.dir=/data/hadoop/hadoop/logs -Dhadoop.log.file=mapred-hadoop-historyserver-cluster-01.log -Dhadoop.root.logger=INFO,RFA -Dmapred.jobsummary.logger=INFO,JSA -Dhadoop.security.logger=INFO,NullAppender org.apache.hadoop.mapreduce.v2.hs.JobHistoryServer
मैं मामले में बंदरगाह 10200 खोलने की कोशिश की उसे एक फ़ायरवॉल मुद्दा था:
ACCEPT tcp -- anywhere anywhere tcp dpt:10020
। .. लेकिन कोई भाग्य नहीं है।
कुछ मिनटों के बाद, कुछ कार्य केवल मनमाने ढंग से अगले भाग तक जारी रहते हैं।
मैं हैडोप 2.3 और पिग 0.14 का उपयोग कर रहा हूं।
मेरा प्रश्न है:
1) संभावित कारण सुअर कार्य इतिहास सर्वर (JHS) यह देखते हुए कि JHS ही बंदरगाह कि सुअर इसके लिए लग रहा है पर चल रहा है से कनेक्ट नहीं कर रहे हैं?
... या नाकाम रहने कि ...
2) वहाँ किसी भी तरह से सिर्फ सुअर बताने के लिए JHS से कनेक्ट और कार्य के साथ जारी रखने के लिए कोशिश कर रहा है को रोकने के लिए है?