सामग्री पर जाएँ

ब्लॉग

CAO पॉज़ गेट्स के साथ Couchbase अपग्रेड: एक समर्थन-अनुकूल अवलोकन

सीएओ नेटिव पॉज़ गेट्स, स्वास्थ्य जांच और एक्सडीसीआर-जागरूक निगरानी का उपयोग करके नियंत्रित रोलिंग अपग्रेड

  • 3 मिनट में पढ़ें
  • Updated

यदि आप Couchbase प्लेटफ़ॉर्म का समर्थन करते हैं (या आप वह व्यक्ति हैं जो इसे पृष्ठांकित करता है नहीं व्यवहार), उन्नयन "हैंड-ऑफ और होप" और "मैनुअल और जोखिम भरा" के बीच एक विकल्प की तरह महसूस हो सकता है। यह पोस्ट एक व्यावहारिक मध्य मार्ग प्रस्तुत करती है: a नियंत्रित रोलिंग उन्नयन के अंतर्गत चलने वाले Couchbase सर्वर के लिए Couchbase स्वायत्त संचालक (CAO), सीएओ के मूल निवासी द्वारा संचालित spec.paused मैदान।

यह किसके लिए है

  • तकनीकी सहायता/घटना प्रत्युत्तरकर्ता: स्वैप-पुनर्संतुलन के दौरान "सामान्य" कैसा दिखता है और लाल झंडे के रूप में क्या माना जाना चाहिए।
  • SRE / प्लेटफ़ॉर्म इंजीनियर: उड़ान पूर्व जांच, सोक गेट और रोलबैक ट्रिगर के साथ दोहराने योग्य प्रक्रिया।
  • डेटाबेस इंजीनियर: पुनर्संतुलन अपेक्षाएँ, XDCR व्यवहार, और अपग्रेड के बाद का सत्यापन।
  • डेवलपर्स: रखरखाव विंडो के दौरान आपका प्लेटफ़ॉर्म क्या कर रहा है (और आपको किस बारे में सतर्क रहना चाहिए)।

विशिष्ट सीएओ-प्रबंधित टोपोलॉजी (वैचारिक)

नीचे दिया गया चित्र रनबुक के लिए एक मानसिक मानचित्र है: ऑपरेटर कहाँ बैठता है, क्या CouchbaseCluster सीआर नियंत्रण, और अपग्रेड के दौरान आपको किन संकेतों को सहसंबद्ध करना चाहिए।

AKS टोपोलॉजी पर विशिष्ट Couchbase

बड़ा विचार: पॉज़ गेट के साथ सीएओ को गति दें

सीएओ स्वैप-रीबैलेंस के माध्यम से रोलिंग अपग्रेड करता है। रनबुक एक जानबूझकर सुरक्षा द्वार जोड़ता है: नोड्स के बीच सामंजस्य को रोकें, स्थिर करें, स्वास्थ्य को सत्यापित करें, फिर फिर से शुरू करें। इस तरह, यदि नोड एन अपने स्वैप के बाद गलत व्यवहार करता है, तो आप उसे पकड़ लेते हैं पहले नोड N+1 प्रारंभ होता है.

गतिमान उन्नयन पाश

पॉज़ गेट इसके लायक क्यों है?

  • कम आश्चर्य: लक्षणों को एक नोड परिवर्तन में अलग करें।
  • क्लीनर संकेत: विलंबता, त्रुटि दर, पुनर्संतुलन स्थिति और XDCR को एक स्वैप से संबद्ध करें।
  • सुरक्षित रोलआउट: "कन्वेयर बेल्ट" को पकड़कर जल्दी से रोकें spec.paused=true जब आप जांच करते हैं.

अपग्रेड के दौरान "अच्छा" कैसा दिखता है

  • पॉड छवियाँ: पुराना → उत्तरोत्तर नया; आदर्श रूप से एक समय में एक अदला-बदली।
  • क्लस्टर चरण: अक्सर लौट आता है Available अदला-बदली के बीच; पुनर्संतुलन के दौरान संक्षिप्त परिवर्तन अपेक्षित हैं।
  • एक्सडीसीआर (यदि सक्षम हो): changes_left पुनर्संतुलन के दौरान बढ़ता है, फिर स्थिरीकरण के दौरान निकल जाता है।
  • पुनरारंभ: नए पॉड्स प्रारंभ होते हैं RESTARTS=0. कोई भी वृद्धि रुकने और जांच करने का संकेत है।

उड़ान से पहले की जाँचें जो आपको बाद में बचाती हैं

इससे पहले कि आप कुछ भी छूएं, सुनिश्चित करें कि क्लस्टर हरा है (कोई सक्रिय पुनर्संतुलन नहीं, कोई चेतावनी घटना नहीं), बैकअप चालू हैं और पुनर्स्थापित करने योग्य, और आपने रोलबैक छवि टैग रिकॉर्ड कर लिया है। अपनी XDCR रणनीति पहले से तय करें: उत्पादन में शांत सिग्नल के लिए अपग्रेड के दौरान अक्षम करें, वास्तविक व्यवहार का अभ्यास करने के लिए प्री-प्रोड में चलते रहें, या रणनीतिक कटओवर के लिए तीसरे स्टैंडबाय क्लस्टर का उपयोग करें।

रोलबैक रियलिटी चेक

परिपक्व रनबुक्स जो असुविधाजनक सत्य ज़ोर से कहती हैं: रोलबैक केवल तभी संभव है जब पुराने संस्करण पर कम से कम एक नोड बना रहे. एक बार जब प्रत्येक पॉड की अदला-बदली हो जाती है और क्लस्टर पूरी तरह से संतुलित हो जाता है, तो "डाउनग्रेड" "बैकअप से पुनर्स्थापित" हो सकता है। इसीलिए गति मायने रखती है: यह रोलबैक विंडो को अधिक समय तक खुला रखता है।

अगले कदम