שאלות נפוצות בנושא Edge Microgateway

אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X.
מידע

תחילת העבודה

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

פעולה

אילו שינויים ב-Edge מחייבים הפעלה מחדש של Edge Microgateway?
‫
Edge Microgateway מבצע באופן אוטומטי סקר כדי לזהות שינויים שבוצעו ב-Apigee Edge, כמו שינויים בשרתי proxy שמודעים ל-microgateway, במוצרים או באפליקציות של מפתחים. מרווח הזמן שמוגדר כברירת מחדל בין בדיקות הוא 600 שניות, אבל אפשר לשנות אותו באמצעות הגדרת התצורה config_change_poll_interval. מאפייני edgemicro
אם אתם לא רוצים לחכות לפרק הזמן בין סקרים, אתם יכולים להשתמש בפקודה edgemicro reload כדי לאחזר את השינויים האחרונים. מידע נוסף מופיע במאמר בנושא טעינה מחדש של אשכול מיקרו-שערים.
איך מבדילים בין שרת proxy שמוטמע ב-Edge לבין שרת proxy ב-Edge Microgateway?
כשמגדירים את Edge Microgateway, רשימה של שרתי proxy שמודעים ל-microgateway שנפרסו ב-Apigee Edge מורדת להגדרה המקומית של Edge Microgateway. שמות של שרתי proxy עם תמיכה ב-Microgateway מתחילים בקידומת edgemicro_.
מהן האפשרויות שלי לרישום ביומן באמצעות Edge Microgateway?
ל-Edge Microgateway יש תכונת רישום מובנית. פרטים נוספים מופיעים במאמר בנושא ניהול קובצי יומן.
אפשר גם לכתוב תוסף בהתאמה אישית כדי להשתמש בשירות רישום ביומן של צד שלישי עם Edge Microgateway. בגלל האופן שבו Edge Microgateway פועל, אי אפשר להשתמש במדיניות של רישום הודעות ב-Apigee Edge כדי לרשום הודעות ב-Edge Microgateway. אפשר גם לעיין במאמר הקהילה בנושא תוסף רישום ביומן ל-Microgateway.
האם אפשר להשתמש שוב בשילובי מפתח/סוד בין מופעים של Edge Microgateway?
כל עוד הארגון והסביבה זהים עבור מופעי Microgateway, אפשר לעשות שימוש חוזר בצמד המפתח/הסוד שנוצר במהלך ההגדרה.
איך מגדירים את Edge Microgateway כך שיפעל בסביבת ייצור?
אפשר להגדיר את משתני הסביבה לפרמטרים של פקודת ההפעלה, כמו EDGEMICRO_KEY,‏ EDGEMICRO_SECRET,‏ EDGEMICRO_ORG ו-EDGEMICRO_ENV. בעזרת המשתנים האלה (ועוד משתנים אחרים) אפשר להפעיל את Edge Microgateway באמצעות הפקודה edgemicro start. אפשר לעיין גם במאמר הגדרת משתני סביבה.
האם אפשר להשתמש במאפייני מוצר או במאפייני אפליקציה מותאמים אישית של מפתחים עם Edge Microgateway?
לא. כברירת מחדל, Edge Microgateway פועל רק על מאפיינים שקשורים לניתוב בסיסי ולאבטחה. עם זאת, יש אפשרות לעקוף את הבעיה:
  1. הוספת מאפיינים מותאמים אישית ל-edgemicro-auth proxy ש-Edge Microgateway פורס ב-Apigee Edge. המאפיינים האלה יהיו זמינים כשמשתמשים באבטחת מפתח API או באבטחת טוקן OAuth.
  2. משנים את פלאגין OAuth כך שיפעל על המאפיינים האלה.
האם יש מגבלה על גודל כותרת הבקשה?
אם משדרגים את Node.js לגרסה v8.14.0 או לגרסה מאוחרת יותר, חשוב לדעת שהגודל המקסימלי של הכותרת שמותר בבקשות צומצם מ-80KB ל-8KB. כותרות שגדולות מ-8KB גורמות לשגיאת HTTP 431.
אפשרות הגדרה של Node.js שנוספה ב-Node.js v11.6.0 מאפשרת לשנות את גודל הכותרת המקסימלי שמוגדר כברירת מחדל. הפרמטר הזה, --max-http-header-size, מאפשר לציין את הגודל המקסימלי של כותרות HTTP, בבייטים.
כדי לשנות את הגדרת ברירת המחדל, מגדירים את הערך של משתנה הסביבה NODE_OPTIONS בשורת הפקודה באופן הבא:
NODE_OPTIONS=--max-http-header-size=NUM_BYTES

