הגדרת מארח וירטואלי

Edge for Private Cloud גרסה 4.17.01

מארח וירטואלי ב-Edge מגדיר את הדומיינים ואת יציאות Edge Router שבהן חשוף שרת proxy של API. לחלופין, את כתובת ה-URL שבה אפליקציות משתמשות כדי לגשת לשרת proxy של API. מארח וירטואלי גם מגדיר אם הגישה לשרת ה-proxy של ה-API מתבצעת באמצעות פרוטוקול HTTP, או באמצעות פרוטוקול HTTPS מוצפן.

במסגרת תהליך ההצטרפות ל-Edge, צריך ליצור ארגון, סביבה ומארח וירטואלי. Edge מספקת את הפקודה setup-org כדי להקל על משתמשים חדשים את התהליך.

כשיוצרים את המארח הווירטואלי, צריך לציין את הפרטים הבאים:

  • שם המארח הווירטואלי שבו משתמשים כדי להפנות אליו בשרתי ה-proxy של ה-API.
  • היציאה בנתב של המארח הווירטואלי. בדרך כלל היציאות האלה מתחילות ב-9001 ומצטברות ב-1 לכל מארח וירטואלי חדש.
  • כינוי המארח של המארח הווירטואלי. בדרך כלל זהו שם ה-DNS של המארח הווירטואלי.

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

לדוגמה, אם יצרתם מארח וירטואלי עם כינוי מארח של myapis.apigee.net ביציאה 9001, בקשת cURL ל-API דרך אותו מארח וירטואלי יכולה להשתמש באחד מהטפסים הבאים:

  • אם יש לכם רשומת DNS עבור myapis.apigee.net:

    curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}
  • אם אין לכם רשומת DNS עבור myapis.apigee.net:

    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'

    בטופס הזה מציינים את כתובת ה-IP של המארח.

    הערה: פקודת ה-curl, רוב הדפדפנים ושירותים רבים אחרים מוסיפים באופן אוטומטי את כותרת המארח לדומיין כחלק מהבקשה, וכך תוכלו להשתמש בפקודת curl באופן הבא:


    curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}

אפשרויות כשאין רשומת DNS עבור המארח הווירטואלי

אם אין רשומת DNS, אפשרות אחת היא להגדיר את כינוי המארח לכתובת ה-IP של הנתב והיציאה של המארח הווירטואלי, באופן הבא: <routerIP>:port. לדוגמה:

192.168.1.31:9001

לאחר מכן יוצרים פקודת curl בטופס הבא:

curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} 

האפשרות הזו מועדפת כי היא פועלת היטב בממשק המשתמש של Edge.

אם יש כמה נתבים, ניתן להוסיף כינוי מארח לכל נתב, ולציין את כתובת ה-IP של כל נתב ויציאה של המארח הווירטואלי.

לחלופין, אפשר להגדיר את הכינוי למארח לערך, כמו temp.hostalias.com. לאחר מכן, צריך להעביר את הכותרת Host (מארח) בכל בקשה:

curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path}  -H 'host: temp.hostalias.com'

לחלופין, הוסיפו את כינוי המארח לקובץ /etc/hosts. לדוגמה, מוסיפים את השורה הבאה אל /etc/hosts:

192.168.1.31   temp.hostalias.com

לאחר מכן אפשר לשלוח בקשה כאילו הייתה רשומת DNS:

curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}

שימוש ביציאה מוגנת במארח וירטואלי

אם רוצים ליצור מארח וירטואלי שמקשר את הנתב ליציאה מוגנת, כמו מספרי יציאות שנמוכים מ-1024, צריך להגדיר את הנתב כך שיפעל כמשתמש עם גישה ליציאות האלה. כברירת מחדל, הנתב פועל בתור משתמש apigee שאין לו גישה ליציאות עם הרשאות.

כדי להפעיל את הנתב כמשתמש אחר:

  1. יוצרים את הקובץ /opt/apigee/etc/edge-router.d/RUN_USER.sh בתור בסיס.
  2. מוסיפים את הרשומה הבאה לקובץ:
    RUN_USER=root
    אם לא רוצים להריץ את הנתב בתור בסיס, יש לציין משתמש עם גישה ליציאה.
  3. שומרים את הקובץ.
  4. אם ציינתם משתמש שהוא לא root, שנו את הבעלים של הקובץ למשתמש הזה:
    > chown USER:USER /opt/apigee/etc/edge-router.d/RUN_USER.sh
  5. מפעילים מחדש את הנתב:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router הפעלה מחדש