מדדים של Cloud Storage FUSE

במאמר הזה מוסבר על המדדים של Cloud Storage FUSE ואיך לאסוף, לייצא ולנתח נתוני מדדים.

‫Cloud Storage מספק מדדים מפורטים ל-Cloud Storage FUSE כשמשתמשים ב-Cloud Storage FUSE כדי לטעון את הקטגוריות ל-Cloud Storage כמערכות קבצים. המדדים יכולים לעזור לכם לעקוב אחרי הביצועים באופן רציף, לזהות צווארי בקבוק פוטנציאליים שיכולים להשפיע על קצב העברת הנתונים ועל זמן האחזור, ולטפל בבעיות במהירות כשהן מתרחשות.

למטרות אבחון, אפשר לאסוף מדדים ברקע כשמשתמשים ב-Cloud Storage FUSE. ב-Cloud Storage יש שתי דרכים לאיסוף, לייצוא ולניתוח מדדים:

  • Cloud Monitoring exporter: המדדים נאספים ומיוצאים ישירות מ-Cloud Storage FUSE אל Cloud Monitoring. אחרי הייצוא, אפשר לראות את מדדי המעקב במסוף Google Cloud .

  • יציאת Prometheus: המדדים מיוצאים בפורמט טקסט של מדדי Prometheus ביציאת Prometheus שצוינה, כמו http://Host:prometheus-port/metrics, באמצעות ערכת הכלים של Prometheus לניטור ולהתראות בקוד פתוח. אחר כך אפשר לראות את המדדים כפלט באמצעות כתובת URL של לקוח, כמו curl http://Host:prometheus-port/metrics

תמחור

החיוב על מדדים של Cloud Storage FUSE מבוסס על השימוש שלכם. למידע נוסף על תמחור, אפשר לעיין במאמר תמחור של Google Cloud Observability.

שימוש ב-Cloud Monitoring exporter

כדי להשתמש ב-Cloud Monitoring exporter לייצוא, לאיסוף ולניתוח של מדדים מ-Cloud Storage FUSE ל-Cloud Monitoring, צריך לבצע את השלבים שמפורטים בקטעים הבאים.

קבלת התפקידים הנדרשים

כדי לקבל את ההרשאות שנדרשות לשימוש ב-Cloud Monitoring exporter, צריך להקצות את תפקיד ה-IAM‏ Monitoring Metric Writer (roles/monitoring.metricWriter) בפרויקט שרוצים לאסוף ממנו מדדים.

התפקיד המוגדר מראש הזה כולל את ההרשאות שנדרשות לשימוש ב-Cloud Monitoring exporter. מידע נוסף על התפקיד Metric Writer ב-Monitoring זמין במאמר IAM documentation about roles/monitoring.metricWriter.

במאמר ניהול הגישה לפרויקטים מופיעות הוראות להקצאת תפקידים לפרויקטים.

לפני שמתחילים

  1. מפעילים את Cloud Monitoring API.

  2. מפעילים את Cloud Storage API.

    כניסה ל-Cloud Storage API

הגדרת כלי הייצוא של Cloud Monitoring

כדי להגדיר את כלי הייצוא של Cloud Monitoring לאיסוף, לייצוא ולניתוח של מדדים של Cloud Storage FUSE, צריך לציין ערך מספרי בשניות בשדה metrics:cloud-metrics-export-interval-secs באמצעות קובץ תצורה של Cloud Storage FUSE או האפשרות --cloud-metrics-export-interval-secs באמצעות Cloud Storage FUSE CLI.

הצגת מדדים באמצעות מסוף Google Cloud

כדי להציג את מדדי Cloud Storage FUSE באמצעות מסוף Google Cloud , פועלים לפי ההוראות הבאות:

  1. נכנסים לדף Metrics Explorer במסוף Google Cloud .

    כניסה ל-Metrics Explorer

  2. בוחרים את הפרויקט שרוצים לראות את המדדים שלו.

  3. בתפריט הנפתח מדד, לוחצים על בחירת מדד.

  4. בוחרים את סוג המשאב:

    • למכונות וירטואליות של Compute Engine, בוחרים באפשרות VM Instance > Custom metrics.
    • ל-pods של GKE, בוחרים באפשרות Kubernetes Pod‏ > Gcsfusecsi.

    מזינים את שם המדד שרוצים לראות.

    כדי לראות אילו מדדים Cloud Storage מציע ל-Cloud Storage FUSE, אפשר לעיין במאמר בנושא מדדים זמינים.

