סקירה כללית של התקנת קצה

Edge for Private Cloud גרסה 4.16.09

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

תהליך ההתקנה

התקנת Edge בצומת היא תהליך רב-שלבי:

  • משביתים את SELinux בצומת או מגדירים אותו למצב מתיר. בהתקנת כלי ההגדרה של Edge apigee-setup עוד.
  • בוחרים את ההגדרות האישיות של Edge מרשימת הטופולוגיות המומלצות. לדוגמה, יכול להתקין את Edge בצומת יחיד לצורך בדיקה, או ב-13 צמתים בסביבת ייצור. מידע נוסף זמין במאמר טופולוגיות התקנה.
  • בכל צומת בטופולוגיה שבחרתם, מתקינים את כלי השירות apigee-setup של Edge:
    • מורידים את קובץ bootstrap_4.16.09.sh של Edge אל /tmp/shoestrap_4.16.09.sh.
    • מתקינים את כלי השירות apigee-service של Edge ו של יחסי התלות.
    • מתקינים את כלי השירות apigee-setup ואת יחסי התלות של Edge.

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

טיפול בכשל בהתקנה

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

הגדרת מצב המתנה ראשי ב-Postgres רפליקציה

כברירת מחדל, Edge מתקין את כל צומתי Postgres במצב ראשי. אבל במערכות ייצור עם כמה צומתי Postgres, אתה מגדיר אותם להשתמש ברפליקציית המתנה מאסטר, כך שאם הצומת הראשי ייכשל, הצומת במצב המתנה יכול להמשיך להציג את התנועה. ראו הגדרה של רפליקציית Master-Standby ל-Postgres לקבלת מידע נוסף.

מי יכול לבצע את ההתקנה

קובצי ההפצה של Apigee Edge מותקנים כקבוצה של הכנסות לאלף חשיפות ויחסי תלות. שפת תרגום התקנה, הסרה ועדכון של Edge, פקודות Edge חייבות להיות מופעלות על ידי משתמש ברמה הבסיסית (root) או על ידי משתמש שיש לו גישת sudo מלאה. לגישת sudo מלאה, המשמעות היא שלמשתמש יש גישת sudo לביצוע אותן פעולות כמו הרמה הבסיסית (root).

כל משתמש שרוצה להריץ את הפקודות או הסקריפטים הבאים צריך להיות ברמה הבסיסית (root) או להיות משתמש עם גישת sudo מלאה:

  • הכלי apigee-service:
    • פקודות apigee-service: install, Remove, update.
    • פקודות apigee-all: install, Remove, update.
  • סקריפט setup.sh להתקנת רכיבי Edge (אם לא השתמשתם כבר בעבר "התקנת apigee-service" אל להתקין את ההכנסות הנדרשות לאלף צפיות. ואז גישת Root או גישת sudo מלאה אם אין צורך.)
  • הסקריפט update.sh לעדכון רכיבי Edge

בנוסף, מנהל ההתקנה של Edge יוצר משתמש חדש במערכת בשם 'apigee'. פקודות רבות ב-Edge להפעיל sudo לרוץ בתור ה-apigee משתמש.

כל משתמש שרוצה להריץ את כל הפקודות האחרות מלבד אלה שמוצגות למעלה חייב להיות משתמש עם גישת sudo מלאה ל-"apigee" משתמש. הפקודות האלה כוללות:

  • פקודות של הכלי apigee-service, כולל:
    • פקודות apigee-service כמו start, Stop, מחדש, Configure.
    • פקודות apigee-all, כמו start, Stop, start, config.

כדי להגדיר למשתמש גישת sudo מלאה ל-apigee משתמש, ערוך את קובץ ה-sudoers כדי add:

installUser        ALL=(apigee)      NOPASSWD: ALL

כאשר installUser הוא שם המשתמש של האדם שאיתו הוא עובד קצה.

כל הקבצים או המשאבים שבהם נעשה שימוש בפקודות Edge חייבים להיות נגישים ל-apigee משתמש. הזה כולל את קובץ הרישיון ל-Edge ואת כל קובצי התצורה.

כשיוצרים קובץ תצורה, אפשר לשנות את הבעלים שלו ל-"apigee:apigee" כדי להבטיח אפשר לגשת אליו רק באמצעות פקודות Edge:

  1. יוצרים את הקובץ בכלי עריכה בתור כל משתמש אחר.
  2. בוחרים את הבעלים של הקובץ ל-"apigee:apigee" או, אם החלפתם את המשתמש שמפעיל את דפדפן Edge שירות מה-apigee קוראים את הקובץ למשתמש שמפעיל את דפדפן Edge. לאחר השיפור.

