स्पार्क किल रनिंग एप्लीकेशन


101

मेरे पास एक रनिंग स्पार्क एप्लिकेशन है जहां यह उन सभी कोर पर कब्जा कर लेता है जहां मेरे अन्य एप्लिकेशन को कोई संसाधन आवंटित नहीं किया जाएगा।

मैंने कुछ त्वरित शोध किया और लोगों ने कमांड को मारने के लिए YARN किल या / बिन / स्पार्क-क्लास का उपयोग करने का सुझाव दिया। हालाँकि, मैं CDH संस्करण और / बिन / स्पार्क-क्लास का उपयोग कर रहा हूँ, यहाँ तक कि सभी मौजूद नहीं है, YARN मार एप्लीकेशन या तो काम नहीं करता है।

यहां छवि विवरण दर्ज करें

क्या मेरे साथ कोई ऐसा हो सकता है?


1
यदि आप एक परीक्षा में हैं: ps aux | grep स्पार्क -> स्पार्क की
पीडा

@ तेलियाह "परीक्षा एनवी", मेरे लिए नौकरी पहले से ही वितरित की गई है ..
B.Mr.W.

1
आप उत्पादन में एक नौकरी मारना चाहते हैं ????
एलियास

1
@eliasah हाँ ... एक होस्ट में असफलता के कारण प्रोडक्शन की नौकरी चली गई।
B.Mr.W.

जवाबों:


213
  • स्पार्क शेड्यूलर से एप्लिकेशन आईडी को कॉपी करें, उदाहरण के लिए application_1428487296152_25597
  • उस सर्वर से कनेक्ट करें जिसने कार्य लॉन्च किया है
  • yarn application -kill application_1428487296152_25597

1
स्पार्क शेड्यूलर को आप कैसे प्राप्त करते हैं?
माकैंसिज

क्या यह वैसा ही है web UI?
१०:

@Hunle आप से आईडी प्राप्त कर सकते हैं Spark History UIया सूत RUNNINGएप्लिकेशन यूआई ( धागा मेजबान: 8088 / क्लस्टर / apps / चल ) या से Spark Job Web UIयूआरएल ( धागा मेजबान: 8088 / प्रॉक्सी / application_ <टाइमस्टैम्प> _ <आईडी> )
CᴴᴀZ

2
क्या कोई एक बार में कई मार सकता है: यार्न एप्लिकेशन -किल आवेदन_1428487296152_25597 आवेदन_1428487296152_25598 ... ??
user3505444

6

YARN से सभी एप्लिकेशन Ids प्राप्त करने और उन्हें एक-एक करके मारने में समय लग सकता है। इस दोहराए गए कार्य को जल्दी और अधिक कुशलता से पूरा करने के लिए आप पाश का उपयोग कर सकते हैं:

YARN पर सभी अनुप्रयोगों को मारें जो कि स्वीकृत स्थिति में हैं:

for x in $(yarn application -list -appStates ACCEPTED | awk 'NR > 2 { print $1 }'); do yarn application -kill $x; done

YARN पर सभी एप्लिकेशनों को मारें जो कि RUNNING राज्य में हैं:

for x in $(yarn application -list -appStates RUNNING | awk 'NR > 2 { print $1 }'); do yarn application -kill $x; done



1

यह एक नैतिक और पसंदीदा समाधान नहीं हो सकता है, लेकिन यह उन वातावरणों में मदद करता है जहां आप यार्न एप्लिकेशन कमांड का उपयोग करके काम को मारने के लिए कंसोल तक नहीं पहुंच सकते हैं।

कदम हैं

स्पार्क जॉब के एप्लीकेशन मास्टर पेज पर जाएं। जॉब्स सेक्शन पर क्लिक करें। सक्रिय नौकरी के सक्रिय चरण पर क्लिक करें। आप सक्रिय चरण के ठीक बगल में "मार" बटन देखेंगे।

यह काम करता है यदि सफल चरण वर्तमान में चल रहे चरण पर निर्भर हैं। हालांकि यह "उपयोगकर्ता द्वारा मारे गए" के रूप में नौकरी को चिह्नित करता है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.