Postgres सर्वर के डिस्क में जगह खत्म हो रही है

Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं.
जानकारी

समस्या का ब्यौरा

Analytics डेटा वाले Postgres सर्वर में अब जगह नहीं बची है.

नीचे दिए गए उदाहरण में देखा जा सकता है कि डिस्क /u01 ने डिस्क की कुल जगह का 90% (176 जीबी/207 जीबी) स्टोरेज भर लिया है.

$df -g

Filesystem Size User Avail Use% Mounted on
/dev/mapper/sysvg-syslv09 207G 176G 176G 21G 90% /u01

गड़बड़ी के मैसेज

जब तक Postgres सर्वर पर डिस्क स्पेस पूरी तरह से नहीं भर जाता, तब तक आपको गड़बड़ी का कोई मैसेज नहीं दिखेगा.

संभावित कारण

यहां दी गई टेबल में, इस समस्या की संभावित वजहों की सूची दी गई है:

वजह इसके लिए:
डिस्क में कम स्टोरेज बचा है Edge Private Cloud के उपयोगकर्ता
Analytics में डेटा कम करने की सुविधा Edge Private Cloud के उपयोगकर्ता

डिस्क में कम जगह है

संक्रमण की जांच

Postgres Servers पर डिस्क स्पेस में गड़बड़ियां होने की एक आम वजह यह है कि आपके पास Analytics डेटा को बहुत ज़्यादा स्टोर करने के लिए डिस्क में ज़रूरत के मुताबिक जगह नहीं है. नीचे दिए गए तरीके से, आपको यह जानने में मदद मिलेगी कि आपके डिस्क में ज़रूरत के मुताबिक स्टोरेज है या नहीं. इसके अलावा, गड़बड़ी को ठीक करने के लिए सही कार्रवाई भी की जा सकेगी.

  1. Analytics प्रॉक्सी परफ़ॉर्मेंस डैशबोर्ड का इस्तेमाल करके, Edge पर आने वाले एपीआई ट्रैफ़िक की दर तय करें.

    औसत TPS दिखाने वाली प्रॉक्सी परफ़ॉर्मेंस का नमूना

  2. नीचे दिए गए उदाहरण के बारे में सोचें:
    1. आपके संगठन के लिए एपीआई से आने वाला ट्रैफ़िक 22 TPS (ट्रांज़ैक्शन प्रति सेकंड) है.
      1. इसका मतलब है कि हर दिन एपीआई ट्रैफ़िक 19,00,800 ट्रांज़ैक्शन है (22 * 60 * 60 * 24).
      2. ध्यान दें कि Analytics में हर लेन-देन/मैसेज का साइज़ 1.5 हज़ार बाइट होता है.
      3. इसलिए, हर दिन 2.7 जीबी का Analytics डेटा जनरेट होता है (19,00,800 * 1.5 K).
    2. रेफ़रंस के लिए, अपने Postgres सर्वर पर, 30 दिन के Analytics डेटा को सेव करके रखें.
      1. पिछले 30 दिनों में जनरेट हुआ कुल डेटा = 81 जीबी (2.7 जीबी * 30)
    3. इसलिए, 22 टीपीएस के ट्रैफ़िक रेट पर 30 दिन के Analytics डेटा को सेव करने के लिए, आपके डिस्क में 150 जीबी जगह होनी चाहिए.
      1. 81 जीबी (Analytics डेटा) + 50 जीबी (लॉग वगैरह जैसा अन्य डेटा) + 20 जीबी (अतिरिक्त बफ़र स्पेस) = 150 जीबी.
  3. अगर आपके सिस्टम में डिस्क स्पेस कम है यानी कि 150 जीबी से कम स्टोरेज (जैसा कि ऊपर उदाहरण के तौर पर बताया गया है), तो आपके पास Analytics डेटा स्टोर करने के लिए, डिस्क में ज़रूरत के मुताबिक जगह नहीं है.

रिज़ॉल्यूशन

Postgres Server मशीन में ज़रूरी डिस्क स्पेस जोड़ें.

Analytics में डेटा की काट-छांट न करना

संक्रमण की जांच

Edge में एपीआई के ट्रैफ़िक बढ़ने के साथ ही, Postgres डेटाबेस में इकट्ठा होने वाले आंकड़ों के डेटा की संख्या भी बढ़ जाएगी. Postgres डेटाबेस में सेव किया जा सकने वाला Analytics डेटा, सिस्टम में उपलब्ध डिस्क स्पेस के हिसाब से सीमित होता है.

इसलिए, इनमें से कोई कार्रवाई किए बिना, Postgres के डेटाबेस में आंकड़ों का अतिरिक्त डेटा सेव नहीं किया जा सकता:

  1. डिस्क में ज़्यादा स्टोरेज जोड़ें.

    इस विकल्प को बढ़ाया नहीं जा सकता, क्योंकि हम डिस्क में ज़्यादा जगह नहीं जोड़ सकते, क्योंकि यह सीमित और महंगा है.

  2. निजी डेटा के रखरखाव के लिए तय किए गए समय से ज़्यादा डेटा खर्च करें.

    यह एक पसंदीदा समाधान है, क्योंकि यह पक्का किया जा सकता है कि जिस डेटा की अब ज़रूरत नहीं है उसे समय-समय पर हटाया जा रहा हो.

अगर नियमित तौर पर या क्रॉन जॉब का इस्तेमाल करके डेटा को कम नहीं किया जाता है, तो Analytics डेटा की मात्रा लगातार बढ़ जाती है. इसकी वजह से, सिस्टम में आपके डिस्क की जगह खत्म हो सकती है.

रिज़ॉल्यूशन

निजी डेटा के रखरखाव के ज़रूरी इंटरवल से बाहर के डेटा को कम करने के लिए:

  1. डेटा के रखरखाव का इंटरवल तय करें. यह वह अवधि है जिसके लिए आपको Postgres डेटाबेस में Analytics का डेटा सेव रखना है.
  2. किसी खास संगठन और एनवायरमेंट के लिए डेटा कम करने के लिए, नीचे दिए गए निर्देश का इस्तेमाल करें:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql pg-data-purge
      org env number_of_days_to_retain [Delete-from-parent-fact - N/Y] [Skip-confirmation-prompt - N/Y]
    

स्क्रिप्ट में निम्न विकल्प होते हैं:

  • Delete-from-parent-fact डिफ़ॉल्ट : नहीं. अभिभावक तथ्य टेबल से निजी डेटा के रखरखाव के दिनों से पुराना डेटा भी मिटा दिया जाएगा.
  • Skip-confirmation-prompt. डिफ़ॉल्ट: नहीं. अगर नहीं, तो पैरंट तथ्य से डेटा मिटाने से पहले स्क्रिप्ट में पुष्टि करने के लिए कहा जाएगा. अगर पर्ज स्क्रिप्ट अपने-आप काम करती है, तो इसे 'हां' पर सेट करें.

ज़्यादा जानकारी के लिए, Analytics डेटा में काट-छांट करना लेख पढ़ें.

अगर समस्या बनी रहती है, तो Apigee Edge की सहायता टीम से संपर्क करें.