Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

ClusterControl के साथ MySQL NDB क्लस्टर को परिनियोजित और प्रबंधित करना

ClusterControl 1.5 में हमने MySQL NDB क्लस्टर 7.5 के लिए एक सपोर्ट जोड़ा है। इस ब्लॉग पोस्ट में, हम कुछ ऐसी विशेषताओं को देखेंगे जो ClusterControl को MySQL NDB क्लस्टर को प्रबंधित करने के लिए एक बेहतरीन टूल बनाती हैं। सबसे पहले और सबसे महत्वपूर्ण, क्योंकि उनके नाम पर "क्लस्टर" के साथ कई उत्पाद हैं, हम स्वयं MySQL NDB क्लस्टर के बारे में कुछ शब्द कहना चाहते हैं और यह अन्य समाधानों से कैसे अलग है।

MySQL NDB क्लस्टर

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

जब आर्किटेक्चर की बात आती है, तो MySQL NDB क्लस्टर में तीन अलग-अलग नोड प्रकार होते हैं। डेटा नोड्स NDB इंजन का उपयोग करके डेटा को स्टोर करते हैं। डेटा अतिरेक के लिए प्रतिबिंबित होता है, जिसमें डेटा की अधिकतम 4 प्रतिकृतियां होती हैं। ध्यान दें कि क्लस्टरकंट्रोल प्रति नोड समूह में 2 प्रतिकृतियां तैनात करेगा, क्योंकि यह सबसे अधिक परीक्षण और स्थिर कॉन्फ़िगरेशन है। प्रबंधन नोड्स क्लस्टर को नियंत्रित करने के लिए अभिप्रेत हैं - उच्च उपलब्धता कारणों से, आमतौर पर, आपके पास ऐसे दो नोड होते हैं। SQL नोड्स का उपयोग क्लस्टर में प्रवेश बिंदु के रूप में किया जाता है। वे SQL को पार्स करते हैं, डेटा नोड्स से डेटा मांगते हैं और जरूरत पड़ने पर कुल परिणाम सेट करते हैं।

MySQL NDB क्लस्टर के लिए ClusterControl सुविधाएँ

तैनाती

ClusterControl 1.5 MySQL NDB क्लस्टर 7.5 की तैनाती का समर्थन करता है। यह उसी परिनियोजन विज़ार्ड के माध्यम से किया जाता है जैसे शेष क्लस्टर प्रकारों के साथ।

पहले चरण में, आपको यह कॉन्फ़िगर करने की आवश्यकता है कि ClusterControl SSH के माध्यम से मेजबानों में कैसे लॉगिन कर सकता है - यह ClusterControl के लिए एक मानक आवश्यकता है - यह एजेंट रहित है इसलिए इसे रूट SSH एक्सेस की आवश्यकता सीधे रूट खाते में या (पासवर्ड या पासवर्ड रहित) के माध्यम से होती है। सूडो।

अगले चरण में, आप अपने क्लस्टर के लिए प्रबंधन नोड्स को परिभाषित करते हैं।

यहां, आपको यह तय करने की आवश्यकता है कि आपके पास कितने डेटा नोड हैं। जैसा कि हमने पहले कहा था, प्रत्येक 2 नोड एक नोड समूह का हिस्सा होंगे, इसलिए यह एक सम संख्या होनी चाहिए।

अंत में, आपको यह तय करने की आवश्यकता है कि आप अपने क्लस्टर में कितने SQL नोड तैनात करना चाहते हैं। एक बार जब आप परिनियोजन पर क्लिक करते हैं, तो ClusterControl मेजबानों से जुड़ जाएगा, सॉफ़्टवेयर स्थापित करेगा और सभी सेवाओं को कॉन्फ़िगर करेगा। थोड़ी देर के बाद, आप देखेंगे कि आपका क्लस्टर परिनियोजित है।

MySQL NDB क्लस्टर की स्केलिंग

MySQL NDB क्लस्टर के लिए, ClusterControl 1.5.0 SQL नोड्स के स्केलिंग का समर्थन करता है। आप क्लस्टर जॉब ड्रॉपडाउन से जॉब एक्सेस कर सकते हैं।

वहां आप उस नोड का होस्टनाम भर सकते हैं जिसे आप जोड़ना चाहते हैं और आपको बस इतना ही चाहिए - ClusterControl बाकी का ध्यान रखेगा।

MySQL NDB क्लस्टर का प्रबंधन

ClusterControl आपको MySQL NDB क्लस्टर को प्रबंधित करने में मदद करता है। इस खंड में हम कुछ प्रबंधन सुविधाओं के बारे में जाना चाहेंगे जो हमारे पास हैं।

बैकअप

किसी भी उत्पादन वातावरण के लिए बैकअप महत्वपूर्ण हैं। आपदा के मामले में, केवल एक अच्छा बैकअप डेटा हानि को कम कर सकता है और आपको समस्या से शीघ्रता से उबरने में मदद कर सकता है। प्रतिकृति हमेशा एक समाधान नहीं हो सकता है जो काम करता है - ड्रॉप टेबल टोपोलॉजी में सभी मेजबानों पर तालिका छोड़ देगा। यहाँ तक कि एक विलंबित दास भी अपरिहार्य को केवल इतना ही विलंबित कर सकता है।

ClusterControl MySQL NDB क्लस्टर के लिए ndb बैकअप का समर्थन करता है।

आप आसानी से ClusterControl द्वारा निष्पादित करने के लिए एक बैकअप शेड्यूल बना सकते हैं।

प्रॉक्सी परत

