הדף הזה מתייחס ל-Apigee, אבל לא ל-Apigee Hybrid.
לעיון במסמכי התיעוד של
Apigee Edge
במסמך הזה מפורטות שגיאות נפוצות שעלולות להתרחש כשמתקינים ומגדירים את Apigee, ומוסבר איך לפתור אותן.
יצירת מופע חדש
בקטע הזה מתוארות שגיאות נפוצות ופתרונות אפשריים אחרי שליחת בקשה ל-Apigee ליצירת מופע חדש:
-
401 (UNAUTHENTICATED)מציין שפרטי הכניסה שלכם עברו כנראה פסק זמן. כדאי לנסות לחדש את אסימון ההרשאה, כמו בדוגמה הבאה:AUTH="Authorization: Bearer $(gcloud auth print-access-token)"
-
RANGES_EXHAUSTEDמציין שלא ניתן לספק את טווח כתובות ה-IP שביקשתם בהתחלה, ועליכם לבקש טווח חדש. יצרתם בקשת טווח בשלב 2: הגדרת רשתות.- יצירת משתני הסביבה האלה
- מאמתים את הפרטים של טווחי הכתובות הקיימים ומוודאים שלא תהיה חפיפה עם הטווח החדש.
- כדי לבקש טווח חדש שממנו Apigee בוחר כתובת IP לחיבורים פרטיים לשירותים, מריצים את פקודת gcloud הבאה:
- אימות הפרטים של טווח הכתובות הישן והחדש
- מאמתים את פרטי ה-VPC Peering הקיימים:
- מריצים את הפקודה הבאה כדי לעדכן את בקשת החיבור:
- מאמתים את פרטי ה-VPC Peering הקיימים:
RANGE_NAME_1=YOUR_RANGE_NAME_1 RANGE_NAME_2=YOUR_RANGE_NAME_2 NETWORK_NAME=YOUR_NETWORK_NAME
gcloud compute addresses list --global --project=$PROJECT_ID
gcloud compute addresses describe $RANGE_NAME_1 --global --project=$PROJECT_ID
gcloud compute addresses create $RANGE_NAME_2 --project=$PROJECT_ID --global --prefix-length=16 --description="additional peering range for Google services" --network=$NETWORK_NAME --purpose=VPC_PEERINGהפקודה הזו יוצרת טווח חדש בשם $RANGE_NAME_2.
gcloud compute addresses list --global --project=$PROJECT_ID
gcloud compute addresses describe $RANGE_NAME_1 --global --project=$PROJECT_ID
gcloud compute addresses describe $RANGE_NAME_2 --global --project=$PROJECT_ID
gcloud services vpc-peerings list \ --network=$NETWORK_NAME \ --service=servicenetworking.googleapis.com \ --project=$PROJECT_IDgcloud services vpc-peerings update --service=servicenetworking.googleapis.com --network=$NETWORK_NAME --ranges=$RANGE_NAME_1,$RANGE_NAME_2 --project=$PROJECT_IDgcloud services vpc-peerings list \ --network=$NETWORK_NAME \ --service=servicenetworking.googleapis.com \ --project=$PROJECT_ID
יצירת ארגון Apigee
בדוגמה הבאה מוצגת שגיאה נפוצה ש-Apigee עשוי להציג כשמנסים ליצור ארגון בפעם הראשונה:
Apigee API (staging) has not been used in project 59387731598 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/staging-apigee.sandbox.googleapis.com/overview?project=59387731598 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.
המשמעות היא שאחד או יותר מממשקי ה-API הנדרשים לא מופעלים. בודקים את ממשקי ה-API שמפורטים בשלב 1: הפעלת ממשקי ה-API הנדרשים ומוודאים שכל ממשקי ה-API מופעלים לפני שממשיכים.
בנוסף, יכול להיות שתקבלו אחת משגיאות ה-HTTP הבאות:
-
401 (UNAUTHENTICATED)מציין שפרטי הכניסה שלכם עברו כנראה פסק זמן. כדאי לנסות לחדש את אסימון ההרשאה, כמו בדוגמה הבאה:AUTH="Authorization: Bearer $(gcloud auth print-access-token)"
- הערך
404 (Not Found)יכול להיות התוצאה של הפעולות הבאות:- הזנת נקודת קצה שגויה או כתובת URL שגויה של בקשה. בודקים שציינתם את
apigee.googleapis.comבדומיין של קריאת ה-API. - יכול להיות שהפרויקט שלכם עדיין לא הוקצה. פונים אל מחלקת המכירות של Apigee.
- הזנת נקודת קצה שגויה או כתובת URL שגויה של בקשה. בודקים שציינתם את
- השגיאה
409 (Conflict)בדרך כלל מציינת ששם הארגון שצוין כבר קיים. שמות הארגונים צריכים להיות ייחודיים באופן גלובלי. צריך לבחור שם אחר לארגון ולהפעיל מחדש את הפקודה. (אם יוצרים ארגון בשורת הפקודה, מציינים את השם במטען הייעודי (Payload) של הבקשה. חשוב לזכור שצריך ליצור ארגון עם שם זהה לשם הפרויקט, ולכן זה לא אמור לקרות אלא אם יש טעות הקלדה).
זוהי שגיאה אפשרית ש-Apigee עשוי להחזיר כשבודקים את הסטטוס של בקשה חדשה לארגון:
-
403 (Permission Denied)יכול להצביע על כך שהארגון עדיין לא נוצר. מחכים עוד דקה ומנסים שוב. אם Apigee מחזיר403כשמנסים ליצור את הארגון החדש בפעם הראשונה, יכול להיות שאחד או יותר מממשקי ה-API שלכם לא הופעלו. חשוב לוודא שהפעלתם את כל ממשקי ה-API כמו שמתואר בשלב 1: הפעלת ממשקי ה-API הנדרשים .
פריסת דוגמאות
מאזן העומסים לא תקין
כשפורסים שרת proxy לדוגמה, יכול להיות ש-Apigee יחזיר שגיאת HTTP 502 (Bad Gateway).
במקרה כזה, כדאי לנסות את הפעולות הבאות:
-
בודקים את תקינות מאזן העומסים. בכרטיסייה Load balancer (מאזן עומסים) מוצגים כל מאזני העומסים של הפרויקט והסטטוסים שלהם. משולש צהוב מציין שהשירות לקצה העורפי של מאזן העומסים לא תקין.
במסוף Google Cloud , נכנסים לדף Network services > איזון עומסים.
- אחרי שמאשרים שיש בעיה במאזן העומסים, בודקים את מכונות ה-VM במופע זמן הריצה כדי לוודא שהן פועלות ותקינות.
- בודקים את קובצי היומן כדי לראות אם יש שגיאה או בעיה אחרת שאולי גרמו לבעיה. מידע נוסף על הפעלה של יומנים וצפייה בהם אפשר למצוא במאמר צפייה ביומנים.
- אפשר לנסות לבצע הפעלה מחדש מדורגת בקבוצת המופעים במסוף Cloud:
-
במסוף Google Cloud , נכנסים לדף Compute Engine > Instance groups.
- ברשימת קבוצות המופעים, לוחצים על הקבוצה שלא מגיבה בעמודה Name.
- לוחצים על הפעלה מחדש/החלפה.
- במסך הבא, לוחצים על הפעלה מחדש.
הפעולה הזו תפעיל מחדש את מופע Envoy.
-
כתובת ה-IP של המכונה שגויה
אם בכל שלב תמחקו את מופע Apigee ותיצרו אותו מחדש, כתובת ה-IP של מופע Apigee תשתנה, ויכול להיות שלא תהיה יותר התאמה בינה לבין כתובת ה-IP של נקודת הקצה בתבנית של קבוצת מופעי מכונה מנוהלים (MIG). לדוגמה, בתבנית ה-MIG עדיין תופיע כתובת ה-IP הישנה מהמופע שנמחק. תבנית ה-MIG נוצרה במהלך תהליך ההקצאה של Apigee. במצב כזה, אפשר לנסות את השלבים הבאים כדי לעדכן את תבנית ה-MIG עם כתובת ה-IP הנכונה של Apigee:
במסוף Google Cloud , נכנסים לדף Apigee > Admin > Instances.
- שימו לב לכתובת ה-IP של המכונה. תצטרכו לדעת את כתובת ה-IP הזו בשלב מאוחר יותר.
לדוגמה:
10.117.200.2. נכנסים לדף Instance templates במסוף Google Cloud .
- פותחים את תבנית של הגדרות מכונה. צריך לפתוח את תבנית של הגדרות מכונה שמשמשת את הבק-אנד שממופה למאזן עומסים (LB).
- גוללים למטה כדי למצוא את
ENDPOINTה-IP בקטע Custom metadata (מטא נתונים בהתאמה אישית). - אם כתובת ה-IP של נקודת הקצה שונה מזו שרשמתם בממשק המשתמש של Apigee, עליכם לשנות את כתובת ה-IP של תבנית של הגדרות מכונה כך שתהיה זהה לכתובת ה-IP של מכונת Apigee. מידע על שינוי כתובות IP של מופעים