המיקום של הגדרות ההתקנה קבצים

עליך להעביר קובץ תצורה לכלי השירות apigee-setup שמכיל את מידע על התקנת Edge. הדרישה היחידה בהתקנות שקטות היא קובץ התצורה חייב להיות נגיש או קריא על ידי ה-apigee משתמש. לדוגמה, הצבת הקובץ ב-/usr/local/var או הספרייה /usr/local/share בצומת ולשנות אותו ל-"apigee:apigee".

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

מידע נוסף מופיע בקטע התקנת רכיבי Edge בצומת עבור עוד.

התקנה דרך אינטרנט או התקנה שלא דרך אינטרנט

כדי להתקין את Edge בצומת, הצומת צריך להיות מסוגל לגשת למאגר Apigee:

  • צמתים עם חיבור חיצוני לאינטרנט

    צמתים עם חיבור חיצוני לאינטרנט ניגשים למאגר של Apigee כדי להתקין את Edge הכנסה לאלף צפיות (RPM) ויחסי תלות.
  • צמתים ללא חיבור חיצוני לאינטרנט

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

    הערה: Apigee לא מארחת את כל יחסי התלות של צד שלישי בציבור מאגרים. עליכם להוריד ולהתקין את יחסי התלות האלה מ-נגישים באופן ציבורי מאגרים.

פתרון יחסי תלות של התקנות לפי הכנסה לאלף צפיות (RPM)

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

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

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

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

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

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

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

ה-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, רוב הדפדפנים, וכלים רבים אחרים באופן אוטומטי מוסיפים את כותרת המארח לדומיין כחלק מהבקשה, כך שלמעשה להשתמש ב-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. לאחר מכן, צריך להעביר את הכותרת מארח בכל בקשה:

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}

הגדרת פוסט של רכיבי Edge התקנה

כדי להגדיר את Edge לאחר ההתקנה, צריך להשתמש בשילוב של קובצי .properties ושל כלי עזר של Edge. עבור לדוגמה, כדי להגדיר TLS/SSL בממשק המשתמש של Edge, צריך לערוך קובצי .properties כדי להגדיר הנכסים הנדרשים. כדי לבצע שינויים בקובצי .properties, עליכם: מפעילים מחדש את רכיב Edge שהושפע.

קובצי .properties נמצאים הספרייה /opt/apigee/customer/application. לכל רכיב יש קובץ .properties משלו בספרייה הזו. לדוגמה, router.properties ו-management-server.properties.

כדי להגדיר מאפיין לרכיב, עורכים את קובץ .properties המתאים ואז מפעילים מחדש הרכיב:

> /opt/apigee/apigee-service/bin/apigee-service component restart

לדוגמה:

> /opt/apigee/apigee-service/bin/apigee-service edge-router restart

כשמעדכנים את Edge, הקבצים .properties /opt/apigee/customer/application נקראו. כלומר, כל המאפיינים שהגדרתם ברכיב נשמרים בעדכון.

מידע נוסף זמין במאמר איך להגדיר את Edge. הגדרת Edge.

בדיקה אם נתב Edge יכול גישה אל /etc/rc.d/init.d/functions

נתב Edge בפורטל BaaS משתמשים גם בנתב Nginx ומחייבים גישת קריאה אליהם /etc/rc.d/init.d/functions.

אם בתהליך האבטחה נדרשת הגדרת הרשאות עבור /etc/rc.d/init.d/functions, לא להגדיר אותן ל-700, אחרת הנתב ייכשל. אפשר להגדיר את ההרשאות ל-744 כדי לאפשר גישת קריאה אל /etc/rc.d/init.d/functions.

הפעלת פקודות ברכיבי Edge

תוכנות לניהול התקנות של Edge ב-/opt/apigee/apigee-service/bin משמשים לניהול התקנת Edge. לדוגמה, אפשר להשתמש בכלי apigee-all כדי להפעיל, לעצור, להפעיל מחדש או לקבוע את הסטטוס של כל רכיבי Edge בצומת:

/opt/apigee/apigee-service/bin/apigee-all stop|start|restart|status|version

להשתמש בכלי apigee-service כדי לשלוט ולהגדיר רכיבים בודדים. הכלי apigee-service נראה כך:

/opt/apigee/apigee-service/bin/apigee-service component action

לדוגמה, כדי להפעיל מחדש את נתב Edge:

/opt/apigee/apigee-service/bin/apigee-service edge-router restart

ניתן לראות את רשימת הרכיבים שמותקנים בצומת. לשם כך אפשר לעיין בספרייה /opt/apigee. הספרייה הזו מכילה ספריית משנה לכל רכיב Edge שמותקן בצומת. כל ספריית משנה קידומת:

  • apigee – צד שלישי הרכיב שמשמש את Edge. לדוגמה, apigee-cassandra.
  • dge – רכיב Edge מ-Apigee. לדוגמה, End-management-server.
  • Edge-mint – מונטיזציה לרכיב הזה. לדוגמה edge-mint-management-server.
  • baas – BaaS ל-API לרכיב הזה. לדוגמה, baas-usergrid.

רשימת הפעולות המלאה של רכיב מסוים תלויה ברכיב עצמו, אבל כל הפעולות הרכיבים תומכים בפעולות הבאות:

  • התחלה, עצירה, הפעלה מחדש
  • סטטוס, גרסה
  • גיבוי, שחזור
  • התקנה, הסרה

גישה לקובצי יומן

קובץ היומן עבור apigee-setup והסקריפט setup.sh הוא כתובה ב-/tmp/setup-root.log.

קובצי היומן של כל רכיב נמצאים בספרייה /opt/apigee/var/log. כל רכיב יש ספריית משנה משלו. לדוגמה, היומנים של שרת הניהול נמצאים ספרייה:

/opt/apigee/var/log/edge-management-server

פקודות Yum נפוצות

כלי ההתקנה של Edge ל-Linux מסתמכים על Yum כדי להתקין ולעדכן רכיבים. ייתכן ש תצטרכו להשתמש במספר פקודות Yum כדי לנהל התקנה בצומת.

  • ניקוי כל המטמון של Yum:
    sudo yum clean all
  • כדי לעדכן רכיב Edge:
    עדכון sudo yum componentName
    לדוגמה:
    sudo yum update apigee-setup
    sudo yum update edge-management-server

המבנה של מערכת הקבצים

Edge מתקין את כל הקבצים בספרייה /opt/apigee.

במדריך הזה ובמדריך הפעולות של הקצה, מופיעה ספריית התקנה הבסיסית כ:

<inst_root>/apigee

ההתקנה משתמשת במבנה הבא של מערכת קבצים כדי לפרוס את Apigee Edge for Private ב-Google Cloud.

קובצי יומן

רכיבים

מיקום

שרת ניהול

&lt;inst_root&gt;/apigee/var/log/edge-management-server

נתב

&lt;inst_root&gt;/apigee/var/log/edge-router

מעבד בקשות

&lt;inst_root&gt;/apigee/var/log/edge-message-processor

שרת Qpid של Apigee

&lt;inst_root&gt;/apigee/var/log/edge-qpid-server

שרת Apigee Postgres

&lt;inst_root&gt;/apigee/var/log/edge-postgres-server

ממשק המשתמש של Edge

&lt;inst_root&gt;/apigee/var/log/edge-ui

ZooKeeper

&lt;inst_root&gt;/apigee/var/log/apigee-zookeeper

OpenLDAP

&lt;inst_root&gt;/apigee/var/log/apigee-openldap

קסנדרה

&lt;inst_root&gt;/apigee/var/log/apigee-cassandra

קפיד

&lt;inst_root&gt;/apigee/var/log/apigee-qpidd

מסד נתונים של PostgreSQL

&lt;inst_root&gt;/apigee/var/log/apigee-postgresql

נתונים

רכיבים

מיקום

שרת ניהול

&lt;data_root&gt;/apigee/data/edge-management-server

נתב

&lt;data_root&gt;/apigee/data/edge-router

מעבד בקשות

&lt;data_root&gt;/apigee/data/edge-message-processor

סוכן Qpid של Apigee

&lt;data_root&gt;/apigee/data/edge-qpid-server

סוכן Apigee Postgres

&lt;data_root&gt;/apigee/data/edge-postgres-server

ZooKeeper

&lt;data_root&gt;/apigee/data/apigee-zookeeper

OpenLDAP

&lt;data_root&gt;/apigee/data/apigee-openldap

קסנדרה

&lt;data_root&gt;/apigee/data/apigee-cassandra/data

קפיד

&lt;data_root&gt;/apigee/data/apigee-qpid/data

מסד נתונים של PostgreSQL

&lt;data_root&gt;/apigee/data/apigee-postgres/pgdata