ClusterControl आपको MySQL NDB क्लस्टर के शीर्ष पर एक पूर्ण उच्च उपलब्धता स्टैक को तैनात करने देता है। प्रॉक्सी परत के लिए, हम HAProxy और MaxScale के परिनियोजन का समर्थन करते हैं।

जैसा कि ऊपर स्क्रीनशॉट में दिखाया गया है, परिनियोजन अन्य क्लस्टर प्रकारों के समान दिखता है। आपको यह तय करने की आवश्यकता है कि क्या आप मौजूदा HAProxy का उपयोग करना चाहते हैं या एक नया परिनियोजित करना चाहते हैं। फिर आपको यह चुनने की ज़रूरत है कि इसे कैसे स्थापित किया जाए - नोड पर उपलब्ध रिपॉजिटरी से पैकेज का उपयोग करके या इसे नवीनतम रिलीज़ के स्रोत कोड से संकलित करें।

यदि आप HAProxy का उपयोग करने का निर्णय लेते हैं, तो आपके पास Keepalived और Virtual IP का उपयोग करके उच्च उपलब्धता को कॉन्फ़िगर करने की संभावना होगी।

प्रक्रिया निम्नलिखित है - आप एक वर्चुअल आईपी और इंटरफ़ेस को परिभाषित करते हैं जिस पर इसे लाया जाना चाहिए। फिर, आप इसे आपके द्वारा स्थापित प्रत्येक HAProxy के लिए परिनियोजित कर सकते हैं। Keepalived प्रक्रियाओं में से एक को "मास्टर" के रूप में निर्धारित किया जाएगा और यह VIP को अपने नोड पर सक्षम करेगा। आपका एप्लिकेशन तब इस विशेष आईपी से जुड़ता है। जब कोई वर्तमान सक्रिय HAProxy उपलब्ध नहीं होता है, तो VIP को अन्य उपलब्ध HAProxy में स्थानांतरित कर दिया जाएगा, कनेक्टिविटी को बहाल कर दिया जाएगा।

पुनर्प्राप्ति प्रबंधन

जबकि MySQL NDB क्लस्टर अलग-अलग नोड्स की विफलताओं को सहन कर सकता है, इन पर तुरंत प्रतिक्रिया करना महत्वपूर्ण है। ClusterControl क्लस्टर के सभी घटकों के लिए स्वचालित पुनर्प्राप्ति प्रदान करता है। कोई फर्क नहीं पड़ता कि क्या विफल रहता है (प्रबंधन नोड, डेटा नोड या SQL नोड), ClusterControl उन्हें स्वचालित रूप से पुनरारंभ करेगा।

MySQL NDB क्लस्टर की निगरानी

किसी भी उत्पादन-तैयार वातावरण की निगरानी की जानी चाहिए। ClusterControl आपको मॉनिटर करने के लिए कई प्रकार के मेट्रिक्स प्रदान करता है। "अवलोकन" पृष्ठ में, हम आपके क्लस्टर के लिए सबसे महत्वपूर्ण मीट्रिक के आधार पर ग्राफ़ दिखाते हैं। आप अतिरिक्त डेटा दिखाते हुए अपना स्वयं का डैशबोर्ड भी बना सकते हैं जो आपके परिवेश में उपयोगी होगा।

ग्राफ़ के अलावा, "अवलोकन" पृष्ठ आपको कुछ MySQL NDB क्लस्टर मेट्रिक्स जैसे प्रयुक्त इंडेक्स मेमोरी, डेटा मेमोरी और कुछ बफ़र्स की स्थिति के आधार पर क्लस्टर की स्थिति में अंतर्दृष्टि प्रदान करता है।

यह CPU उपयोग, RAM, डिस्क या नेटवर्क आँकड़े सहित होस्ट मेट्रिक्स की निगरानी भी प्रदान करता है। क्लस्टर के स्वास्थ्य का एक दृश्य बनाने में वे ग्राफ़ भी महत्वपूर्ण हैं।

ClusterControl आपको क्वेरी मॉनिटर तक पहुंच प्रदान करके आपके डेटाबेस के प्रदर्शन को बेहतर बनाने में भी आपकी मदद कर सकता है, जो आपके ट्रैफ़िक के बारे में आंकड़े रखता है।

जैसा कि ऊपर दिए गए स्क्रीनशॉट में देखा जा सकता है, आप देख सकते हैं कि आपके क्लस्टर में किस तरह के प्रश्न चल रहे हैं, किसी दिए गए प्रकार के कितने प्रश्न हैं, उनका निष्पादन समय क्या है और कुल निष्पादन समय क्या है। इससे यह पहचानने में मदद मिलती है कि कौन सी क्वेरी धीमी हैं और उनमें से कौन-सी अधिकांश ट्रैफ़िक के लिए ज़िम्मेदार हैं। फिर आप उन प्रश्नों पर ध्यान केंद्रित कर सकते हैं जो आपको सबसे बड़ा प्रदर्शन सुधार प्रदान कर सकते हैं।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में प्रारंभिक मान और ऑटो वेतन वृद्धि कैसे सेट करें?

  2. PHP के साथ MySQL डेटाबेस में सरणी डालें

  3. MySQL - एक ही संरचना के साथ कई तालिकाओं से डेटा का चयन करना, लेकिन अलग-अलग डेटा

  4. मैं स्वत:पूर्ण के लिए PHP के साथ MYSQL में कंपनी के नामों का एक अस्पष्ट मिलान कैसे करूं?

  5. यदि मान मौजूद नहीं है तो केवल पंक्ति लौटाएं