שימוש ב-Prometheus לייצוא, לאיסוף ולניתוח של מדדים

בקטעים הבאים מוסבר איך להגדיר את Prometheus כדי לייצא, לאסוף ולנתח מדדים של Cloud Storage FUSE, ואיך להשתמש בו.

הגדרת Prometheus

כדי להגדיר את Prometheus, פועלים לפי ההוראות במאמר בנושא הגדרת Prometheus עבור סוכן תפעול.

שימוש ב-Prometheus

  1. מציינים את יציאת ה-HTTP שאליה רוצים לייצא את המדדים באמצעות השדה prometheus-port בקובץ התצורה של Cloud Storage FUSE או האפשרות --prometheus-port gcsfuse באמצעות CLI של gcsfuse.

  2. מריצים את הפקודה הבאה כדי לאמת את נקודת הקצה של מדדי Prometheus:

     curl https://localhost:8080/metrics

    אם הפקודה מסתיימת בלי שגיאות, היא מחזירה פלט שדומה לטקסט הבא:

     # HELP file_cache_read_bytes_count The cumulative number of bytes read from file cache along with read type - Sequential/Random
     # TYPE file_cache_read_bytes_count counter
     file_cache_read_bytes_count{read_type="Random"} 0
     file_cache_read_bytes_count{read_type="Sequential"} 80
     # HELP file_cache_read_count Specifies the number of read requests made via file cache along with type - Sequential/Random and cache hit - true/false
     # TYPE file_cache_read_count counter
     file_cache_read_count{cache_hit="false",read_type="Random"} 215
     file_cache_read_count{cache_hit="false",read_type="Sequential"} 5
     # HELP file_cache_read_latencies The cumulative distribution of the file cache read latencies along with cache hit - true/false
     # TYPE file_cache_read_latencies histogram
     file_cache_read_latencies_bucket{cache_hit="false",le="1"} 215
     file_cache_read_latencies_bucket{cache_hit="false",le="2"} 216
     file_cache_read_latencies_bucket{cache_hit="false",le="3"} 216
     file_cache_read_latencies_bucket{cache_hit="false",le="4"} 216
     file_cache_read_latencies_bucket{cache_hit="false",le="5"} 216
     ...
     file_cache_read_latencies_sum{cache_hit="false"} 483.62783500000023
     file_cache_read_latencies_count{cache_hit="false"} 220
     # HELP fs_ops_count The cumulative number of ops processed by the file system.
     # TYPE fs_ops_count counter
     fs_ops_count{fs_op="FlushFile"} 9
     fs_ops_count{fs_op="GetInodeAttributes"} 91
     fs_ops_count{fs_op="LookUpInode"} 584
     fs_ops_count{fs_op="OpenDir"} 122
     fs_ops_count{fs_op="OpenFile"} 9
     fs_ops_count{fs_op="ReadDir"} 184
     fs_ops_count{fs_op="ReadFile"} 220
     fs_ops_count{fs_op="ReleaseDirHandle"} 122
     fs_ops_count{fs_op="ReleaseFileHandle"} 9
     fs_ops_count{fs_op="StatFS"} 10
     # HELP fs_ops_error_count The cumulative number of errors generated by file system operations
     # TYPE fs_ops_error_count counter
     fs_ops_error_count{fs_error_category="NOT_IMPLEMENTED",fs_op="GetXattr"} 1
     fs_ops_error_count{fs_error_category="NOT_IMPLEMENTED",fs_op="ListXattr"} 1
     fs_ops_error_count{fs_error_category="INTERRUPT_ERROR",fs_op="LookUpInode"} 58
     fs_ops_error_count{fs_error_category="NO_FILE_OR_DIR",fs_op="LookUpInode"} 6
     # HELP fs_ops_latency The cumulative distribution of file system operation latencies
     # TYPE fs_ops_latency histogram
     fs_ops_latency_bucket{fs_op="FlushFile",le="1"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="2"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="3"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="4"} 9
     fs_ops_latency_bucket{fs_op="FlushFile",le="5"} 9
     ...
     fs_ops_latency_sum{fs_op="FlushFile"} 0.28800000000000003
     fs_ops_latency_count{fs_op="FlushFile"} 9
     # HELP gcs_download_bytes_count The cumulative number of bytes downloaded from GCS along with type - Sequential/Random
     # TYPE gcs_download_bytes_count counter
     gcs_download_bytes_count{read_type="Sequential"} 2.0971528e+08
     # HELP gcs_read_count Specifies the number of gcs reads made along with type - Sequential/Random
     # TYPE gcs_read_count counter
     gcs_read_count{read_type="Sequential"} 5
     ```

מדדים זמינים

‫Cloud Storage FUSE מספק את המדדים הבאים.

מדדים של מערכת קבצים

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

שם המדד תיאור המדד
fs/ops_count מספר הפעולות שעובדו על ידי מערכת הקבצים. המדד הזה מאפשר קיבוץ לפי op_type כדי לקבל ספירות של פעולות ספציפיות.
fs/ops_error_count מספר השגיאות שנוצרו על ידי פעולות במערכת הקבצים. אפשר לקבץ את המדד הזה לפי op_type ו-error_category. כל שגיאה ממופה ל-error_category ביחס של רבים לאחד.
fs/ops_latency ההתפלגות המצטברת של השהיות בפעולות של מערכת הקבצים. אפשר לקבץ את המדד הזה לפי op_type.

מדדים של Cloud Storage

מדדי Cloud Storage מספקים תובנות לגבי האינטראקציות בין Cloud Storage FUSE לבין Cloud Storage.

שם המדד תיאור המדד
gcs/download_bytes_count מספר הבייטים שהורדו מ-Cloud Storage, יחד עם סוג הקריאה. סוג הקריאה מציין קריאות עוקבות, אקראיות או מקבילות.
gcs/read_bytes_count מספר הבייטים שנקראו מאובייקטים ב-Cloud Storage, ששונה מ-download_bytes_count. לדוגמה, יותר נתונים נשלפים מ-Cloud Storage ממה שהאפליקציה משתמשת בפועל.
gcs/read_count מספר הקריאות מ-Cloud Storage וסוג הקריאה: עוקבת, אקראית או מקבילה.
gcs/reader_count מספר הקוראים של אובייקטים ב-Cloud Storage שנפתחו או נסגרו. הנתונים של המדד הזה מקובצים לפי סוג שיטת הקלט/פלט (I/O), כמו opened או closed.
gcs/request_count מספר הבקשות ל-Cloud Storage שעברו עיבוד.
gcs/request_latencies ההתפלגות הכוללת של השהיות של בקשות ל-Cloud Storage.
gcs/retry_count מספר הבקשות לניסיון חוזר שנשלחו ל-Cloud Storage. אפשר לקבץ את המדד הזה לפי retry_error_category שקובע את קטגוריית השגיאה שהפעילה ניסיון חוזר.

מדדים של מטמון קבצים

מדדים של מטמון קבצים מספקים תובנות לגבי הביצועים וההתנהגות של פעולות שמירה במטמון של קבצים ב-Cloud Storage FUSE.

שם המדד תיאור המדד
file_cache/read_bytes_count מספר הבייטים שנקראו ממטמון הקבצים וסוג הקריאה, רציפה או אקראית.
file_cache/read_latencies ההתפלגות הכוללת של זמני האחזור של קריאת מטמון הקבצים ושל מציאה במטמון (cache hit), true או false.
file_cache/read_count מספר בקשות הקריאה שבוצעו באמצעות מטמון הקבצים, סוג הבקשה (למשל, רציפה או אקראית) והאם הבקשה נמצאה במטמון (true או false).

המאמרים הבאים