שרת HTTP

במאמר הזה מוסבר איך להגדיר את הפריסה של Google Kubernetes Engine כדי שתוכלו להשתמש בשירות המנוהל של Google Cloud ל-Prometheus כדי לאסוף מדדים מהבקשות מסוג HTTP שהאפליקציה שלכם משרתת. במאמר הזה נסביר איך:

ההוראות האלה רלוונטיות רק אם אתם משתמשים ב אוסף מנוהל עם שירות מנוהל ל-Prometheus.

הגדרה

כדי לאסוף מהשרת HTTP מדדים שאפשר להציג במרכז הבקרה Application, צריך לייצא את המדדים הבאים כמו שמתואר:

  • http_requests_total מסוג counter, עם התוויות code ו-method.
  • http_request_duration_seconds_bucket מסוג histogram, עם התווית method.

דוגמה לאיסוף המדדים האלה באמצעות לקוח Prometheus Go מופיעה ב-prometheus-example-app.

כדי לוודא ששרת ה-HTTP שולח מדדים לנקודות הקצה הצפויות, מבצעים את הפעולות הבאות:

  1. מגדירים העברה ליציאה אחרת באמצעות הפקודה הבאה:
    kubectl -n NAMESPACE_NAME port-forward deploy/HTTP_SERVER_DEPLOYMENT_NAME PROMETHEUS_PORT_NUMBER
      
  2. אפשר לגשת אל localhost:PROMETHEUS_PORT_NUMBER באמצעות הדפדפן או כלי השירות curl בסשן אחר של מסוף.

הגדרה של משאב PodMonitoring

כדי לגלות יעדים, ל-Managed Service for Prometheus Operator נדרש משאב PodMonitoring שתואם לשרת ה-HTTP באותו מרחב שמות.

אפשר להשתמש בהגדרה הבאה של PodMonitoring:

apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
  name: my-prometheus-http-app
  labels:
    app.kubernetes.io/name: my-prometheus-http-app
    app.kubernetes.io/part-of: google-cloud-managed-prometheus
spec:
  endpoints:
  - port: web
    scheme: http
    interval: 30s
    path: /metrics
  selector:
    matchLabels:
      app.kubernetes.io/name: prometheus-example-app

מוודאים שהערכים של השדות port ו-MatchLabels תואמים לאלה של אפליקציית ה-HTTP שרוצים לעקוב אחריה.

כדי להחיל שינויים בתצורה מקובץ מקומי, מריצים את הפקודה הבאה:

kubectl apply -n NAMESPACE_NAME -f FILE_NAME

אפשר גם להשתמש ב-Terraform כדי לנהל את ההגדרות.

הצגת מדדי האפליקציה

כדי לראות את מדדי הבקשות, שיעור השגיאות וזמן האחזור מאפליקציית ה-HTTP, מבצעים את הפעולות הבאות:

  1. במסוף Google Cloud , עוברים לדף Workloads:

    עוברים אל עומסי עבודה

    אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Kubernetes Engine.

  2. לוחצים על פריסת עומס עבודה ברשימה. בעמודה סוג ברשימה מצוין סוג העומס.
  3. בדף Deployment details, לוחצים על הכרטיסייה Observability.
  4. בוחרים באפשרות אפליקציה בבורר מרכזי הבקרה.

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

פתרון בעיות

מידע על פתרון בעיות בהטמעת מדדים ב-שירות מנוהל ל-Prometheus זמין במאמר בעיות באיסוף מ-exporters שבקטע פתרון בעיות בצד ההטמעה.