במאמר הזה מוסבר איך ליצור בדיקת זמינות ציבורית. בדיקת זמינות ציבורית יכולה לשלוח בקשות מכמה מיקומים ברחבי העולם לכתובות URL או למשאבים שזמינים לציבור, כדי לבדוק אם המשאב מגיב. Google Cloud במאמר יצירת בדיקות זמינות פרטיות מוסבר איך ליצור בדיקות זמינות לרשתות פרטיות.
בדיקות זמני פעילות ציבוריות יכולות לקבוע את הזמינות של המשאבים המפוקחים הבאים:- כתובת URL לבדיקת זמינות
- מופע של מכונה וירטואלית
- אפליקציית App Engine
- שירות Kubernetes
- מכונה של Amazon Elastic Compute Cloud (EC2)
- גרסת Cloud Run
בקטע השלבים הבאים במסמך הזה יש קישורים למידע על ניהול ומעקב אחר בדיקות זמני פעילות.
התכונה הזו נתמכת רק בפרויקטים של Google Cloud . בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות.
מידע על בדיקות זמני פעילות
ב-HTTP וב-HTTPS, המערכת עוקבת אחרי כל ההפניות לכתובות URL, והתגובה הסופית שמתקבלת בבדיקת הזמינות משמשת להערכת קריטריוני ההצלחה. בבדיקות של HTTPS, מועד התפוגה של אישור ה-SSL מחושב על סמך אישור השרת שמתקבל בתגובה הסופית.
כדי שתיבדק הזמינות, צריכים להתקיים התנאים הבאים:
- סטטוס ה-HTTP צריך להתאים לקריטריונים שאתם מציינים.
- נתוני התשובה לא מכילים את התוכן הנדרש או שהתוכן הנדרש קיים.
בבדיקות זמני פעילות לא נטענים נכסי דף ולא מופעל JavaScript, והגדרת ברירת המחדל של בדיקת זמני פעילות לא כוללת אימות.
לפני שמתחילים
מבצעים את השלבים הבאים בפרויקט Google Cloud שבו יאוחסן הבדיקה של זמן הפעולה:
-
כדי לקבל את ההרשאות שדרושות ליצירת בדיקות זמינות, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים בפרויקט:
-
Google Cloud משתמשי מסוף:
עורך המעקב (
roles/monitoring.editor) -
משתמשי API:
-
עורך הגדרות בדיקת זמני פעילות (
roles/monitoring.uptimeCheckConfigEditor) -
עורך מדיניות ההתראות של Monitoring (
roles/monitoring.alertPolicyEditor) -
עריכת ערוץ התראות של מעקב (
roles/monitoring.notificationChannelEditor)
-
עורך הגדרות בדיקת זמני פעילות (
-
Google Cloud משתמשי מסוף:
עורך המעקב (
מוודאים שלמשאב שרוצים לבדוק יש נקודת קצה ציבורית או שהוא נמצא מאחורי חומת אש שאפשר להגדיר.
בכל שאר ההגדרות, צריך ליצור בדיקת זמינות פרטית. מידע נוסף זמין במאמר יצירת בדיקות זמינות פרטיות.
אם המשאב שלכם נמצא מאחורי חומת אש, צריך להגדיר את חומת האש כך שתאפשר תעבורה נכנסת מכתובות ה-IP של השרתים של בדיקת הזמינות. מידע נוסף זמין במאמר בנושא רשימת כתובות ה-IP של שרתי בדיקת הזמינות.
מגדירים את ערוצי ההתראות שרוצים להשתמש בהם כדי לקבל התראות. מומלץ ליצור כמה סוגים של ערוצי התראות. מידע נוסף זמין במאמר בנושא יצירה וניהול של ערוצי התראות.
מציינים לפחות שלושה בודקים לבדיקת זמן הפעולה. אזור הבדיקה של זמן הפעולה
USAכולל את האזוריםUSA_OREGON,USA_IOWAו-USA_VIRGINIA. כל אחד מהאזוריםUSA_*כולל בודק אחד, והאזורUSAכולל את שלושת הבודקים. בכל אחד מהאזורים האחרים לבדיקת זמינות,EUROPE,SOUTH_AMERICAו-ASIA_PACIFIC, יש בודק אחד.אם בוחרים באפשרות Global כשמשתמשים במסוף Google Cloud , או באפשרות
REGION_UNSPECIFIEDכשמשתמשים ב-API, בדיקות זמני פעילות מונפקות מכל האזורים שבהם מתבצעות בדיקות זמני פעילות.-
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Terraform
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Terraform שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
C#
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של .NET שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Go
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Go שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Java
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Java שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Node.js
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Node.js שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
PHP
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של PHP שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Python
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Python שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
Ruby
כדי להשתמש בסביבת פיתוח מקומית בדוגמאות של Ruby שבדף הזה, מתקינים ומפעילים את ה-CLI של gcloud, ואז מגדירים את Application Default Credentials באמצעות פרטי הכניסה של המשתמש.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
למידע נוסף, ראו הגדרת ADC לסביבת פיתוח מקומית במאמרי העזרה בנושא אימות Google Cloud .
REST
כדי להשתמש בדוגמאות של API בארכיטקטורת REST שבדף הזה בסביבת פיתוח מקומית, צריך להשתמש בפרטי הכניסה שאתם נותנים ל-CLI של gcloud.
התקינו את ה-CLI של Google Cloud.
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
מידע נוסף מופיע במאמר אימות לשימוש ב-REST במסמכי האימות של Google Cloud .
יצירת בדיקה של זמני פעילות
בקטע הזה מוסבר איך ליצור ולהגדיר בדיקות זמני פעילות.
כדי ליצור בדיקת זמינות למאזן עומסים חיצוני עם יציאת TCP או HTTP/s אחת לפחות, אפשר לפעול לפי ההוראות האלה. אפשרות נוספת היא לעבור לדף פרטי השירות של השירות ואז ללחוץ על יצירת בדיקת זמינות. כשמתחילים מדף פרטי השירות, השדות שספציפיים לשירות מאוכלסים מראש.
המסוף
כדי ליצור בדיקת זמינות באמצעות מסוף Google Cloud :
-
במסוף Google Cloud , עוברים לדף
בדיקת זמני פעילות:
אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Monitoring.
- בסרגל הכלים של מסוף Google Cloud , בוחרים את הפרויקט הרלוונטי ב- Google Cloud . בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות.
לוחצים על יצירת בדיקת זמינות.
מציינים את היעד של בדיקת זמני הפעילות:
בוחרים את הפרוטוקול. אפשר לבחור באפשרות HTTP, HTTPS או TCP.
בוחרים אחד מסוגי המשאבים הבאים:
- כתובת URL: כל כתובת IPv4 או שם מארח. הנתיב והיציאה מוזנים בנפרד.
- Kubernetes LoadBalancer Service: שירות Kubernetes מסוג LoadBalancer.
- שירות Cloud Run: אם בוחרים שירות Cloud Run כיעד של בדיקת זמינות, צריך לוודא שיש לכם הרשאת
run.routes.invokeבשירות הזה. - App Engine: אפליקציות (מודולים) של App Engine.
- מכונה: מכונות Compute Engine או AWS EC2.
- Elastic Load Balancer: מאזן עומסים של AWS.
מזינים את השדות הספציפיים לפרוטוקול:
לצורך בדיקות TCP, מזינים את היציאה.
בבדיקות HTTP ו-HTTPS, אפשר להזין נתיב במארח או במשאב. כל בדיקות זמני הפעילות שמשתמשות בפרוטוקולים האלה שולחות בקשה אל
http://target/path. בביטוי הזה, כשמדובר במשאב של כתובת URL, targetהוא שם מארח או כתובת IP. במשאב App Engine, targetהוא שם מארח שנגזר משם השירות. לדוגמה, במשאבי מכונות וירטואליות ומאזני עומסים,targetהיא כתובת IP שנגזרת מהשם שסיפקתם למשאב או לקבוצת המשאבים.אם משאירים את השדה
pathריק או אם מגדירים את הערך ל-/, הבקשה מונפקת ל-http://target/.לדוגמה, כדי להנפיק בדיקת זמני פעילות למשאב כתובת ה-URL
example.com/tester, צריך להגדיר את השדה שם המארח לערךexample.comואת השדה נתיב לערך/tester.נניח שפרסתם שרת ב-App Engine עם רכיב dispatcher שתומך ב-
/וב-/hello. כדי להנפיק את בדיקת הזמינות לטיפול ב-'/', משאירים את השדה Path (נתיב) ריק. כדי להנפיק את בדיקת זמן הפעולה ל-handler/hello, מגדירים את הערך של השדה Path ל-/hello.
מזינים את השדות הספציפיים למשאב:
למשאבי כתובת URL, מזינים את שם המארח בשדה שם המארח. לדוגמה, מזינים
example.com.בשביל משאבי App Engine, מזינים את שם השירות בשדה Service.
למשאבי Elastic Load Balancer ו-Instance, ממלאים את השדה Applies to באופן הבא:
- כדי להנפיק בדיקת זמינות למופע יחיד או למאזן עומסים, בוחרים באפשרות Single ומשתמשים בתפריט כדי לבחור את המופע או מאזן העומסים הספציפיים.
- כדי להפעיל בדיקת זמינות לקבוצת מעקב, בוחרים באפשרות קבוצה ומשתמשים בתפריט כדי לבחור את שם הקבוצה.
אופציונלי: כדי להגדיר את התדירות שבה מתבצעת בדיקת הזמינות, משתמשים בשדה תדירות הבדיקה.
אופציונלי: כדי לבחור אזורים לבדיקה או להגדיר אישורי SSL, אימות, כותרות ויציאות לבדיקות HTTP ו-HTTPS, לוחצים על אפשרויות נוספות של יעד:
- אזורים: בוחרים את האזורים שבהם בדיקות הזמינות יקבלו בקשות. בבדיקת זמינות צריכים להיות לפחות שלושה בודקים. יש בודק אחד בכל האזורים, חוץ מארה"ב, שבה יש שלושה בודקים. הגדרת ברירת המחדל, Global (גלובלי), כוללת את כל האזורים.
- פינגים של ICMP: מגדירים את בדיקת הזמינות לשליחה של עד שלושה פינגים. מידע נוסף זמין במאמר שימוש בפינגים של ICMP.
- שיטת הבקשה: בבדיקות HTTP, בוחרים את שיטת הבקשה.
- גוף: לבדיקות HTTP POST, מזינים את הגוף המקודד בכתובת ה-URL. את הקידוד צריך לבצע באופן ידני. בכל שאר הבדיקות, משאירים את השדה הזה ריק.
- כותרת מארח: ממלאים את השדה הזה כדי לבדוק מארחים וירטואליים. השדה הזה לא זמין לבדיקות TCP.
- יציאה: מציינים מספר יציאה.
- כותרות בהתאמה אישית: אפשר לספק כותרות בהתאמה אישית ולהצפין אותן אם רוצים. ההצפנה מסתירה את הערכים של הכותרת בטופס. כדאי להשתמש בהצפנה לכותרות שקשורות לאימות, שלא רוצים שאחרים יראו.
Authentication: הערכים האלה נשלחים ככותרת Authorization. השדה הזה לא זמין לבדיקות TCP.
בוחרים אחת מהאפשרויות הבאות:
- אימות בסיסי: צריך לספק שם משתמש וסיסמה יחידים. הסיסמאות תמיד מוסתרות בטופס.
- אימות של סוכן שירות: כשמפעילים את האפשרות הזו, נוצר אסימון זהות עבור סוכן השירות של המעקב. האפשרות הזו זמינה רק לבדיקות של HTTPS.
אימות אישור SSL: אם בחרתם ב-HTTPS עבור משאב של כתובת URL, כברירת מחדל השירות ינסה להתחבר דרך HTTPS ולאמת את אישור ה-SSL. בדיקות הזמינות נכשלות אם לכתובת URL יש אישור לא תקף. הסיבות לאי-תקינות של אישור כוללות את הדברים הבאים:
- אישור שתוקפו פג
- אישור עם חתימה עצמית
- אישור עם אי התאמה לשם הדומיין
- אישור שמשתמש בתוסף Authority Information Access (AIA).
כדי לאלץ בדיקת זמינות של HTTPS כדי לאמת את אישור ה-SSL, בוחרים באפשרות אימות אישורי SSL.
כדי להשבית את האימות של אישורי SSL, מבטלים את הסימון של האפשרות אימות אישורי SSL.
אם יש לכם אישורי SSL עם תוספי AIA, אתם צריכים להשבית את האימות של אישורי ה-SSL. סוגי האישורים האלה לא נתמכים, והם לא עוברים את רצף האימות. בדרך כלל, הודעת השגיאה היא 'Responded with SSL handshake Error in 10000 ms'.
אפשר להשתמש במדד
monitoring.googleapis.com/uptime_check/time_until_ssl_cert_expiresכדי ליצור מדיניות התראות שתשלח לכם התראה לפני שתוקף האישור יפוג. מידע נוסף זמין במאמר בנושא מדיניות לדוגמה: מדיניות לבדיקת זמינות.מסמנים את תיבת הסימון אימות אישורי SSL.
לוחצים על המשך ומגדירים את דרישות התגובה. לכל ההגדרות בקטע הזה יש ערכי ברירת מחדל:
כדי לשנות את תקופת הזמן הקצובה לתפוגה של בדיקת הזמינות, משתמשים בשדה Response Timeout (זמן קצוב לתפוגה של התגובה). בדיקת זמינות נכשלת אם לא מתקבלת תגובה מיותר ממיקום אחד במהלך התקופה הזו.
כדי להגדיר את בדיקת זמני הפעילות כך שתבצע התאמת תוכן, מוודאים שתווית המתג היא התאמת תוכן מופעלת:
- בתפריט האפשרויות, בוחרים באפשרות סוג התאמה של תוכן התגובה.
השדה הזה קובע איך תוכן התשובה מושווה לנתונים שמוחזרים. לדוגמה, נניח שתוכן התשובה הוא
abcdוסוג ההתאמה של התוכן הוא Contains. בדיקת הזמינות מצליחה רק אם נתוני התגובה מכילים את הערךabcd. מידע נוסף זמין במאמר אימות נתוני התשובות. - מזינים את תוכן התגובה. תוכן התשובה חייב להיות מחרוזת באורך של עד 1,024 בייט. ב-API, השדה הזה הוא האובייקט
ContentMatcher.
- בתפריט האפשרויות, בוחרים באפשרות סוג התאמה של תוכן התגובה.
השדה הזה קובע איך תוכן התשובה מושווה לנתונים שמוחזרים. לדוגמה, נניח שתוכן התשובה הוא
כדי למנוע יצירה של רשומות ביומן בעקבות בדיקות זמני פעילות, מבטלים את הסימון של Log check failures (רישום כשלים בבדיקה).
בבדיקות זמני הפעילות של HTTP, צריך להגדיר את קודי התגובה המקובלים. כברירת מחדל, בדיקות זמני פעילות של HTTP מסמנות כל תגובה
2xxכתגובה מוצלחת.
לוחצים על המשך ומגדירים את ההתראות.
כדי לקבל התראה כשבדיקת זמני פעילות נכשלת, צריך ליצור מדיניות התראות ולהגדיר ערוצי התראות למדיניות הזו:
- אופציונלי: מעדכנים את השם של מדיניות ההתראות.
- אופציונלי: בשדה משך, בוחרים כמה פעמים בדיקות הזמינות צריכות להיכשל לפני שליחת ההתראות. כברירת מחדל, ההתראות נשלחות כשמתקבלים דיווחים לפחות משני אזורים על כשלים בבדיקת זמן הפעולה הרציפה למשך דקה אחת לפחות.
בתיבה Notification channels, לוחצים על arrow_drop_down Menu, בוחרים את הערוצים שרוצים להוסיף ואז לוחצים על OK.
בתפריט, ערוצי ההתראות מקובצים בסדר אלפביתי לפי כל סוג ערוץ.
אם אתם לא רוצים ליצור מדיניות התראות, ודאו שהטקסט של לחצן המתג הוא אל תיצור התראה.
לוחצים על המשך ומשלימים את בדיקת הזמינות:
מזינים שם תיאורי לבדיקת הזמינות.
אופציונלי: כדי להוסיף תוויות שמוגדרות על ידי המשתמש לבדיקת הזמינות, מבצעים את הפעולות הבאות:
- לוחצים על expand_more הצגת תוויות משתמש.
- בשדה Key, מזינים שם לתווית.
שמות התוויות צריכים להתחיל באות קטנה, והם יכולים להכיל אותיות קטנות, ספרות, קווים תחתונים ומקפים. לדוגמה, מזינים
severity. - בשדה ערך, מזינים את הערך של התווית. הערכים של התוויות יכולים להכיל אותיות קטנות, ספרות, קווים תחתונים ומקפים. לדוגמה, מזינים
critical. - לכל תווית נוספת, לוחצים על הוספת תווית משתמש ומזינים את המפתח והערך של התווית.
כדי לאמת את ההגדרה של בדיקת זמני הפעילות, לוחצים על Test (בדיקה). אם התוצאה לא תואמת לציפיות שלכם, כדאי לעיין במאמר בנושא כשלים בבדיקה, לתקן את ההגדרה ולחזור על שלב האימות.
לוחצים על יצירה. אם בוחרים באפשרות יצירה ולא ממלאים שדה חובה, מוצגת הודעת שגיאה.
gcloud
כדי ליצור את בדיקת זמני הפעילות, מריצים את הפקודה
gcloud monitoring uptime create:gcloud monitoring uptime create DISPLAY_NAME REQUIRED_FLAGS OPTIONAL_FLAGS --project=PROJECT_IDלפני שמריצים את הפקודה הקודמת, מחליפים את מה שכתוב בשדות הבאים:
PROJECT_ID: מזהה הפרויקט. בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות.
DISPLAY_NAME: השם של בדיקת הזמינות.
REQUIRED_FLAGS: הגדרה לציון המשאב שנבדק על ידי בדיקת הזמינות. לדוגמה, הפקודה הבאה יוצרת בדיקת זמינות שבודקת את כתובת ה-URL EXAMPLE.com בפרויקט מסוים:
gcloud monitoring uptime create DISPLAY_NAME \ --resource-labels=host=EXAMPLE.com,project_id=PROJECT_ID \ --resource-type=uptime-urlבפקודה הקודמת מוגדרים ערכים לכל תווית שנדרשת על ידי סוג המשאב
uptime-url.OPTIONAL_FLAGS: מגדירים את הדגלים האלה כדי לשנות את ערכי ברירת המחדל. לדוגמה, צריך להגדיר את הדגל
--protocolכשהפרוטוקול הוא לאhttp.
Terraform
כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform. למידע נוסף, ראו את מאמרי העזרה לספקים של Terraform.
כדי ליצור בדיקת זמני פעילות ומדיניות התראות למעקב אחרי הבדיקה הזו:
- מתקינים ומגדירים את Terraform לפרויקט. בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות.
עורכים את קובץ התצורה של Terraform ומוסיפים משאב
google_monitoring_uptime_check_config, ואז מחילים את קובץ התצורה.בדוגמה הבאה מוצגת הגדרה שבודקת כתובת URL ציבורית:
resource "google_monitoring_uptime_check_config" "example" { display_name = "example" timeout = "60s" http_check { port = "80" request_method = "GET" } monitored_resource { type = "uptime_url" labels = { project_id = "PROJECT_ID" host="EXAMPLE.com" } } checker_type = "STATIC_IP_CHECKERS" }בביטוי הקודם:
- PROJECT_ID הוא מזהה הפרויקט. בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות.
- EXAMPLE.com היא כתובת ה-URL של המארח.
אופציונלי: יוצרים ערוץ התראות ומדיניות התראות:
בשלבים הבאים נעשה שימוש במסוף Google Cloud כדי ליצור את ערוץ ההתראות ואת מדיניות ההתראות. הגישה הזו מבטיחה שמדיניות ההתראות תעקוב רק אחרי הנתונים שנוצרו על ידי בדיקת זמני הפעילות.
כדי ליצור ערוץ התראות:
-
נכנסים לדף notifications Alerting במסוף Google Cloud :
אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Monitoring.
- בסרגל הכלים של מסוף Google Cloud , בוחרים את הפרויקט הרלוונטי ב- Google Cloud . בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות.
- בוחרים באפשרות ניהול ערוצי התראות.
- עוברים לסוג הערוץ שרוצים להוסיף, לוחצים על הוספה ומשלימים את תיבת הדו-שיח.
-
כדי ליצור מדיניות התראות:
-
במסוף Google Cloud , עוברים לדף
בדיקת זמני פעילות:
אם משתמשים בסרגל החיפוש כדי למצוא את הדף הזה, בוחרים בתוצאה שכותרת המשנה שלה היא Monitoring.
- בסרגל הכלים של מסוף Google Cloud , בוחרים את הפרויקט הרלוונטי ב- Google Cloud . בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות.
- מאתרים את בדיקת הזמינות, לוחצים על more_vert עוד ואז על הוספת מדיניות התראות.
- בתיבת הדו-שיח, עוברים לקטע Notifications and name, מרחיבים את Notification Channels ובוחרים את האפשרויות הרצויות.
- נותנים שם למדיניות ההתראות ולוחצים על Create policy (יצירת מדיניות).
-
כדי ליצור מדיניות התראות, מוסיפים משאב
google_monitoring_alert_policyלקובץ תצורה ומחילים את התצורה החדשה.
C#
כדי לבצע אימות ב-Monitoring, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Java
כדי לבצע אימות ב-Monitoring, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Go
כדי לבצע אימות ב-Monitoring, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Node.js
כדי לבצע אימות ב-Monitoring, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
PHP
כדי לבצע אימות ב-Monitoring, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Python
כדי לבצע אימות ב-Monitoring, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
Ruby
כדי לבצע אימות ב-Monitoring, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.
REST
כדי ליצור בדיקת זמני פעילות, צריך לבצע קריאה ל-method
projects.uptimeCheckConfigs.create. מגדירים את הפרמטרים של השיטה באופן הבא:parent: חובה. הפרויקט שבו רוצים ליצור את בדיקת זמני הפעילות. בהגדרות של מרכז האפליקציות, בוחרים את פרויקט המארח או את פרויקט הניהול של מרכז האפליקציות. הפורמט של השדה הזה הוא:
projects/PROJECT_IDגוף הבקשה חייב להכיל אובייקט
UptimeCheckConfigלבדיקת הזמינות החדשה. בדף הזה מופיע מידע על כמה שדות. לעיון במסמכי העזרה המלאים בנושא האובייקט הזה והשדות שלו, אפשר לעבור אלUptimeCheckConfig.משאירים את השדה
nameשל אובייקט ההגדרה ריק. המערכת מגדירה את השדה הזה כשהיא בונה את אובייקט הגדרת התגובה.אם אתם מגדירים בדיקת HTTP או HTTPS, אתם צריכים למלא את השדה
HttpCheckשל האובייקטUptimeCheckConfig. באובייקט הזה, מגדירים את השדהrequestMethodכ-GETאו כ-POST. אם השדה הזה לא מופיע או שהערך שלו הואMETHOD_UNSPECIFIED, מתבצעת בקשתGET.אם אתם מגדירים בקשת
POST, עליכם למלא את השדותcontentType,customContentType(אופציונלי) וbody.
השיטה
createמחזירה את האובייקטUptimeCheckConfigשל ההגדרה החדשה.אם הגדרת הזמינות שנוצרה לא פועלת כמצופה, אפשר לעיין בקטע בדיקת כשלים בדף הזה.
יכול להיות עיכוב של עד 5 דקות לפני שהתוצאות של בדיקת הזמינות יתחילו להופיע ב'מעקב'. במהלך הזמן הזה, בלוח הבקרה של בדיקת זמן הפעולה יופיע הסטטוס 'אין נתונים זמינים'.
שימוש בפינגים של ICMP
כדי לעזור לכם לפתור בעיות בבדיקות זמינות ציבוריות שנכשלו, אתם יכולים להגדיר את בדיקות הזמינות כך שישלחו עד 3 פינגים של ICMP במהלך הבדיקה. הפינגים יכולים לעזור לכם להבחין בין כשלים שנגרמים, למשל, מבעיות בקישוריות לרשת, לבין פסק זמן באפליקציה.
כברירת מחדל, בדיקות זמני פעילות לא שולחות פינגים. כל פינג מוסיף זמן אחזור לבדיקת הזמינות. בדיקות זמינות פרטיות לא יכולות לשלוח פינגים.
כשבדיקת זמני פעילות ציבורית נכשלת, התוצאות של הפינגים נכתבות ביומנים של Cloud Logging. אם הפינג נכשל, השדות הבאים מתווספים לשדה
httpRequestברשומה ביומן:-
rtt_usec: זמן הלוך ושוב של כל בקשת פינג לא מוצלחת. -
unreachable_count: מספר בקשות הפינג שהחזירו את קוד הסטטוסICMP_DEST_UNREACH. -
no_answer_count: מספר בקשות הפינג שפג הזמן שלהן ולא הוחזרה תגובה.
התוצאות של פקודות ה-ping לבדיקות זמינות מוצלחות לא נרשמות ביומן.
הגדרת פינגים
כל הגדרה של בדיקת זמינות כוללת אובייקט
HttpCheckאו אובייקטTcpCheck. שני האובייקטים האלה כוללים את השדהpingConfig. בשדה הזה מציינים את מספר הפינגים של ICMP שרוצים לכלול בכל בדיקה, עד 3. כברירת מחדל, לא נשלחים פינגים.כדי להגדיר פינגים, מבצעים אחת מהפעולות הבאות:
כשמשתמשים במסוף Google Cloud , מרחיבים את More target options ומזינים ערך בשדה ICMP Pings.
כשמשתמשים ב-Cloud Monitoring API, צריך להשתמש באובייקט
PingConfig, שיש לו את המבנה הבא:{ "pingsCount": integer }מידע נוסף על שימוש ב-Monitoring API להגדרות של בדיקות זמינות מופיע במאמרים יצירת בדיקת זמינות: API או עריכת בדיקת זמינות: API.
אימות של בדיקת זמני הפעילות
כשיוצרים בדיקת זמינות ב- Google Cloud console, אפשר לבדוק את ההגדרה לפני ששומרים אותה.
בדיקות שבוצעו בהצלחה
בדיקת זמינות מצליחה אם התנאים הבאים מתקיימים:
- סטטוס ה-HTTP תואם לקריטריונים שבחרתם.
- התשובה לא מכילה את התוכן הנדרש, או שהחיפוש של התוכן הנדרש בתשובה הצליח.
בדיקות שנכשלו
אלה כמה מהסיבות האפשריות לכשל בבדיקת זמינות:
- שגיאת חיבור – נדחתה: אם אתם משתמשים בסוג החיבור HTTP שמוגדר כברירת מחדל, צריך לוודא שהתקנתם שרת אינטרנט שמגיב לבקשות HTTP. שגיאת חיבור יכולה להתרחש במופע חדש אם לא התקנתם שרת אינטרנט. אפשר לעיין במדריך למתחילים של Compute Engine. אם אתם משתמשים בסוג החיבור HTTPS, יכול להיות שתצטרכו לבצע שלבי הגדרה נוספים. לפתרון בעיות בחומת האש, אפשר לעיין במאמר בנושא רשימת כתובות ה-IP של שרתי בדיקת הזמינות.
- לא נמצא שם או שירות: יכול להיות ששם המארח שגוי.
403 Forbidden: השירות מחזיר קוד שגיאה לכלי לבדיקת זמינות. לדוגמה, הגדרת ברירת המחדל של שרת האינטרנט Apache מחזירה את הקוד הזה ב-Amazon Linux, אבל היא מחזירה את הקוד 200 (Success) בחלק מגרסאות Linux אחרות. אפשר לעיין במדריך LAMP ל-Amazon Linux או בתיעוד של שרת האינטרנט.
אם מוצגת הודעת השגיאה הזו ויעד הבדיקה של זמן הפעולה הוא שירות Cloud Run, צריך לוודא שיש לכם
run.routes.invokeבשירות הזה.404 לא נמצא: יכול להיות שהנתיב שגוי.
408 בקשה שחורגת מהזמן הקצוב לתפוגה, או ללא תגובה: יכול להיות שמספר היציאה שגוי, שהשירות לא פועל, שהשירות לא נגיש או שהזמן הקצוב לתפוגה קצר מדי. בודקים שחומת האש מאפשרת תעבורה משרתי זמני הפעילות. אפשר לעיין ברשימת כתובות ה-IP של שרתי בדיקת זמני הפעילות. מגדירים את מגבלת הזמן הקצוב לתפוגה באפשרויות של אימות התגובה.
יכול להיות שפסק זמן של בקשה יתרחש בגלל עומס ברשת. לדוגמה, יכול להיות שתבחינו שאחד מהבודקים נכשל אבל כל שאר הבודקים הצליחו בגלל עומס זמני ברשת. אם מדיניות ההתראות שלכם מוגדרת כברירת מחדל, תקבלו התראה רק אם כל הבודקים ייכשלו.
אם בדיקת זמני הפעילות מוגדרת לשליחת פינגים, התוצאות של הפינגים לבדיקות זמני פעילות שנכשלו נכתבות ב-Cloud Logging. מידע נוסף זמין במאמר שימוש בפינגים של ICMP.
המאמרים הבאים
- ניהול בדיקות זמני פעילות
- יצירת מדיניות התראות לבדיקת זמני פעילות
- רשימת כתובות ה-IP של שרתים לבדיקת זמינות
- שרטוט תרשים של מדדים של בדיקת זמינות
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2026-03-05 (שעון UTC).
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["התוכן קשה להבנה","hardToUnderstand","thumb-down"],["שגיאות בקוד לדוגמה או במידע","incorrectInformationOrSampleCode","thumb-down"],["חסרים לי פרטים או דוגמאות","missingTheInformationSamplesINeed","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2026-03-05 (שעון UTC)."],[],[]] -