לדוגמה:

NODE_OPTIONS=--max-http-header-size=80000

באילו ממשקי API לניהול משתמש Edge Microgateway?

הפקודות הבאות של Edge Microgateway קוראות לממשקי הניהול של Apigee Edge כדי לבצע את הפעולות שלהן, כמו שמתואר ב הפניה ל-CLI של Edge Microgateway:

  • edgemicro configure
  • edgemicro upgradeauth
  • edgemicro upgradekvm
  • edgemicro rotatekey
  • edgemicro cert check
  • edgemicro cert delete
  • edgemicro cert install

בקטעים הבאים מפורטות הקריאות ל-Management API שכל פקודה משתמשת בהן.

הפקודות edgemicro configure ו-upgradeauth שולחות קריאה לממשקי ה-API לניהול הבאים:

  • (רשימת פריסות) GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/deployments
  • (קבלת פרטי פריסה) GET: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=java&name=micro-gateway-products-javacallout-2.0.0.jar
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=adjust-quota.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-jwk.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=generate-verify-jwt.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jsrsasign-all-min.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=jwt-initialization.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-jwk-response.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-product-list.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=send-public-key.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-jwt-variables.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-quota-variables.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=set-response.js
  • (העלאת משאבים) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/resources?type=jsc&name=validate-params.js
  • (create api proxy) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis?action=import&validate=false&name=edgemicro-auth
  • (מדיניות העלאה) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/policies
  • (העלאת שרתי proxy) POST: https://api.enterprise.apigee.com/v1/o/[org]/apis/edgemicro-auth/revisions/1/proxies?name=default
  • (deploy proxy) POST: https://api.enterprise.apigee.com/v1/o/[org]/e/[env]/apis/edgemicro-auth/revisions/1/deployments

הפקודה upgradekvm קוראת ל-Management API הבא:

  • PUT: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

הפקודה rotatekey קוראת ל-Management API הבא:

  • GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway/entries/private_key

הפקודה cert check קוראת ל-Management API הבא:

  • GET: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

הפקודה cert delete קוראת ל-Management API הבא:

  • DELETE: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps/microgateway

הפקודה cert install קוראת ל-Management API הבא:

  • POST: https://api.enterprise.apigee.com/v1/organizations/[org]/environments/[env]/keyvaluemaps

פריסה

האם אפשר לפרוס את Edge Microgateway באותו שרת שבו פועל שירות היעד שלי?
כן. Edge Microgateway הוא תהליך קל משקל שיכול לפעול קרוב לשירות היעד, כולל באותה מכונה.
האם אפשר לפרוס חבילת Edge proxy קיימת כפריסת Edge Microgateway?
לא. לשרתי proxy שמודעים ל-Edge Microgateway יש דרישות ספציפיות, והם לא תומכים בכל התכונות של שרתי proxy רגילים של Edge. חלק 2: יצירת ישויות ב-Apigee Edge
האם אפשר להפעיל יתירות כשל בין פריסת חבילת Edge proxy לבין פריסת Edge Microgateway לאותו proxy ל-API?
לא. Edge Microgateway לא יודע על פריסות של proxy ל-API שאינן microgateway ב-Apigee Edge.
מהו מודל הפריסה של זמינות גבוהה (HA) עבור Edge Microgateway?
במאמר Managing APIs with Apigee Edge Microgateway and NGINX מוסבר איך להפעיל את Edge Microgateway באמצעות NGINX כמאזן עומסים.
באילו מאזני עומסים אפשר להשתמש עם Edge Microgateway?
אפשר להשתמש ב-Edge Microgateway עם כל מאזן עומסים.
האם יש הגבלה על מספר שרתי ה-proxy של Edge Microgateway שאפשר לפרוס?
אפשר לעיין במגבלות על הגדרת מוצרים שצוינו עבור פרוקסי רגילים של Edge. מספר ה-proxies שמודעים ל-microgateway שאפשר לפרוס בארגון ובסביבה של Apigee Edge ולקרוא להם דרך Edge Microgateway חייב להיות בהתאם לאותן מגבלות.
האם אפשר לשייך את הפריסה של Edge Microgateway לארגון ולסביבה ספציפיים?
כשמגדירים מופע של Edge Microgateway, צריך לשייך אותו לארגון ולסביבה ספציפיים של Edge.
האם אפשר לשייך את הפריסה של Edge Microgateway לאזור ספציפי (אם אני לקוח במספר אזורים)?
‫
Edge Microgateway בוחר באופן אוטומטי את האזור הטוב ביותר לאינטראקציה שלו עם Apigee Edge. אפשר לפרוס מופעים של Edge Microgateway בכל אזור שרוצים לספק לו שירות.

