2015-07-31 3 views
8

मेरे पास एक छोटा मेसोस क्लस्टर है और मैं मैराथन का उपयोग कर रहा हूं ताकि लंबे समय से चलने वाली सेवाओं के सेट को प्रत्येक के उदाहरणों की एक चर संख्या के साथ प्रबंधित किया जा सके।मेसोस-गुलाम के लिए मैराथन ऐप्स माइग्रेट करें

मैं व्यवसाय की ज़रूरतों के अनुसार नए नोड्स लॉन्च करने या उनमें से कुछ को समाप्त करने में सक्षम होना चाहता हूं। हालांकि, एक नोड को समाप्त करने पर मुझे एहसास हुआ कि एक संभावित समस्या है: जब मैंने मेसोस दास को बंद कर दिया, तो ऐसा होता है कि कुछ सेवाओं के उदाहरणों की संख्या minimumHealthCapacity परिभाषित अस्थायी रूप से नीचे आती है। इससे कुछ डाउनटाइम हो सकता है, उदाहरण के लिए, मशीन को रोका जा सकता है केवल एक उदाहरण के साथ एक सेवा चला रहा है।

निम्नलिखित सरलीकृत परिदृश्य पर विचार करें: नोड 1 सेवा चला रहा है ए, नोड 2 सेवा चला रहा है बी और नोड 3 सेवा चला रहा है। सभी सेवाओं के लिए minimumHealthCapacity है 1. मैं नोड 1 को समाप्त करना चाहता हूं और केवल 2 छोड़ना चाहता हूं और 3 चल रहा है। मैं सेवा ए पर कोई डाउनटाइम नहीं चाहता हूं। इच्छित व्यवहार का एक उदाहरण सेवा ए से 2 स्केल करना होगा और फिर सुरक्षित रूप से नोड को समाप्त करना होगा।

यह सुनिश्चित करने के लिए मैं क्या कर सकता हूं कि कोई सेवा minimumHealthCapacity से नीचे न हो?

आदर्श रूप से, मेरे लिए रोलिंग-अपडेट प्रेरित प्रक्रिया होगी - अलग-अलग मशीनों में प्रतिस्थापन लॉन्च किए जाएंगे, इसके बाद मशीन में सेवाओं को बंद करने के बाद बंद कर दिया जाएगा। मैं कम से कम एक स्वचालित प्रक्रिया करना चाहता हूं, ताकि एक स्केल डाउन एक साधारण स्क्रिप्ट दूर हो। मुझे ऐसा करने के लिए कितना समय लगता है, इसके लिए मुझे कोई आवश्यकता नहीं है, यानी मुझे यकीन है कि मैराथन प्रवास समाप्त हो गया है और सफल होने के बाद ही मैं मेसोस दास को बंद कर सकता हूं।

उत्तर

1

मेसोस देव टीम वर्तमान में "रखरखाव प्राइमेटिव्स" पर काम कर रही है ताकि एक ऑपरेटर संकेत दे सके कि एक विशेष मशीन एक निश्चित समय (या एएसएपी) पर नीचे जाने के लिए निर्धारित है, प्रत्येक फ्रेमवर्क को संदेशों को ट्रिगर करने के इरादे से सूचित करना अनुपलब्ध खिड़की। मैराथन जैसे ढांचे ने अपने कार्यों को उस नोड से दूर माइग्रेट करने का निर्णय लिया ताकि इसे किसी भी सेवा डाउनटाइम के बिना सुरक्षित रूप से समाप्त किया जा सके।

अधिक जानकारी/पैच के लिए https://issues.apache.org/jira/browse/MESOS-1474 देखें।

+0

इस बीच, आपका सबसे अच्छा विकल्प है कि आपके ऐप के लिए उदाहरणों की संख्या 1 तक बढ़ाएं, नए उदाहरण को स्वस्थ होने की प्रतीक्षा करें, नोड को मार दें, फिर इसे 1 से नीचे स्केल करें। – Adam

+0

धन्यवाद प्रतिक्रिया के लिए, मैं वह करूँगा और जिरा पर अपडेट का पालन करूंगा! इस सुविधा को लागू होने तक यह कितना समय लगेगा इस बारे में कोई विचार? –

+0

सुविधा सक्रिय रूप से प्रगति पर है, लेकिन संभवतः सब कुछ भूमि से पहले एक या दो महीने लग जाएगी। अधिक जानकारी के लिए उस जेआईआरए टिकट पर नजर रखें, और यदि आप इसे त्वरित रूप से देखना चाहते हैं तो शायद उप-कार्य में से एक के लिए स्वयंसेवक हो। ;) – Adam

संबंधित मुद्दे