נפח האחסון בדיסק כמעט נגמר

מוצג המסמך של Apigee Edge.
עוברים אל מסמכי תיעוד של Apigee X.
מידע

תיאור הבעיה

בשרת ה-Postgres שמכיל את נתוני Analytics נגמר נפח האחסון.

בדוגמה הבאה, אפשר לראות שהדיסק /u01 מילא 90% (176GB/207GB) מקום בכונן.

$df -g

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

הודעות שגיאה

ייתכן שלא תוצג הודעת שגיאה אלא אם מקום הדיסק מלא במלואו שרת Postgres.

גורמים אפשריים

בטבלה הבאה מפורטות הסיבות האפשריות לבעיה הזו:

סיבה עבור
אין מספיק מקום בכונן משתמשי Edge בענן פרטי
הסרת נתונים מ-Analytics משתמשי Edge בענן פרטי

אין מספיק מקום בכונן

אבחון

אחת הסיבות הטיפוסיות לשגיאות מקום בכונן בשרתי Postgres היא שאין שגיאות מספיק מקום בכונן לאחסון כמויות גדולות של נתונים לניתוח נתונים. השלבים המפורטים בהמשך לעזור לכם לקבוע אם יש מספיק מקום בכונן או לא ולנקוט פעולות מתאימות הבעיה.

  1. קובעים את הקצב של תנועת ה-API הנכנסת ל-Edge על ידי הפניה לשרת ה-Proxy של Analytics מרכז הבקרה לביצועים.

    דוגמה של ביצועים של שרת proxy להצגת TPS ממוצע

  2. למשל, נבחן את התרחיש הבא:
    1. תנועת ה-API הנכנסת בארגון היא 22 TPS (עסקאות לשנייה).
      1. פירוש הדבר הוא שתנועת ה-API היא 1,900,800 עסקאות ביום (22 * 60 * 60 * 24).
      2. שימו לב שגודל כל עסקה/הודעה ב-Analytics הוא 1.5,000 בייטים.
      3. לכן, המערכת יוצרת בכל יום 2.7GB של נתוני Analytics (1,900,800 * 1.5 K).
    2. אתם נדרשים לשמור נתוני Analytics במשך 30 ימים בחשבונות Postgres שרתים.
      1. סך כל הנתונים שנוצרו במשך 30 ימים = 81GB (2.7GB * 30)
    3. לכן, כדי לאחסן נתוני Analytics של 30 ימים בקצב תנועה של 22 TPS, צריך ל-150GB של נפח אחסון.
      1. 81GB (נתונים מ-Analytics) + 50GB (נתונים אחרים כמו יומנים וכו') + 20GB (נוספים שטח אחסון זמני) = 150GB.
  3. אם יש פחות מקום בכונן במערכת, כלומר פחות מ-150GB (לפי מהתרחיש לדוגמה שלמעלה), אין לכם מספיק מקום בכונן כדי לאחסן את ניתוח הנתונים .

רזולוציה

מוסיפים מקום אחסון מספיק למכונה של Postgres Server.

קיצוץ נתונים מ-Analytics חסר

אבחון

בעקבות העלייה בתנועת ה-API ל-Edge, כמות הנתונים לניתוח נתונים שמאוחסנים גם מסד הנתונים של Postgres יגדל. כמות הנתונים לניתוח נתונים שאפשר לאחסן ב-Postgres מסד הנתונים מוגבל על ידי נפח הדיסק הזמין במערכת.

לכן לא ניתן להמשיך לאחסן נתוני ניתוח נוספים ב-Postgres במסד הנתונים מבלי לבצע אחת מהפעולות הבאות:

  1. מוסיפים עוד מקום בכונן.

    זוהי אפשרות לא ניתנת להתאמה, כי אנחנו לא יכולים להמשיך להוסיף עוד מקום כי הוא מוגבל יקרות.

  2. מסירים את הנתונים מעבר למרווח הזמן הנדרש לשמירה.

    זהו פתרון מועדף, כי הוא מאפשר לך לוודא שהנתונים שכבר לא נחוצים יוסרו במרווחי זמן קבועים.

אם אתם לא מסירים את הנתונים במרווחי זמן קבועים באופן ידני או באמצעות משימת cron, כמות הנתונים וניתוח הנתונים גדלה בהתמדה ובסופו של דבר עשויה להוביל להיגמר מקום בכונן במערכת.

רזולוציה

כדי להסיר נתונים שחורגים ממרווח הזמן הנדרש לשמירה:

  1. קובעים את מרווח השמירה, כלומר משך הזמן שבו רוצים לשמור את נתוני Analytics במסד הנתונים של Postgres.
  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.