ניהול

האם צריך להיות אדמין בארגון כדי להגדיר ולפרוס את Edge Microgateway?
כן. כדי להגדיר ולפרוס את Edge Microgateway, צריך להיות לכם פרטי כניסה של מנהל חשבון ארגוני.
צריך להיות אדמין בארגון כדי להריץ את Edge Microgateway?
לא. Edge Microgateway היא אפליקציהNode.js, וכל מי שיש לו הרשאה להפעיל אפליקציות כאלה במחשב מסוים יכול להפעיל אותה.
האם כל המשתמשים בארגון שלי יכולים להשתמש ב-Edge Microgateway?
לא צריך להיות משתמש בארגון Apigee Edge כדי לבצע קריאות ל-API דרך Edge Microgateway. עם זאת, כדי ליצור או לשנות שרתי proxy שמודעים ל-Edge Microgateway ומוצבים ב-Edge, צריך הרשאות ברמת הארגון.

ביצועים

מהם שיקולי הביצועים לשימוש ב-Edge Microgateway?
אם מריצים את Edge Microgateway במיקום משותף עם אפליקציית היעד, צריך לוודא שלשרת יש מספיק קיבולת.
מהן השיטות המומלצות להפעלת Edge Microgateway בקנה מידה גדול?
מומלץ להריץ כמה מופעים של Edge Microgateway בשרתים שונים, שמוצבים לפני מאזני עומסים כמו NGINX. אפשר לקרוא גם את המאמרים ניהול ממשקי API באמצעות Apigee Edge Microgateway ו-NGINX ו שינוי גודל אנכי ואופקי בקהילת Apigee.
מהו ה-TPS של Edge Microgateway כברירת מחדל, ומהן דרישות החומרה שנדרשות למופע של Microgateway
קשה לאמוד את דרישות החומרה ואת מדידות ה-TPS באמצעות Edge Microgateway. זה תלוי בהגדרה שלכם, שהיא שילוב של כוונון Edge Microgateway, שימוש בתוספים, תוספים בהתאמה אישית והגדרת דברים אחרים כמו TLS. בדרך כלל, Apigee ממליצה להבין את השילוב הזה של פריטים ולבצע בדיקות ביצועים עם ההגדרה הספציפית שלכם.

פריסה בענן פרטי

האם Edge Microgateway פועל עם Edge for Private Cloud?
כן. פרטים נוספים מופיעים במאמר שלבים להגדרת Apigee Private Cloud.

פלאגינים

איך נאכפת מכסת השימוש ב-Edge Microgateway?
אפשר להוסיף תוסף מכסה למופע של Edge Microgateway. פרטים נוספים זמינים במאמר בנושא שימוש בתוסף Quota.
איך נאכף Spike Arrest עם Edge Microgateway?
אפשר להוסיף תוסף לעצירת עליות פתאומיות בשימוש למופע של Edge Microgateway. פרטים נוספים זמינים במאמר בנושא שימוש בתוסף למניעת עליות פתאומיות.
האם יש דרכים אחרות לכתוב פלאגינים ל-Edge Microgateway מלבד Node.js?
לא. תוספים חייבים להיכתב ב-Node.js.
מה קורה כש-Edge Microgateway לא מצליח להעלות נתונים של Analytics ל-Edge?
‫
Edge Microgateway כולל מאגר זמני בזיכרון. אם המאגר מתמלא, המערכת משמיטה נתונים ישנים כדי לאפשר לתנועת הנתונים ב-API לזרום בצורה חלקה.
אפשר להוסיף מדיניות ל-Edge Microgateway?
אם מצרפים מדיניות רגילה של Apigee Edge לשרתי proxy שמזהים מיקרו-שערים ב-Apigee Edge, המערכת מתעלמת מהמדיניות הזו. במקום זאת, Edge Microgateway משתמש בתוספים כדי לספק פונקציונליות דומה לזו של כללי מדיניות ב-Edge, כמו מכסת שימוש, מניעת עליות פתאומיות בנפח התנועה, אבטחת מפתח API ואבטחת OAuth2. אפשר גם לכתוב פלאגינים בהתאמה אישית. מידע נוסף זמין במאמרים שימוש בתוספים ופיתוח תוספים בהתאמה אישית.

