אתם מציגים את מסמכי התיעוד של Apigee Edge.
כניסה למסמכי העזרה של Apigee X. info
באמצעות Hosted Targets אפשר להריץ אפליקציות Node.js בסביבת זמן ריצה מקורית שמתארחת ב-Apigee. המטרה של Hosted Targets היא פשוטה: לאפשר לכם לפרוס אפליקציות בסביבה טבעית, מאובטחת, ניתנת להתאמה ומבודדת, שבה שרתי proxy של Edge API יכולים לקרוא להן כשירותי יעד.
כפי שמוצג באיור הבא, שרת proxy של Edge API קורא לאפליקציית Node.js שנפרסה בסביבת היעדים המתארחים. חשוב לזכור שהסביבה של Hosted Targets מוגדרת ברמת הארגון ב-Apigee:environment.
כדי לקבל שרת proxy של Edge API כדי לדבר עם אפליקציית Hosted Targets שנוצרה ופרוסה בצורה תקינה, צריך להגדיר הגדרה פשוטה בנקודת הקצה (Target Endpoint) של שרת ה-proxy. כדי להתחיל, אפשר לעיין במדריכים בנושא יעדי אירוח.
אילו סביבות זמן ריצה של אפליקציות נתמכות ב-Hosted Targets?
נכון לעכשיו, אפשר לפרוס אפליקציות Node.js רק ליעדים מתארחים.
התקנת מטרות עסקיות מתארחות
היעדים המתארחים זמינים בכל הארגונים הציבוריים בענן של Edge. כדי להשתמש ביעדים מתארחים, לא צריך להתקין שום דבר.
איך מוודאים שהיעדים המתארחים מופעלים
כדי לוודא שהיעדים המתארחים בארגון שלך מופעלים, צריך לקבל את פרטי הארגון ולוודא שהנכס features.isEdgeFunctionsEnabled
מוגדר כ-True. הנכס הוא לקריאה בלבד.
לדוגמה:
https://api.enterprise.apigee.com/v1/organizations/myorg
{ "createdAt":1507572884047, "createdBy":"jdoe@apigee.com", "displayName":"myorg", "environments":[ "prod", "dev", "test", "portal" ], "lastModifiedAt":1507578673194, "lastModifiedBy":"jdoe@apigee.com", "name":"jdoe", "properties":{ "property":[ { "name":"features.isSmbOrganization", "value":"false" }, { "name":"self.service.virtual.host.enabled", "value":"true" }, { "name":"features.isCpsEnabled", "value":"true" }, { "name":"features.isEdgeFunctionsEnabled", "value":"true" } ] }, "type":"paid" }
מה צריך לדעת על יעדים מתארחים
מטרות עסקיות מתארחות מאפשרות לאפליקציות של Node.js לפעול בסביבה מקומית שלא תלויה בטכנולוגיה זמן ריצה ספציפית של Apigee. אפשר לנפות באגים ולבדוק את האפליקציה באופן מקומי לפני שפורסים אותה, והגרסה שנפרסה תפעל בדיוק כפי שהיא פועלת באופן מקומי. בזמן הפריסה, אפשר לבחור כל גרסה של סביבת זמן הריצה של האפליקציה להרצת האפליקציה ב-Hosted Targets. לדוגמה, אפשר לבחור להריץ אפליקציית Node.js בסביבה v8.10.0.
מגבלות
למגבלות השימוש ביעדים מתארחים, ראו מגבלות על מוצרי Apigee.
השלבים הבסיסיים שצריך לבצע
אם אתם מכירים פיתוח שרת proxy של Edge, תוכלו להשתמש ביעדים מתארחים בקלות רבה. בעיקרון, יוצרים, פורסים ומנהלים שרתים proxy של Edge ליעדים מתארחים בדיוק כמו שעובדים עם כל שרת proxy אחר של Apigee Edge.
כדי להשתמש ביעדים מתארחים, צריך לבצע את המשימות הבאות. במדריכים מוסבר בהרחבה על כל אחת מהמשימות האלה.
- פיתוח ובדיקה של אפליקציות Node.js באופן מקומי.
- יוצרים קובץ מניפסט בתיקיית השורש של פרויקט האפליקציה. המניפסט הוא קובץ YAML שמציין את המידע הנדרש כדי ליצור ולפרוס את האפליקציה.
- מוסיפים את האפליקציה לשרת ה-proxy של Edge כסוג משאב מאוחסן.
- מוסיפים תג
<HostedTarget/>
ריק בנקודת הקצה של שרת ה-proxy. התג הזה מורה ל-Edge לפרוס את האפליקציה Node.js בסביבת Hosted Targets. לדוגמה:
<?xml version="1.0" encoding="UTF-8"?> <TargetEndpoint name="default"> <PreFlow name="PreFlow"> <Request /> <Response /> </PreFlow> <PostFlow name="PostFlow"> <Request /> <Response /> </PostFlow> <Flows /> <HostedTarget /> </TargetEndpoint>
היקף האפליקציות של Hosted Targets
אפליקציות היעדים המתארחים בהיקף של סביבת הארגון של Edge. היקף ההרשאה הזה זהה להיקף של כל שרת proxy של Edge.
האם לאפליקציות של Hosted Targets יש גישה לנתוני שרת proxy?
לאפליקציות של Hosted Targets אין כרגע גישה לסביבת זמן הריצה של שרת ה-proxy. המשמעות היא שלא ניתן לגשת למשתני זרימה, למטמון ולישויות אחרות ישירות מאפליקציות של יעדים מתארחים.
באמצעות Node.js מוטמע (התמיכה המסורתית של Node.js המבוססת על Trireme ב-Edge), אפשר להשתמש ב-apigee-access כדי לגשת למשתני זרימה ולישויות אחרות ב-Edge. עם זאת, היעדים המתארחים לא תומכים במודול apigee-access
לפריסות של Node.js.
למידע נוסף, ראו האם אפשר לעקוף את הבעיה של חוסר הגישה ל-apigee?
העברת קוד אפליקציה קיים ליעדים מתארחים
אין כרגע נתיב העברה אוטומטי מאפליקציית Node.js מוטמעת מסורתית מבוססת-Trireme ליעדים מתארחים. עם זאת, אפשר להמיר את קוד האפליקציה הקיים ליעדים מתארחים באופן ידני. ראו דוגמה במאמר העברת שרת proxy קיים של Node.js לשרת proxy של יעדים מתארחים.