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

Edge for Private Cloud גרסה 4.17.05

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

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

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

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

לדוגמה, בקובץ תצורה שמועבר לפקודה setup-org, צריך לבצע את הפעולות הבאות: יכול לציין את המידע הזה בתור:

# Specify virtual host information.
VHOST_PORT=9001
VHOST_NAME=default

# If you have a DNS entry for the virtual host.
VHOST_ALIAS=myapis.apigee.net

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

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

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

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

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

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

    הערה: פקודת cURL, רוב הדפדפנים ותוכניות שירות רבות אחרות באופן אוטומטי מוסיפים את הכותרת Host (מארח) עם הדומיין כחלק מהבקשה, כך שאפשר להשתמש בפקודת cURL בצורה:

    תפס http://<routerIP>:9001/{proxy-base-path}/{resource-path}

אפשרויות כשאין DNS כניסה למארח הווירטואלי

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

VHOST_ALIAS=192.168.1.31:9001

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

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

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

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

# Specify the IP and port of each router as a space-separated list enclosed in quotes:
# VHOST_ALIAS="192.168.1.31:9001 192.168.1.32:9001"

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

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}

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

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

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

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