בפוסטים ובבלוגים הבאים בקהילת Apigee מפורטים תרחישי שימוש נוספים בתוספים:

אבטחה

איך מגינים על משאב /products?
סקירה כללית
כשמגדירים את Edge Microgateway, מתבצע פריסה של proxy ל-API בשם edgemicro-auth בסביבת הארגון ב-Apigee Edge. ה-proxy הזה חושף נקודת קצה (endpoint) /products שמחזירה רשימה של מוצרי API. אם התקנתם את Edge Microgateway ב-5 באוקטובר 2018 או לפני כן, מומלץ לנקוט צעדים כדי להגן על נקודת הקצה הזו, כי התשובה מכילה את כתובת האימייל של המפתח שיצר ושינה את מוצרי ה-API בארגון Apigee שלכם.
כדי להגן על נקודת הקצה, אפשר לשדרג את Edge Microgateway או להגדיר פרוטוקול TLS הדדי. שתי האפשרויות האלה מתוארות בהמשך.
בודקים אם נקודת הקצה /products מוגנת

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

אפשרות 1: שדרוג Edge Microgateway

אם התקנתם את Edge Microgateway בתאריך 5 באוקטובר 2018 או לפני כן, Apigee ממליצה לשדרג לגרסה העדכנית ביותר של Edge Microgateway. פועלים לפי השלבים במאמר בנושא שדרוג Edge Microgateway אם יש חיבור לאינטרנט.

אם אין אפשרות לשדרג בשלב הזה, עוברים לאפשרות 2.

אפשרות 2: הגדרת TLS דו-צדדי

אם אין לכם אפשרות לשדרג את Edge Microgateway כרגע, Apigee ממליצה להגן על התקשורת בין Edge Microgateway לבין ה-proxy של edgemicro-auth באמצעות TLS הדדי (mTLS, שנקרא גם TLS דו-כיווני).

  1. פותחים את הקובץ $HOME/.edgemicro/org-env-config.yaml. אם אתם לא מוצאים את הקובץ הזה, כדאי לעיין במאמר איפה מותקן Edge Microgateway.
  2. מוסיפים את הבלוק tlsOptions הבא לקובץ org-env-config.yaml כדי להפעיל TLS דו-כיווני בין Edge Microgateway לבין Apigee Edge:
    edge_config:
      bootstrap: >-
        https://domain/edgemicro/bootstrap/organization/org/environment/env
      jwt_public_key: 'https://domain/edgemicro-auth/publicKey'
      managementUri: 'https://api.enterprise.apigee.com'
      tlsOptions:
        agentOptions:
          requestCert: true
          cert: 'path/to/cert'
          key: 'path/to/key'

    לדוגמה:

    tlsOptions:
      agentOptions:
        requestCert: true
        cert: '/Users/jdoe/twowayssl/ssl/client.key'
        key: '/Users/jdoe/twowayssl/ssl/ca.crt'

    אפשר גם לכלול את הפרמטרים האופציונליים הבאים של agentOptions:

    • ‫ca: מציין את הנתיב לרשות האישורים.
    • ‫pfx: כוללים אם רוצים להשתמש בקובץ p12/pfx במקום בקובץ cert ובקובץ key.
    • ‫passphrase: סיסמת הגישה לקובץ pfx.
    • ‫ciphers: מציין הצפנות TLS.
  3. מוודאים ש-TLS הדדי מופעל במארח הווירטואלי שבו פרוקסי edgemicro-auth נפרס. פרטים נוספים זמינים במאמר הגדרת מארח וירטואלי ל-TLS דו-כיווני במסמכי התיעוד של Apigee Edge.

    צילום המסך הבא מראה איך להפעיל פרוטוקול TLS הדדי במארח וירטואלי בממשק המשתמש של Apigee Edge:

  4. בודקים את edgemicro-auth API proxy בממשק המשתמש של Edge ומוודאים שהמארח הווירטואלי הנכון מצוין בהגדרות של ה-proxy. לדוגמה, אם יצרתם מארח וירטואלי עם TLS בשם mutualtls, קטע ה-stanza של ה-proxy‏ HTTPProxyConnection צריך להיראות כך:
    <HTTPProxyConnection>
        <BasePath>/edgemicro-auth</BasePath>
        <Properties/>
        <VirtualHost>mutualtls</VirtualHost>
    </HTTPProxyConnection>
