מוצג המסמך של Apigee Edge.
עוברים אל
מסמכי תיעוד של Apigee X. מידע
מבוא
במהלך פתרון בעיות, ייתכן שתרצו להפעיל ממשקי API ישירות מול רכיבי Apigee כמו נתב או מעבד הודעות. לדוגמה, מומלץ לעשות זאת כדי:
- ניפוי באגים מבעיות שמתעוררות לסירוגין בבקשות API מסוימות, שמצביעות על בעיה ברכיב מסוים של Apigee (מעבד הודעות/נתב).
- תוכלו לאסוף יותר נתוני אבחון על ידי הפעלת מצב ניפוי באגים במופע ספציפי של רכיב Apigee.
- מציינים שהבעיה נגרמת על ידי רכיב ספציפי של Apigee.
- בודקים אם לפעולות כמו הפעלת מכונה חדשה או הפעלה מחדש של המכונה יש את ההשפעה הרצויה.
דרישות מוקדמות
- גישה ישירה לרכיבים של הנתב או של מעבד ההודעות שמהם צריך להריץ בקשות API.
- צריך להתקין את הכלי cURL במופע הספציפי של הרכיב.
בקשת ה-API שרוצים לבדוק בפורמט cURL.
לדוגמה, הנה פקודת
curl
שאפשר להשתמש בה כדי לשלוח בקשה לשרת proxy ל-API מהמחשב המקומי:curl https://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
curl https://myorg-test.mycompany.com/v1/customers
איך להריץ בקשות API ישירות מול נתבים של Apigee
תרחיש 1: בקשות API למארח חלופי שמצביע אל נתבים
אם רשומת ה-DNS של כינוי המארח מוגדרת להצביע אל נתבי Apigee Edge (במילים אחרות, אין Elastic Load Balancer, ELB), אפשר להשתמש בפקודות ה-curl הבאות כדי לשלוח את בקשות ה-API ישירות לנתב:
מארח וירטואלי הוגדר לתקשורת לא מאובטחת דרך יציאה 80
curl -v --resolve HOST_ALIAS:80:127.0.0.1 http://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
לדוגמה:
curl -v --resolve myorg-test.mycompany.com:80:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
המארח הווירטואלי מוגדר לסיים את SSL ביציאה 443 בנתב
curl -v --resolve HOST_ALIAS:443:127.0.0.1 https://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
לדוגמה:
curl -v --resolve myorg-test.mycompany.com:443:127.0.0.1 https://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
תרחיש 2: בקשות API למארח חלופי שמצביע אל ELB
אם רשומת ה-DNS של כינוי המארח מוגדרת כך שתפנה למאזן עומסים אלסטי (ELB), אפשר להשתמש בפקודות ה-curl הבאות כדי לשלוח את בקשות ה-API ישירות לנתב:
מארח וירטואלי הוגדר לתקשורת לא מאובטחת דרך יציאה 80
curl -v --resolve HOST_ALIAS:80:127.0.0.1 http://HOST_ALIAS/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
לדוגמה:
curl -v --resolve myorg-test.mycompany.com:80:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
מארח וירטואלי שהוגדר ליציאה גבוהה ו-SSL מסתיים במאזן עומסים מול נתב Apigee
curl -v --resolve HOST_ALIAS:PORT_NUMBER:127.0.0.1 http:/HOST_ALIAS:PORT_NUMBER/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
לדוגמה:
curl -v --resolve myorg-test.mycompany.com:19001:127.0.0.1 http://myorg-test.mycompany.com/v1/customers -H 'authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
מארח וירטואלי שהוגדר ליציאה גבוהה ו-SSL מסתיים בנתב Apigee
כלומר, מאזן העומסים מוגדר לשימוש בהעברת TCP לנתב Apigee.
curl -v --resolve HOST_ALIAS:PORT_NUMBER:127.0.0.1 https:/HOST_ALIAS:PORT_NUMBER/PROXY_BASE_PATH/ -H 'HEADER: VALUE'
לדוגמה:
curl -v --resolve myorg-test.mycompany.com:19001:127.0.0.1 https://myorg-test.mycompany.com/v1/customers -H 'authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2'
איך להריץ בקשות ישירות מול מעבדי הודעות ב-Apigee
תרחיש 1: בקשת API למעבד הודעות דרך יציאה ברירת המחדל 8998
יציאת ברירת המחדל שבה מעבד ההודעות מאזין לתנועה מנתב Apigee היא 8998. לכן, בכל המקרים שבהם היציאה הזו לא שונתה, צריך לשלוח את התנועה ישירות ליציאה הזו במופע ספציפי של מעבד הודעות, כמו בדוגמה הבאה. יש לשלוח את בקשת ה-curl אל כתובת ה-URL http://INTERNAL_IP_OF_MP:8998
יחד עם הכותרת X-Apigee.Host
עם שם המארח של הערך, כולל היציאה שמשמשת במארחים הווירטואליים, כפי שמוצג בשלוש הדוגמאות הבאות:
המארח הווירטואלי מוגדר לסיום SSL בנתב
curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:443'
לדוגמה:
curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:443'
המארח הווירטואלי מוגדר ל'יציאה גבוהה' וסיום SSL מתרחש במאזן עומסים או בנתב של Apigee:
curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:PORT_NUMBER'
לדוגמה:
curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:19001'
המארח הווירטואלי מוגדר לברירת המחדל של יציאת http 80
curl -v http://INTERNAL_IP_OF_MP:8998/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:80'
לדוגמה:
curl -v http://10.10.53.115:8998/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:80'
תרחיש 2: בקשת API לשליחת הודעות למעבד המידע דרך יציאת SSL 8443
ניתן להגדיר תקשורת SSL בין הנתב למעבד ההודעות. בדוגמאות הבאות נעשה שימוש ביציאה 8443, היציאה המוצעת במסמכי התיעוד של Apigee.
המארח הווירטואלי מוגדר לסיום SSL בנתב
curl -v -k https://INTERNAL_IP_OF_MP:8443/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:443'
לדוגמה:
curl -v https://10.10.53.115:8443/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:80'
המארח הווירטואלי מוגדר לסיום SSL במאזן עומסים, והתנועה מועברת ליציאה גבוהה אל הנתב
curl -v https://INTERNAL_IP_OF_MP:8443/PROXY_BASE_PATH/ -H 'HEADER: VALUE' -H 'X-Apigee.Host: HOST_ALIAS:PORT_NUMBER'
לדוגמה:
curl -v https://10.10.53.115:8443/v1/customers -H 'Authorization: Bearer AxLqyU09GA10lrAiVRQCGXzMi9W2' -H 'X-Apigee.Host: myorg-test.mycompany.com:19001'