2017-05-17 24 views
10

मैं अक्सर चल रहा है, जबकि मैं अपने स्पार्क नौकरी के डीएजी का विश्लेषण करता हूं। लेकिन, डीएजी देखने के लिए आवेदन करते समय आवेदन करना और एप्लिकेशन देखना मुश्किल है।नौकरी के बाद स्पार्क वेब यूआई से निष्पादन डीएजी कैसे प्राप्त करें, जब मैं यार्न पर स्पार्क चला रहा हूं?

तो, मैंने spark history-server नामक इस चीज़ का उपयोग करके डीएजी को देखने की कोशिश की, जो मुझे पता है कि मुझे पिछली नौकरियों को देखने में मदद करनी चाहिए। मैं आसानी से बंदरगाह 18080 तक पहुंचने में सक्षम हूं, और मैं इतिहास सर्वर यूआई देख सकता हूं।

लेकिन, यह मुझे स्पार्क कार्यक्रम के निष्पादन से संबंधित कोई भी जानकारी नहीं दिखाता है। मुझे लगता है मैं इतिहास सर्वर चल रहा है पता है, क्योंकि मैं

spark history-server is running [ OK ]

तो मैं पहले से ही करने की कोशिश की क्या इस सवाल का सुझाव दिया जब मैं sudo service --status-all कार्य करें: here

मुझे लगता है कि ऐसा इसलिए है क्योंकि मैं यार्न पर स्पार्क चला रहा हूं, और यह एक समय में केवल एक संसाधन प्रबंधक का उपयोग कर सकता है? शायद?

तो, मैं स्पार्क निष्पादन डीएजी, * * के बाद एक नौकरी समाप्त होने के बाद कैसे देखूं? और अधिक विशेष रूप से, जब मेरे संसाधन प्रबंधक के रूप में YARN चलाते हैं?

उत्तर

3

केवल history-server चलाना पिछले नौकरियों के निष्पादन DAG निष्पादित करने के लिए पर्याप्त नहीं है। आपको पिछली नौकरियों के ईवेंट लॉग स्टोर करने के लिए नौकरियों को निर्दिष्ट करने की आवश्यकता है।

भागो स्पार्क इतिहास सर्वर, हम तीन मानकों का पालन करने की आवश्यकता के रूप में Monitoring and Instrumentation में उल्लेख किया ./sbin/start-history-server.sh

से चिंगारी नौकरी के लिए ईवेंट लॉग सक्षम

spark.eventLog.enabled true 
spark.eventLog.dir <path to event log(local or hdfs)> 
spark.history.fs.logDirectory <path to event log(local or hdfs)> 

spark-defaults.conf फ़ाइल

+0

इसलिए, मैंने इतिहास सर्वर शुरू करने का प्रयास किया जैसा आपने सुझाव दिया था।/Sbin/start-history-server.sh', लेकिन मुझे "आदेश नहीं मिला"। लेकिन, यह मेरे प्रश्न में जैसे 'सुडो सेवा स्पार्क-इतिहास-सर्वर स्टार्ट' के माध्यम से इतिहास सर्वर शुरू करने से अलग कैसे है? (मेरे पास वास्तव में पहले से ही मेरी कॉन्फ़िगरेशन में 'spark.eventLog *' सेट के लिए उन दो सेटिंग्स हैं। – guimption

+0

कोई सुझाव? – guimption

+0

इससे कोई फर्क पड़ता है कि मैं वास्तव में लॉग स्टोर करता हूं? क्या यह ठीक है कि 'spark.eventLog.dir' के लिए पथ क्या है? – guimption

2

पर इन जोड़े स्थापित किया जाना spark-defaults.conf

spark.eventLog.enabled 
spark.eventLog.dir 
spark.history.fs.logDirectory 
,210

पहले संपत्ति true

spark.eventLog.enabled   true 

दूसरे और तीसरे गुण event-log स्थानों जो local-file-system या hdfs-file-system हो सकता है या तो पर ले जाना चाहिए होना चाहिए। दूसरी संपत्ति स्पार्क नौकरियों के लिए लॉग स्टोर करने के लिए कहां परिभाषित करती है और तीसरी संपत्ति इतिहास-सर्वर के लिए 18080 पर वेब UI में प्रदर्शित करने के लिए है।

आप linux local-file-system (/opt/spark/spark-events)
या तो

चुनते हैं, तो
spark.eventLog.dir    file:/opt/spark/spark-events 
spark.history.fs.logDirectory file:/opt/spark/spark-events 

या

spark.eventLog.dir    file:///opt/spark/spark-events 
spark.history.fs.logDirectory file:///opt/spark/spark-events 

काम करना चाहिए यदि आप चुनते हैं hdfs-file-system (/spark-events)
या तो

spark.eventLog.dir    hdfs:/spark-events 
spark.history.fs.logDirectory hdfs:/spark-events 

या

spark.eventLog.dir    hdfs:///spark-events 
spark.history.fs.logDirectory hdfs:///spark-events 

या

spark.eventLog.dir    hdfs://masterIp:9090/spark-events 
spark.history.fs.logDirectory hdfs://masterIp:9090/spark-events 

काम करना चाहिए जहां masterIp:9090hadoop विन्यास की core-site.xml में fs.default.name संपत्ति है।

अपाचे चिंगारी इतिहास सर्वर Cloudera के उदाहरण के लिए

$SPARK_HOME/sbin/start-history-server.sh 

तृतीय पक्ष चिंगारी इतिहास सर्वर

sudo service spark-history-server start 

और द्वारा शुरू किया जा सकता है (अपाचे के लिए) इतिहास सर्वर को रोकने के लिए द्वारा शुरू किया जा सकता

$SPARK_HOME/sbin/stop-history-server.sh 

या (क्लौडेरा के लिए)

sudo service spark-history-server stop 
संबंधित मुद्दे