Cloud Monitoring אוסף ושומר באופן אוטומטי מידע על מכונת Managed Lustre.
במסמך הזה מפורטת סקירה כללית של המדדים שזמינים לניטור Managed Lustre ב- Google Cloud. המדדים האלה עוזרים לכם להבין את הביצועים, הקיבולת והמצב של מערכות הקבצים של Managed Lustre, כדי שתוכלו לזהות צווארי בקבוק, לפתור בעיות ולבצע אופטימיזציה של ניצול המשאבים.
אפשר להשתמש במדדים האלה ב-Cloud Monitoring כדי ליצור לוחות בקרה בהתאמה אישית, להגדיר התראות ולקבל תובנות מעמיקות יותר לגבי ההתנהגות של מופע Managed Lustre.
Cloud Monitoring מופעל באופן אוטומטי עבור Managed Lustre. אין תשלום על איסוף הנתונים או על הצגת המדדים בGoogle Cloud מסוף. יכול להיות שיהיו חיובים על קריאות ל-API. פרטים על התמחור מופיעים במחירון של Cloud Monitoring.
התפקידים שצריך ב-IAM
נדרשים התפקידים הבאים:
- הצגת נתונים ב-Monitoring (
roles/monitoring.viewer) או הרשאות שוות ערך, כדי להציג מדדים ב-Cloud Monitoring. - הרשאת עריכה של מעקב (
roles/monitoring.editor) או הרשאות שוות ערך, כדי להגדיר התראות.
הצגת המדדים
מדדים של Cloud Monitoring זמינים משני מקומות במסוףGoogle Cloud :
בדף הפרטים של מכונת Managed Lustre מוצגים מדדים זמינים. בנוסף למדדים שמפורטים בדף הזה, המערכת מחשבת את רוחב הפס של הבייטים שהועתקו ואת קצב העתקת האובייקטים.
בדף Cloud Monitoring יש כמה אפשרויות של תרשימים והתאמות אישיות.
הצגת מדדים בדף הפרטים של המופע
כדי לראות את המדדים של מופע ספציפי:
נכנסים לדף Instances במסוף Google Cloud .
לוחצים על המופע שרוצים לראות את המדדים שלו. יופיע הדף Instance details.
לוחצים על הכרטיסייה מעקב. לוח הבקרה שמוגדר כברירת מחדל מוצג.
הצגת מדדים ב-Cloud Monitoring
כדי לראות את מדדי Managed Lustre ב-Cloud Monitoring:
נכנסים לדף Metrics Explorer במסוף Google Cloud .
פועלים לפי ההוראות במאמר יצירת תרשימים באמצעות Metrics Explorer כדי לבחור את המדדים ולהציג אותם.
הגדרת התראות
אתם יכולים להגדיר מדיניות התראות ב-Cloud Monitoring כדי לקבל התראה כשמערכת הקבצים של Managed Lustre עומדת בתנאים ספציפיים, כמו חריגה מקיבולת האחסון או ממגבלות התפוקה.
דרישות מוקדמות
כדי ליצור מדיניות התראות, צריך להיות לכם תפקיד עריכה ב-Monitoring (roles/monitoring.editor) ב-IAM בפרויקט.
יצירת מדיניות התראות
כדי להגדיר התראה, צריך להגדיר תנאי באמצעות מדד או שאילתת PromQL ולהגדיר ערוצי התראות.
נכנסים לדף Alerting במסוף Google Cloud . Google Cloud
לוחצים על + יצירת מדיניות.
בוחרים באפשרות Builder ובוחרים את המדד, או בוחרים באפשרות Code editor כדי להזין שאילתה עם PromQL. בכלי לבחירת מדדים, המדדים של Managed Lustre נמצאים במשאבים Lustre instance ו-Lustre location.
מגדירים את הלוגיקה של הטריגר ומגדירים את ערוצי ההתראות ואת הגדרות ההתראות.
לוחצים על יצירת מדיניות.
מידע נוסף על יצירת טריגרים ואפשרויות אחרות זמין במאמרים הבאים:
- יצירת מדיניות התראות על סף מדד
- יצירת מדיניות התראות על היעדר מדדים
- יצירה של מדיניות התראות לגבי ערכי מדדים חזויים
דוגמה: יצירת התראה על קיבולת אחסון
בדוגמה הבאה אפשר לראות איך יוצרים התראה שמופעלת כשמופע Managed Lustre חורג מ-80% מהקיבולת שהוקצתה לו.
נכנסים לדף Alerting במסוף Google Cloud . Google Cloud
לוחצים על + יצירת מדיניות.
בוחרים באפשרות עורך הקוד.
בעורך השאילתות, מדביקים את שאילתת PromQL הבאה:
( sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) - sum by (instance_id, location) (lustre_googleapis_com:instance_available_bytes) ) / sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) > 0.8השאילתה הזו מחשבת את יחס השימוש בכל המקרים:
(Total - Available) / Total. הערך0.8מייצג את סך הבייטים שהגיעו ל-80% שימוש. כדי לקבל התראה כשמגיעים ל-90%, משנים את הערך הזה ל-0.9.לוחצים על Run Query (הפעלת שאילתה) כדי לאמת את התחביר ולראות תרשים של יחס השימוש הנוכחי.
לוחצים על הבא ומגדירים את הטריגר לAny time series violates (כל חריגה מסדרת זמן).
לוחצים על הבא. בקטע Documentation, מוסיפים פעולות מומלצות לפתרון בעיית הקיבולת. לדוגמה:
## Action Required: Lustre Capacity Warning The Managed Lustre instance is exceeding 80% capacity usage. **Metric:** Usage Ratio > 0.8 **Severity:** Warning **Recommended Actions:** 1. Check the instance details in the Google Cloud console. 2. Verify if this is expected data growth or a runaway process. 3. If valid, consider expanding the storage capacity of the instance or deleting old data to free up space. 4. Failure to address this may result in "No Space Left on Device" errors for client applications.
יצירת מדיניות התראות באמצעות gcloud
אפשר ליצור מדיניות התראות באמצעות Google Cloud CLI. שימו לב: תצטרכו לערוך את ההתראה במסוף Google Cloud בהמשך כדי להפעיל ערוצי התראה ספציפיים.
בדוגמה הבאה נוצרת התראה על קיבולת של 80% באמצעות gcloud:
gcloud monitoring policies create \
--policy-from-file=/dev/stdin <<EOF
{
"displayName": "Lustre High Capacity Usage (>80%)",
"severity": "WARNING",
"combiner": "OR",
"conditions": [
{
"displayName": "Capacity Usage Ratio > 0.8",
"conditionPrometheusQueryLanguage": {
"query": "(sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) - sum by (instance_id, location) (lustre_googleapis_com:instance_available_bytes)) / sum by (instance_id, location) (lustre_googleapis_com:instance_capacity_bytes) > 0.8",
"duration": "300s",
"evaluationInterval": "60s",
"alertRule": "AlwaysOn"
}
}
],
"documentation": {
"content": "Action Required: The Managed Lustre instance is exceeding 80% capacity usage. Please verify if storage expansion is required.",
"mimeType": "text/markdown"
}
}
EOF
פרטי המדד
מדדים של Managed Lustre מצורפים לסוגי המשאבים המפוקחים הבאים:
lustre.googleapis.com/Instancelustre.googleapis.com/Joblustre.googleapis.com/QuotaEntity
הנתונים נדגמים כל 60 שניות. אחרי הדגימה, יכול להיות שיעברו עד 180 שניות עד שהנתונים יוצגו.
מדדים של נפח האחסון
מדדים שקשורים לנפח האחסון שזמין ומוקצה במערכת הקבצים של Lustre.
בתוויות של מדדים, הערך של target הוא בפורמט <fsname>-<TYPE><HEXA>, כאשר <HEXA> הוא האינדקס של היעד בבסיס הקסדצימלי, שמתחיל מאפס. לדוגמה, אם שם מערכת הקבצים הוא filesys, ה-OST ה-43 הוא filesys-OST002a, וה-MDT ה-4 הוא filesys-MDT0003.
מדדי נפח האחסון מצורפים למשאב lustre.googleapis.com/Instance.
| מדד | תיאור | פרטים |
|---|---|---|
available_bytes |
מספר הבייטים של נפח האחסון של יעד אחסון אובייקטים (OST) או יעד מטא-נתונים (MDT) מסוים שזמין למשתמשים שאינם משתמשים עם הרשאות root. | שם לתצוגה: Available bytes סוג המדד: GAUGE סוג הערך: INT64 יחידה: bytes תוויות: component: סוג היעד: ost,
mdt או mgt. target: שם היעד. |
capacity_bytes |
מספר הבייטים שהוקצו ליעד הנתון. אפשר לחשב את נפח הנתונים או המטא-נתונים הכולל שניתן לשימוש באשכול עבור מופע מסוים על ידי חיבור הקיבולת של כל היעדים עבור סוג יעד נתון. | שם לתצוגה: Capacity bytes סוג המדד: GAUGE סוג הערך: INT64 יחידה: bytes תוויות: component: סוג היעד: ost,
mdt או mgt. target: שם היעד. |
free_bytes |
מספר הבייטים של נפח האחסון של OST או MDT נתונים שזמין למשתמשי root. | שם לתצוגה: בייטים פנויים סוג המדד: GAUGE סוג הערך: INT64 יחידה: בייטים תוויות: component: סוג היעד: ost,
mdt או mgt. target: שם היעד. |
מדדים של Inode (אובייקט)
מדדים שקשורים למספר ה-inodes (אובייקטים) שזמינים ולקיבולת המקסימלית.
מדדי inode מצורפים למשאב lustre.googleapis.com/Instance.
| מדד | תיאור | פרטים |
|---|---|---|
inodes_free |
מספר ה-inodes (אובייקטים) שזמינים ביעד הנתון. | שם לתצוגה: Free inodes סוג המדד: GAUGE סוג הערך: INT64 יחידה: inodes תוויות: component: סוג היעד. target: שם היעד. |
inodes_maximum |
המספר המקסימלי של צמתי מידע (אובייקטים) שהיעד יכול להכיל. | השם המוצג: Maximum inodes סוג המדד: GAUGE סוג הערך: INT64 היחידה: inodes תוויות: component: סוג היעד. target: שם היעד. |
מדדי ביצועים של קלט/פלט
מדדים שמספקים תובנות לגבי שיעורי העברת הנתונים והחביון של הפעולות.
מדדי הביצועים של קלט/פלט מצורפים למשאב lustre.googleapis.com/Instance.
| מדד | תיאור | פרטים |
|---|---|---|
io_time_milliseconds_total |
מספר פעולות הקריאה או הכתיבה שהחביון שלהן נמצא בטווחים של החביון שסווגו. | שם לתצוגה: השהיית פעולה סוג המדד: מצטבר סוג הערך: INT64 יחידה: פעולות תוויות: component: סוג היעד.operation: סוג הפעולה.size: טווח זמן הטעינה שמוקצה לקטגוריה. לדוגמה, 512
כולל את מספר הפעולות שנמשכו בין 512 ל-1024
אלפיות השנייה. target: שם היעד.
|
read_bytes_total |
מספר בייטים של נתונים שנקראו מה-OST הנתון. | שם לתצוגה: נתונים בבייט שנקראו סוג המדד: מצטבר סוג הערך: INT64 יחידה: בייט תוויות: component: סוג היעד: תמיד ost.operation: סוג הפעולה: read. target: שם היעד. |
read_samples_total |
מספר פעולות הקריאה שבוצעו ב-OST הנתון. | שם לתצוגה: פעולות קריאת נתונים סוג המדד: מצטבר סוג הערך: INT64 יחידה: פעולות תוויות: component: סוג היעד: תמיד ost.operation: סוג הפעולה: read.target: שם היעד. |
write_bytes_total |
מספר בייטים של נתונים שנכתבו ל-OST שצוין. | שם לתצוגה: Data write bytes סוג המדד: CUMULATIVE סוג הערך: INT64 יחידה: bytes תוויות: component: סוג היעד: תמיד ost.operation: סוג הפעולה: write. target: שם היעד. |
write_samples_total |
מספר פעולות הכתיבה שבוצעו ב-OST הנתון. | שם לתצוגה: פעולות כתיבת נתונים סוג המדד: מצטבר סוג הערך: INT64 יחידה: פעולות תוויות: component: סוג היעד: תמיד ost.operation: סוג הפעולה: write. target: שם היעד. |
מדדי מטמון
מדדים שמספקים תובנות לגבי הביצועים והניצול של שכבת שמירת הנתונים במטמון במופעים עם רמת שירות דינמית.
מדדי מטמון מצורפים למשאב lustre.googleapis.com/Instance.
| מדד | תיאור | פרטים |
|---|---|---|
cache/read_hits |
מספר ההיטים של קריאה ליעד ספציפי. | שם לתצוגה: Cache read hits סוג המדד: CUMULATIVE סוג הערך: INT64 יחידה: 1 תוויות: target: שם היעד. |
cache/read_misses |
מספר הפעמים שבהן לא נמצאו נתונים בקריאה של יעד ספציפי. | שם לתצוגה: Cache read misses סוג המדד: CUMULATIVE סוג הערך: INT64 יחידה: 1 תוויות: target: שם היעד. |
מדדים של חיבורים ללקוחות
מדדים שנועדו להבין את הקישוריות של הלקוח.
מדדי החיבור של הלקוח מצורפים למשאב lustre.googleapis.com/Instance.
| מדד | תיאור | פרטים |
|---|---|---|
connected_clients |
מספר הלקוחות שמחוברים כרגע ל-MDT הנתון. | שם התצוגה: Connected clients סוג המדד: GAUGE סוג הערך: INT64 יחידה: clients תוויות: component: סוג היעד. הערך הזה תמיד יהיה mdt.target: השם של ה-MDT. |
מדדי המכסה של מערכת הקבצים
מדדים של מכסת מערכת הקבצים מאפשרים לכם לעקוב אחרי צריכת האחסון וה-inode של משתמשים, קבוצות ופרויקטים ספציפיים. אפשר להשתמש במדדים האלה כדי לעקוב אחרי השימוש הנוכחי בהשוואה למגבלות הרכות והקשיחות שהוגדרו במערכת הקבצים.
מדדי המכסות של מערכת הקבצים משויכים למשאב המפוקח lustre.googleapis.com/QuotaEntity.
| מדד | תיאור | פרטים |
|---|---|---|
used_bytes |
המספר הכולל של בייטים שנצרכו כרגע על ידי המשתמש, הקבוצה או הפרויקט. | שם לתצוגה: Quota used bytes סוג המדד: GAUGE סוג הערך: INT64 יחידה: Bytes תוויות: accounting_type: אחת מהאפשרויות user,
group או project.id: המזהה המספרי של המשתמש, הקבוצה או הפרויקט. target: השם של מכשיר היעד של Lustre.
|
soft_limit_bytes |
סף צריכת האחסון שמפעיל תקופת חסד. אם השימוש יישאר מעל המגבלה הזו אחרי שתקופת החסד תסתיים, המגבלה הזו תהפוך למגבלה קשיחה. | שם לתצוגה: מכסת בייטים של מגבלה רכה סוג המדד: GAUGE סוג הערך: INT64 יחידה: בייטים תוויות: accounting_type: אחת מהאפשרויות user,
group או project.id: המזהה המספרי של המשתמש, הקבוצה או הפרויקט. target: השם של מכשיר היעד של Lustre. |
hard_limit_bytes |
נפח האחסון המקסימלי שמותר למשתמש, לקבוצה או לפרויקט. פעולות כתיבה שחורגות מהמגבלה הזו נדחות. | שם לתצוגה: מכסת בייטים מקסימלית סוג המדד: GAUGE סוג הערך: INT64 יחידה: בייטים תוויות: accounting_type: אחת מהאפשרויות user,
group או project.id: המזהה המספרי של המשתמש, הקבוצה או הפרויקט. target: השם של מכשיר היעד של Lustre. |
used_inodes |
המספר הכולל של צמתי inode (רשומות קבצים) שנמצאים כרגע בשימוש של המשתמש, הקבוצה או הפרויקט. | שם לתצוגה: מכסת inode בשימוש סוג המדד: GAUGE סוג הערך: INT64 יחידה: Count תוויות: accounting_type: אחד מהערכים user,
group או project.id: המזהה המספרי של המשתמש, הקבוצה או הפרויקט. target: השם של מכשיר היעד של Lustre. |
soft_limit_inodes |
סף צריכת ה-inode שמפעיל תקופת חסד. אם השימוש יישאר מעל המגבלה הזו אחרי שתקופת החסד תסתיים, המגבלה הזו תהפוך למגבלה קשיחה מחייבת. | שם לתצוגה: Quota soft limit inodes סוג המדד: GAUGE סוג הערך: INT64 יחידה: Count תוויות: accounting_type: אחת מהאפשרויות user,
group או project.id: המזהה המספרי של המשתמש, הקבוצה או הפרויקט. target: השם של מכשיר היעד של Lustre. |
hard_limit_inodes |
מספר מקסימלי של צמתי inode שמותר למשתמש, לקבוצה או לפרויקט. אם חורגים מהמגבלה הזו, יצירת הקובץ נדחית. | שם לתצוגה: Quota hard limit inodes סוג המדד: GAUGE סוג הערך: INT64 יחידה: Count תוויות: accounting_type: אחת מהאפשרויות user, group או project.id: המזהה המספרי של המשתמש, הקבוצה או הפרויקט. target: השם של מכשיר היעד של Lustre. |
מדדים של Jobstats
מדדים שמספקים נתונים סטטיסטיים של קריאה, כתיבה ומטא-נתונים לכל JobID, כפי שהוגדר בלקוח.
כדי לאסוף את המדדים האלה, צריך להשתמש ב-lctl כדי להגדיר את הפרמטר jobid_var בלקוחות Lustre. מידע נוסף זמין במאמר בנושא Lustre Jobstats.
כדי להגדיר את הלקוח לדווח על מזהה ספציפי (לדוגמה, procname_uid), משתמשים בפקודה lctl set_param jobid_var:
lctl set_param jobid_var=procname_uid
מדדי Jobstats מצורפים למשאב lustre.googleapis.com/Job.
| מדד | תיאור | פרטים |
|---|---|---|
read_bytes_total |
המספר הכולל של בייטים שנקראו על ידי העבודה. |
שם לתצוגה: Data read bytes by job סוג המדד: CUMULATIVE סוג הערך: INT64 יחידה: Bytes תוויות: job_id: מספר העבודה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
write_bytes_total |
המספר הכולל של בייטים שנכתבו על ידי העבודה. |
שם לתצוגה: Data write bytes by job סוג המדד: CUMULATIVE סוג הערך: INT64 יחידה: Bytes תוויות: job_id: מספר העבודה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
metadata_operations_total |
סך כל פעולות המטא-נתונים שבוצעו על ידי העבודה. |
שם לתצוגה: Metadata operations by job סוג המדד: CUMULATIVE סוג הערך: INT64 יחידה: operations תוויות: job_id: מזהה העבודה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
read_samples_total |
המספר הכולל של פעולות קריאה שבוצעו על ידי העבודה. |
שם לתצוגה: פעולות קריאת נתונים לפי משימה סוג המדד: מצטבר סוג הערך: INT64 יחידה: פעולות תוויות: job_id: מזהה המשימה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
write_samples_total |
המספר הכולל של פעולות כתיבה שבוצעו על ידי הג'וב. |
שם לתצוגה: פעולות כתיבת נתונים לפי משימה סוג המדד: מצטבר סוג הערך: INT64 יחידה: פעולות תוויות: job_id: מזהה המשימה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
read_maximum_size_bytes |
הגודל המקסימלי בבייטים של פעולות קריאה על ידי העבודה. |
שם התצוגה: גודל מקסימלי של נתונים לקריאה לפי משימה סוג המדד: GAUGE סוג הערך: INT64 יחידה: Bytes תוויות: job_id: מספר המשימה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
read_minimum_size_bytes |
הגודל המינימלי בבייטים של פעולות קריאה על ידי העבודה. |
שם לתצוגה: גודל מינימלי של נתונים לקריאה לפי משימה סוג המדד: GAUGE סוג הערך: INT64 יחידה: Bytes תוויות: job_id: מספר המשימה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
write_maximum_size_bytes |
הגודל המקסימלי בבייטים של פעולות כתיבה על ידי העבודה. |
שם לתצוגה: גודל מקסימלי של כתיבת נתונים לפי משימה סוג המדד: GAUGE סוג הערך: INT64 יחידה: Bytes תוויות: job_id: מספר המשימה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|
write_minimum_size_bytes |
הגודל המינימלי בבייטים של פעולות כתיבה על ידי העבודה. |
שם לתצוגה: גודל מינימלי של כתיבת נתונים לפי משימה סוג המדד: GAUGE סוג הערך: INT64 יחידה: Bytes תוויות: job_id: מזהה המשימה שנשלח על ידי הלקוח.component: סוג היעד. target: שם היעד. instance_id: המזהה של מכונת Managed Lustre.
|