מוודאים שהמשאב /products מוגן
בקטע הזה מוסבר איך לבדוק אם המשאב /productsמוגן. חשוב לבצע את הבדיקה הזו אחרי שמשלימים את השלבים (אפשרות 1 או אפשרות 2) כדי להגן על המשאב. אפשר לעשות את זה באמצעות cURL, למשל:
curl -v https://your_domain/edgemicro-auth/products
אם אתם רואים תגובה כמו אחת מהדוגמאות הבאות, נקודת הקצה /products מוגנת:
{
  "error":"unauthorized",
  "error_description": "authentication failed"
}

או

curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

אם אתם רואים תגובה שנראית כך, סימן שהמשאב /products לא מוגן ואימיילים של מפתחים יכולים להיחשף:

{
   "apiProduct":[
      {
         "apiResources":[
            "/",
            "/**"
         ],
         "approvalType":"auto",
         "attributes":[

         ],
         "createdAt":1537374680948,
         "createdBy":"jdoe@foo.com",
         "description":"",
         "displayName":"mock",
         "environments":[
            "test"
         ],
         "lastModifiedAt":1537374680948,
         "lastModifiedBy":"test@test.com",
         "name":"mock",
         "proxies":[
            "edgemicro-auth",
            "edgemicro_mock"
         ],
         "quota":"null",
         "quotaInterval":"null",
         "quotaTimeUnit":"null",
         "scopes":[
            ""
         ]
      }
   ]
}

ב-Apigee מומלץ גם לבדוק את המארח הווירטואלי של HTTP:

לדוגמה:

curl -v http://your_domain/edgemicro-auth/products

אם קריאת ה-cURL מחזירה את רשימת מוצרי ה-API, יכול להיות שכתובות האימייל של המפתחים נחשפות. אם לא רוצים לחשוף את נקודת הקצה עם המארח הווירטואלי הזה שאינו TLS, צריך להסיר אותו מההגדרה של edgemicro-auth HTTPProxyConnection.

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

איך אפשר לחדש אסימון גישה שתוקפו פג?

בשלב הזה, אי אפשר לחדש את אסימון ה-JWT עבור מופע נתון של Edge Microgateway.

פתרון עקיף:

לכל אסימון JWT יש מאפיין exp שמציין את תאריך התפוגה של האסימון. אפליקציה יכולה לחשב את זמן התפוגה ולבקש טוקן חדש על ידי שליחת קריאה ל-API ישירות לנקודת הקצה של הטוקן edgemicro-auth. לדוגמה, אפשר לבצע קריאה ל-API באופן הבא:

POST https: //{your_org}-{your_env}.apigee.net/edgemicro-auth/token

‫… עם תוכן JSON כזה:

{ "client_id": {your_id}, "client_secret": {your_secret}, "grant_type": "client_credentials" }

ראה גם:

הגדרת SSL ב-Windows
אם אתם מריצים Edge Microgateway ב-Windows, צריך להתקין את OpenSSL במחשב ולהוסיף אותו לנתיב. לא כל מכונות Windows נשלחות עם OpenSSL. מידע על הורדה והתקנה של OpenSSL זמין במסמכי התיעוד של OpenSSL.
האם אפשר לאשר גישה למשאבי API באמצעות מוצר ה-API שמשויך לשרת proxy עם מודעות ל-Edge Micro?

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

לדוגמה:

  1. יוצרים שרת proxy עם הקידומת edgemicro_, נתיב בסיס ויעד.
  2. מוסיפים את ה-proxy הזה למוצר. נקרא לו edgemicro-prod1.
  3. כשמתבצעת קריאה ל-API דרך Edge Microgateway באמצעות מפתח API או אסימון OAuth, ‏ Edge Microgateway בודק אם נתיב הבסיס של ה-API תואם לנתיב הבסיס של שרת ה-proxy‏ edgemicro_* שאושר לרשימת המוצרים שאושרו למפתח או לאסימון הזה.

אפשר גם לעיין ב When using the edgemicro gateway in the products which url needs whitelisting in the products used under resources? בקהילת Apigee.

האם אפשר להשתמש באישור SSL מותאם אישית עם Edge Microgateway?

בשלב הזה יש תמיכה רק באישור ה-SSL שמוגדר כברירת מחדל ב-Apigee cert. בשלב הזה אין תמיכה באישורים מותאמים אישית של SSL.

פתרונות עקיפים:

אם רוצים להשתמש באישור SSL בהתאמה אישית (לא ברירת המחדל של Apigee), יש כמה אפשרויות:

  • משתמשים בנקודת קצה jwt_public_key שאינה SSL. משנים את קובץ התצורה של Edge Microgateway כדי להשתמש ב-http://{org}-{env}.apigee.net/edgemicro-auth/publicKey – או –
  • לפני שמפעילים את Edge Microgateway, מגדירים את משתנה הסביבה הזה: export NODE_TLS_REJECT_UNAUTHORIZED ="0"

אפשר לעיין גם במאמר Verify Edge Micro install errors on SSL cert בקהילת Apigee.

האם אפשר להימנע משימוש בחשבונות אדמין של הארגון עם Edge Microgateway?
סקריפט ההגדרה של Edge Microgateway פורס edgemicro-auth שרת proxy ב-Edge, והפריסה הזו דורשת פרטי כניסה של אדמין בארגון.
אבל אחרי הפריסה הראשונית הזו, אמורה להיות לכם אפשרות לבצע את ההגדרה והקביעה של שאר ההגדרות בלי שתצטרכו פרטי כניסה של אדמין הארגון. אפשר לעיין גם בפוסט הזה לקהילה בנושא פרטי כניסה של מנהל חשבון ארגוני.
האם אפשר להשתמש בטוקן OAuth משלי עם Edge Microgateway?

אפשר להשתמש בטוקן משלכם, אבל קודם צריך להשבית את ההרשאה המובנית עבור Edge Microgateway. לשם כך:

  1. פותחים את קובץ ההגדרות של Edge Microgateway.
  2. משנים את שתי הגדרות ה-OAuth ל-true, באופן הבא:

    oauth:
        allowNoAuthorization: true
        allowInvalidAuthorization: true
מופיעה לי הודעת השגיאה "הגישה נדחתה" כשאני מפעיל את Edge Microgateway
אם מופיעה שגיאת דחיית גישה כשמפעילים את Edge Microgateway באמצעות הפקודה הבאה:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
יכול להיות שהמפתח והסוד לא תקפים מסיבה כלשהי. הפעולה המומלצת היא ליצור מחדש את המפתח והסוד באמצעות הפקודה edgemicro genkeys.

בדיקה וניפוי באגים

איך אפשר למנוע שגיאות מסוג 'יותר מדי קבצים פתוחים' במהלך בדיקות עומס?

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

לצורך בדיקות והשוואות, מומלץ להגדיר את הפקודה ulimit של המערכת ללא הגבלה: ulimit -n unlimited. אפשר לעיין גם במאמר Edge Microgateway error during load testing בקהילת Apigee.

טיפים לפיתוח מהיר וניפוי באגים

אם אתם מפתחים תוספים ל-Edge Microgateway, יכול להיות שתגלו שהתמיכה בפיתוח מהיר מוגבלת.

בינתיים, הנה כמה טיפים:

  • כדי להפעיל את Edge Microgateway, אפשר להגדיר את משתני הסביבה EDGEMICRO_KEY ו-EDGEMICRO_SECRET לזוג המפתח/הסוד שנדרש על ידי פקודת ההפעלה של Microgateway. כך תוכלו להפעיל את Edge Microgateway בלי להזין את המפתח או הסוד בשורת הפקודה. אפשר לעיין גם במאמר הגדרת משתני סביבה במסמכי התיעוד של Edge Microgateway.
  • מפעילים את Edge Microgateway במצב DEBUG כדי לראות פלט נוסף בטרמינל של הפקודה: DEBUG=* edgemicro start -o [org] -e [env] -k [key] -s [secret]

עסקים ורישוי

מה הקשר בין מודלי התמיכה של Apigee-127 ו-Edge Microgateway?

‫Apigee-127 הוא פרויקט תוכנה בקוד פתוח שנתמך במודל קוד פתוח. כלומר, אתם יכולים להעלות בעיות בפרויקט GitHub ולשלוח בקשת משיכה אם אתם מנסים לתקן משהו. ‫Apigee-127 לא מחייב או כולל הסכמי רישוי תוכנה עם Apigee.

לעומת זאת, Edge Microgateway הוא מוצר Enterprise שנתמך על ידי Apigee עבור לקוחות Apigee. כלומר, לקוחות Apigee יכולים ליצור כרטיסי תמיכה, בקשות להוספת תכונות ודוחות על באגים באמצעות התמיכה של Apigee Edge ב-Google Cloud.