Apache कैसंड्रा के रखरखाव से जुड़े टास्क

इस सेक्शन में, कैसंड्रा के समय-समय पर किए जाने वाले रखरखाव के कामों के बारे में बताया गया है.

एंटी-एंट्रॉपी का रखरखाव

Apache कैसंड्रा रिंग नोड में समय-समय पर रखरखाव की ज़रूरत होती है, ताकि यह पक्का किया जा सके कि सभी डिवाइसों में एक जैसा तरीका इस्तेमाल किया जा रहा है नोड. यह रखरखाव करने के लिए, निम्न आदेश का उपयोग करें:

apigee-service apigee-cassandra apigee_repair -pr

इस निर्देश को चलाते समय, Apigee ये काम करने का सुझाव देता है:

  • हर कैसंड्रा नोड पर चलाएं (सभी इलाकों या डेटा सेंटर में).
  • रिंग के सभी नोड में एक जैसा दिखे, यह पक्का करने के लिए एक बार में एक नोड पर चलाएं. एक साथ कई नोड पर रिपेयर जॉब चलाने से ये काम किए जा सकते हैं कैसंड्रा के स्वास्थ्य को नुकसान पहुंचा सकते हैं.

    नोड पर रिपेयर का काम पूरा हुआ है या नहीं, यह देखने के लिए नोड के एंट्री के लिए system.log फ़ाइल जिसमें सबसे हाल के रिपेयर सेशन के यूयूआईडी और इस वाक्यांश में "सेशन पूरा हुआ" लिखा हो. यहां लॉग एंट्री का एक सैंपल दिया गया है:

    INFO [AntiEntropySessions:1] 2015-03-01 10:02:56,245 RepairSession.java (line 282) [repair #2e7009b0-c03d-11e4-9012-99a64119c9d8] session completed successfully"
    Ref: https://support.datastax.com/hc/en-us/articles/204226329-How-to-check-if-a-scheduled-nodetool-repair-ran-successfully
  • बाकी की तुलना में कम वर्कलोड वाली अवधि के दौरान चलाएं (यह टूल, सिस्टम).
  • कैसंड्रा के समस्याओं को खत्म करने के लिए, कम से कम हर सात दिन में दौड़ें "मिटाया गया आइटम".
  • अलग-अलग नोड पर अलग-अलग दिन चलाएं या उसे इस तरह शेड्यूल करें कि हर नोड पर इसे चलाने के बीच कई घंटे लगते हैं.
  • प्राइमरी पार्टिशनर रेंज की जानकारी देने के लिए, -pr विकल्प (पार्टिशनर रेंज) का इस्तेमाल करें को नहीं हटा सकते.

अगर आपने कैसंड्रा के लिए JMX की पुष्टि करने की सुविधा चालू की है, nodetool शुरू करते समय आपको उपयोगकर्ता नाम और पासवर्ड शामिल करना होगा. उदाहरण के लिए:

apigee-service apigee-cassandra apigee_repair -u username -pw password -pr

apigee_repair: के साथ काम करने वाले विकल्पों की जांच करने के लिए, इस कमांड का इस्तेमाल भी किया जा सकता है

apigee-service apigee-cassandra apigee_repair -h

ध्यान दें: apigee_repair, कैसेंड्रा के नोडटूल की मरम्मत का एक रैपर है, जो केसांड्रा के रिपेयर से पहले अतिरिक्त जांच करती है.

ज़्यादा जानकारी के लिए, नीचे दिए गए संसाधन देखें:

लॉग फ़ाइल का रखरखाव

कैसेंड्रा लॉग को /opt/apigee/var/log/cassandra डायरेक्ट्री में इस पर सेव किया जाता है हर नोड पर लागू करें. डिफ़ॉल्ट रूप से, ज़्यादा से ज़्यादा 50 लॉग फ़ाइलें और हर फ़ाइल का साइज़ 20 एमबी से ज़्यादा नहीं होना चाहिए बनाया गया; यह सीमा पूरी होने पर, नए लॉग बनाए जाने पर पुराने लॉग मिटा दिए जाते हैं.

यदि आप देखते हैं कि Cassandra लॉग फ़ाइलें बहुत अधिक स्थान ले रही हैं, तो आप Log4j सेटिंग में बदलाव करके लॉग फ़ाइलों के लिए तय की गई जगह.

  1. /opt/apigee/customer/application/cassandra.properties में बदलाव करें नीचे दी गई प्रॉपर्टी को सेट करने के लिए. अगर वह फ़ाइल मौजूद नहीं है, तो उसे बनाएं:
    conf_logback_maxfilesize=20MB
    # max file size
    conf_logback_maxbackupindex=50 # max open files
    अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
  2. निम्न आदेश का उपयोग करके कैसंड्रा को फिर से प्रारंभ करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
    अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

डिस्क की जगह का रखरखाव

आपको कैसंड्रा डिस्क के उपयोग की नियमित रूप से निगरानी करनी चाहिए, ताकि यह सुनिश्चित किया जा सके कि इसका कम से कम 50 प्रतिशत हिस्सा डिस्क फ़्री है. अगर डिस्क का इस्तेमाल 50 प्रतिशत से ज़्यादा हो जाता है, तो हमारा सुझाव है कि इस्तेमाल किए जा रहे प्रतिशत को कम करने के लिए, डिस्क में ज़्यादा स्टोरेज जोड़ें.

कम करने के लिए, कैसंड्रा अपने-आप ही ये काम करता है डिस्क का खुद का इस्तेमाल:

  • टोकन की समयसीमा खत्म होने पर, पुष्टि करने वाला टोकन मिट जाता है. हालांकि, यह हो सकता है टोकन इस्तेमाल किए जा रहे डिस्क स्टोरेज को खाली करने में कुछ हफ़्ते लग सकते हैं. यह इस बात पर निर्भर करता है कि आपकी कॉन्फ़िगरेशन. अगर बनाए रखने के लिए अपने-आप मिटने की सुविधा काफ़ी न हो डिवाइस में ज़रूरत के मुताबिक स्टोरेज है. टोकन रिकवर करने के लिए, सहायता टीम से संपर्क करके मैन्युअल तरीके से टोकन मिटाने का तरीका जानें स्पेस.
  • डेटा कंपैक्शन. हमारा सुझाव है कि कीस्पेस पर कंपैक्शन की रणनीति को बदलकर यह करें LeveledCompactionStrategy, जो डिफ़ॉल्ट के मुकाबले, डिस्क के इस्तेमाल की बेहतर रणनीतियां उपलब्ध हैं SizeTieredCompactionStrategy. यहां जाएं: लेवल की कंट्रैक्शन रणनीति.

ध्यान दें: जब कैसंड्रा डेटा कंप्रेशन करता है, तो इसमें काफ़ी सीपीयू साइकल लग सकते हैं और मेमोरी. हालांकि, कॉम्पैक्टेशन के पूरा होने के बाद, संसाधन का इस्तेमाल फिर से सामान्य हो जाना चाहिए. हर नोड पर 'Nodetool compactionstats' कमांड चलाया जा सकता है ताकि यह देखा जा सके कि कंपैक्शन चल रहा है या नहीं. compactionstats के आउटपुट से आपको पता चलता है कि किए गए सभी काम पूरे होने बाकी हैं. साथ ही, इन्हें पूरा होने में लगने वाला अनुमानित समय भी बताया गया है.