דרישות התקנה

Edge for Private Cloud גרסה 4.17.09

דרישות החומרה

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

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

רכיב התקנה

RAM

מעבד (CPU)

מינימום דיסק קשיח

קסנדרה

16GB

8 ליבות

אחסון מקומי בנפח 250GB עם SSD או HDD מהיר עם תמיכה ב-2000 IOPS

מעבד הודעות או נתב באותה מכונה

16GB

8 ליבות

100GB

Analytics – Postgres/Qpid באותו שרת (לא מומלץ לצורכי ייצור)

16GB*

8 ליבות*

נפח אחסון ברשת 500GB - 1TB*****, עדיף עם קצה עורפי SSD, עם תמיכה ב-1000 IOPS ומעלה*.

Analytics – הודעות אימייל עצמאיות

16GB*

8 ליבות*

אחסון ברשת 500GB - 1TB**, עדיף עם קצה עורפי של SSD, עם תמיכה ב-1000 IOPS ומעלה*.

Analytics – Qpid עצמאי

8GB

4 ליבות

אחסון מקומי בנפח 30GB - 50GB עם SSD או HDD מהיר

עבור התקנות מעל 250 TPS, HDD עם אחסון מקומי שתומך ב-1000 IOPS הוא מומלץ.

גודל ברירת המחדל של תור Qpid הוא 20GB. אם צריך להגדיל את הקיבולת, אפשר צומתי Qpid.

אחר (OpenLDAP, ממשק משתמש, שרת ניהול)

4GB

2 ליבות

60GB

*התאמת דרישות המערכת של Postgres בהתאם לתפוקה:

  • פחות מ-250 TPS: 8GB, 4 ליבות, אפשר להשתמש בהם עם אחסון רשת מנוהל*** עם תמיכה ב- 1000 IOPS ומעלה
  • יותר מ-250 TPS: 16GB, 8 ליבות, אחסון ברשת מנוהלת*** עם תמיכה ב-1000 IOPS ומעלה
  • יותר מ-1,000 TPS: 16GB, 8 ליבות, אחסון ברשת מנוהלת*** תמיכה ב-2000 IOPS ומעלה
  • יותר מ-2000 TPS: 32GB, 16 ליבות, אחסון ברשת מנוהלת*** תמיכה ב-2000 IOPS ומעלה
  • יותר מ-4000 TPS: 64GB, 32 ליבות, אחסון ברשת מנוהלת*** תמיכה ב-4000 IOPS ומעלה

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

(# בייטים/בקשה) * (בקשות לשנייה) * (שניות לשעה) * (שעות של שימוש שיא לכל יום) * (ימים בחודש) * (חודשים של שמירת נתונים) = בייטים של נפח אחסון שנדרש

לדוגמה:

(2,000 בייטים של ניתוח נתונים בכל בקשה) * 100req לשנייה * 3,600 שניות לשעה * שיא של 18 שעות השימוש ביום * 30 ימים בחודש * שמירה של 3 חודשים = 1,194,393,600,000 בייטים או 1194.4GB.

*** מומלץ להשתמש באחסון רשת עבור מסד נתונים של Postgresql מהסיבות הבאות:

  • הוא מאפשר להגדיל באופן דינמי את גודל האחסון אם וכאשר נדרש.
  • אפשר להתאים את ה-IOPS של הרשת בזמן אמת סביבה/אחסון/מערכות משנה של רשת.
  • אפשר להפעיל תמונות מצב ברמת האחסון כחלק מגיבוי ושחזור ולבסוף על solutions.

בנוסף, בהמשך מפורטות דרישות החומרה אם ברצונך להתקין את שירותי מונטיזציה:

רכיב עם מונטיזציה

RAM

מעבד (CPU)

דיסק קשיח

שרת ניהול (עם שירותי מונטיזציה)

8GB

4 ליבות

60GB

Analytics – Postgres/Qpid באותו שרת

16GB

8 ליבות

500GB - 1TB אחסון ברשת, עדיף עם קצה עורפי SSD, עם תמיכה ב-1000 IOPS או גבוהה יותר, או להשתמש בכלל מהטבלה שלמעלה.

Analytics – הודעות אימייל עצמאיות

16GB

8 ליבות

500GB - 1TB אחסון ברשת, עדיף עם קצה עורפי SSD, עם תמיכה ב-1000 IOPS או גבוהה יותר, או להשתמש בכלל מהטבלה שלמעלה.

Analytics – Qpid עצמאי

8GB

4 ליבות

אחסון מקומי בנפח 40GB - 500GB עם SSD או HDD מהיר

עבור התקנות מעל 250 TPS, HDD עם אחסון מקומי שתומך ב-1000 IOPS הוא מומלץ.

אם רוצים להתקין את BaaS ל-API, מפורטות בהמשך דרישות החומרה:

רכיב API BaaS

RAM

מעבד (CPU)

דיסק קשיח

ElasticSearch*

8GB

4 ליבות

60 - 80GB

מקבץ BaaS של API *

8GB

4 ליבות

60 - 80GB

פורטל API BaaS

1GB

2 ליבות

20GB

Cassandra (אופציונלי – בדרך כלל משתמשים באותו אשכול Cassandra בשני Edge ושירותי BaaS API)

16GB

8 ליבות

אחסון מקומי בנפח 250GB עם SSD או HDD מהיר עם תמיכה ב-2000 IOPS

* אפשר להתקין את ElasticSearch ו-API BaaS Stack באותו צומת. אם תעשה זאת, להגדיר את ElasticSearch להשתמש בזיכרון של 4GB (ברירת מחדל). אם ElasticSearch מותקן ב- צומת משלו, ואז להגדיר אותו להשתמש בזיכרון של 6GB.

הערה:

  • אם מערכת הקבצים ברמה הבסיסית לא גדולה מספיק להתקנה, מומלץ למקם את הנתונים בדיסק גדול יותר.
  • אם הותקנה במחשב גרסה ישנה יותר של Apigee Edge לענן פרטי, צריך לוודא מוחקים את התיקייה /tmp/java לפני התקנה חדשה.
  • לתיקייה הזמנית ברמת המערכת /tmp נדרשות הרשאות הפעלה כדי מפעילים את Cassandra.
  • אם ה-apigee של המשתמש נוצר לפני ההתקנה, צריך לוודא '/home/apigee' קיים כספריית בית ונמצא בבעלות של 'apigee:apigee'.

מערכת הפעלה וצדדים שלישיים דרישות תוכנה

הנחיות ההתקנה וקובצי ההתקנה שסופקו נבדקו מערכות הפעלה ותוכנות צד שלישי שמפורטות כאן: https://apigee.com/docs/api-services/reference/supported-software.

יצירת המשתמש ב-apigee

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

ספריית התקנה

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

בהוראות במדריך הזה, ספריית ההתקנה מצוינת כ- /<inst_root>/apigee, כאשר /<inst_root> הוא /opt כברירת מחדל.

יצירת קישור סימבולי מ- /opt/apigee

לפני שיוצרים את הקישור הסמלי, צריך קודם ליצור משתמש וקבוצה בשם 'apigee'. הדבר אותה קבוצה ומשתמש שנוצרו על ידי מנהל ההתקנה של Edge.

כדי ליצור את הקישור הסמלי, צריך לבצע את השלבים הבאים לפני שמורידים את הקובץ shoestrap_4.17.01.sh. צריך לבצע את כל השלבים האלה ברמה הבסיסית (root):

  1. יוצרים את ה-apigee משתמש וקבוצה:
    &gt; groupadd -r אפיק עגול
    &gt; useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee Platform user" apigee
  2. יוצרים קישור סימבולי מ-/opt/apigee להתקנה הרצויה הרמה הבסיסית (root):
    &gt; ln -ts /srv/myInstallDir /opt/apigee
    כאשר /srv/myInstallDir הוא המיקום הרצוי של הקצה .
  3. שינוי הבעלות על הרמה הבסיסית (root) של ההתקנה והקישור הסמלי ל-apigee משתמש:
    &gt; צ'און - שע' apigee:apigee /srv/myInstallDir /opt/apigee

Java

נדרשת גרסה נתמכת של Java1.8 בכל מחשב לפני ההתקנה. מפתחות ה-JDK הנתמכים מפורטים כאן:

https://apigee.com/docs/api-services/reference/supported-software

עליך לוודא ש-JAVA_HOME נקודות ל-Root של ה-JDK עבור המשתמש שמבצע את ההתקנה.

SELinux

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

הגדרת רשת

מומלץ לבדוק את הגדרת הרשת לפני ההתקנה. מנהל ההתקנה מצפה שלכל המכונות יהיו כתובות IP קבועות. השתמשו בפקודות הבאות כדי לאמת הגדרה:

  • hostname מחזיר את השם של המכשיר
  • hostname -i מחזיר את כתובת ה-IP עבור שם המארח שאפשר להפנות אליו ממכונות אחרות.

בהתאם לסוג של מערכת ההפעלה ולגרסה שלכם, יכול להיות שתצטרכו לערוך את /etc/hosts ואת /etc/sysconfig/network אם שם המארח אינו מוגדר כראוי. לקבלת מידע נוסף, אפשר לעיין בתיעוד של מערכת ההפעלה הספציפית.

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

ENABLE_DYNAMIC_HOSTIP=y

כאשר המאפיין מוגדר ל-"y", מנהל ההתקנה ינחה אתכם לבחור את כתובת ה-IP שתשמש בתור חלק מההתקנה. ערך ברירת המחדל הוא 'n'. מידע נוסף זמין בחומר העזר בנושא קובץ תצורת קצה.

רכיבי wrapper של TCP

רכיבי wrapper של TCP יכולים לחסום את התקשורת של יציאות מסוימות, והם יכולים להשפיע על OpenLDAP, Postgres ו- התקנה של Cassandra. בצמתים האלה, צריך לבדוק ב-/etc/hosts.allow וב-/etc/hosts.deny כדי לוודא שאין הגבלות על יציאות ב-OpenLDAP, ב-Postgres וב-Cassandra הנדרשים יציאות.

מכשירי iptable

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

> sudo/etc/init.d/iptables stop

ב-CentOS 7.x:

> systemctl stop firewalld

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

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

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

קסנדרה

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

גודל הערימה של Java ב-Cassandra מכווננת אוטומטית את גודל הערימה של Java בהתאם לזיכרון הזמין. לקבלת מידע נוסף, ראו כוונון Java משאבים. במקרה של ירידה בביצועים או צריכת זיכרון גבוהה.

אחרי שמתקינים את Edge לענן פרטי, אפשר לבדוק ש-Cassandra מוגדרת בצורה נכונה באמצעות עיון ב-/&lt;inst_root&gt;/apigee/apigee-cassandra/conf/cassandra.yaml חדש. לדוגמה, צריך לוודא שסקריפט ההתקנה של Edge for Private Cloud מגדיר את הרכיבים הבאים: נכסים:

  • cluster_name
  • initial_token
  • שותף עריכה
  • זרעים
  • listen_address
  • rpc_address
  • snitch

אזהרה: אין לערוך את הקובץ הזה.

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

אחרי שמתקינים את Edge, אפשר לשנות את ההגדרות הבאות של מסד הנתונים של PostgreSQL על סמך כמות ה-RAM שזמינה במערכת:

conf_postgresql_shared_buffers = 35% of RAM      # min 128kB
conf_postgresql_effective_cache_size = 45% of RAM
conf_postgresql_work_mem = 512MB       # min 64kB

כדי להגדיר את הערכים האלה:

  1. עריכת postgresql.properties:
    &gt; וי /&lt;inst_root&gt;/apigee/customer/application/postgresql.properties

    אם הקובץ לא קיים, יוצרים אותו.
  2. מגדירים את המאפיינים המפורטים למעלה.
  3. שומרים את השינויים.
  4. מפעילים מחדש את מסד הנתונים של PostgreSQL:
    &gt; /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql הפעלה מחדש

מגבלות מערכת

עליך לוודא שהגדרת את מגבלות המערכת הבאות ב-Cassandra ובמעבד ההודעות צמתים:

  • בצמתים של Cassandra, מגדירים מגבלות ל-memlock בקטע רך וקשה, ללא קובץ ומרחב כתובות (כ) משתמש התקנה (ברירת המחדל היא 'apigee') ב-/etc/security/limits.d/90-apigee-edge-limits.conf as מוצגת למטה:
    apigee soft memlock ללא הגבלה
    apigee Hard memlock ללא הגבלה
    apigee soft nofile 32768
    apigee Hard nofile 65536
    API רך רך ללא הגבלה
    עמוק במגבלה ללא הגבלה

  • בצמתים של מעבד הודעות, מגדירים את המספר המקסימלי של מתארי קבצים פתוחים ל-64K בכתובת /etc/security/limits.d/90-apigee-edge-limits.conf as מוצגת למטה:
    apigee soft nofile 32768
    apigee Hard nofile 65536


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

jsvc

'jsvc' היא דרישה מוקדמת לשימוש ב-API BaaS. גרסה 1.0.15 -dev מותקנת בעת ההתקנה BaaS של API.

שירותי אבטחת רשתות (NSS)

Network Security Services (NSS) היא קבוצה של ספריות שתומכות בפיתוח של אפליקציות לקוח ושרת עם אבטחה. עליך לוודא שהתקנת את NSS גרסה 3.19 ואילך.

כדי לבדוק את הגרסה הנוכחית:

> yum info nss

כדי לעדכן את ה-NSS:

> yum update nss

כדאי לעיין במאמר הזה באתר RedHat. אפשר לקבל מידע נוסף.

השבתת חיפוש DNS ב-IPv6 בעת שימוש ב-NSCD (Name Service Cache Daemon)

אם התקנתם והפעלתם את NSCD (Name Service Cache Daemon), תוכלו להשתמש במעבדי ההודעות מבצע שתי חיפושי DNS: אחת עבור IPv4 ואחת עבור IPv6. צריך להשבית את חיפוש ה-DNS ב- IPv6 כשמשתמשים ב-NSCD.

כדי להשבית את חיפוש ה-DNS ב-IPv6:

  1. בכל צומת של מעבד הודעות, עורכים את הקוד /etc/nscd.conf.
  2. מגדירים את המאפיין הבא:
    הפעלת מארחים במטמון

השבתת IPv6 ב-Google Cloud פלטפורמה ל-RedHat/CentOS 7

אם מתקינים את Edge ב-RedHat 7 או CentOS 7 ב-Google Cloud Platform, חייבים להשבית את IPv6 בכל צומתי Qpid.

במסמכי התיעוד של RedHat או CentOS מפורטות הגרסה הספציפית של מערכת ההפעלה הרלוונטית. השבתת IPv6. לדוגמה, אפשר:

  1. פותחים את הקובץ /etc/hosts. עם הרשאת עריכה.
  2. הוספת "#" תו בעמודה אחת של השורה הבאה כדי להוסיף תגובה:
    #::1 Localhost Localhost.localdomainlocalhost6 Localhost6.localdomain6
  3. שומרים את הקובץ.

AWS AMI

אם מתקינים את Edge ב-AWS Amazon Machine Image (AMI) בשביל Red Hat Enterprise Linux 7.x, תחילה עליך להריץ את הפקודה הבאה:

> yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional

כלים

מנהל ההתקנה משתמש בכלי UNIX הבאים בגרסה הרגילה כפי שסופקו על ידי EL5 או EL6.

awk

expr

lua-socket

סיבובים לדקה

לפרוס את קובץ ה-ZIP

שם בסיס

GRep

ls

rpm2cpio

הוספת משתמש

באש

hostname

רשת כלים

Sed

wc

bc

id [מזהה]

perl (מ-procps)

sudo

wget

curl

ליביו

pgRep (מ-procps)

זפת

Xerces-c

קירוס-סאסל
libdb-cxx
PS tr טעים

תאריך

ליביבים

pwd

Uuid

chkconfig

dirname
librdmacm
python אושם
echo
libxslt

הערה:

  • קובץ ההפעלה של הכלי useradd נמצא ב-/usr/sbin וב-chkconfig ב-/sbin.
  • באמצעות גישת sudo ניתן לקבל גישה דרך הסביבה של המשתמש שמתקשר, לדוגמה: בדרך כלל קוראים ל-"sudo <command>" או 'sudo PATH=$PATH:/usr/sbin:/sbin <command>".
  • חשוב לוודא שמותקן אצלך כלי התיקון לפני חבילת שירות (תיקון) בתהליך ההתקנה.

ntpdate – מומלץ לסנכרן את הזמן של השרתים. אם המיקום עדיין לא הוגדר, השירות 'ntpdate' יכול למלא את המטרה הזו, האם שרתים מסונכרנים בזמן. תוכלו להשתמש ב-"yum install ntp" כדי להתקין את של Google. זה שימושי במיוחד לשכפול הגדרות OpenLDAP. שימו לב שאתם מגדירים שרת אזור הזמן לפי שעון UTC.

openldap 2.4 – כדי להתקין באופן מקומי נדרשת OpenLDAP 2.4. אם המיקום לשרת יש חיבור לאינטרנט, ולאחר מכן קובץ הסקריפט להתקנת Edge יורד ומתקין OpenLDAP. אם לשרת שלך אין חיבור לאינטרנט, עליך לוודא ש-OpenLDAP הוא שכבר התקנתם לפני הרצת סקריפט ההתקנה של Edge. ב-RHEL/CentOS אפשר להריץ "התקנת openldap-clients openldap-servers&quot; כדי להתקין את OpenLDAP.

עבור התקנות של 13 מארחים ו-12 התקנות של מארחים עם שני מרכזי נתונים, צריך רפליקציה של OpenLDAP כי יש מספר צמתים שמארחים את OpenLDAP.

חומות אש ומארחים וירטואליים

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

  • מכונות וירטואליות (VM): לא חובה, אבל בחלק מהפריסה נעשה שימוש בטכנולוגיית VM ליצור שרתים מבודדים לרכיבי Apigee שלהם. למארחי מכונות וירטואליות, כמו מארחים פיזיים, יכולים להיות ממשקי רשת וחומות אש.
  • מארחים וירטואליים: נקודות קצה באינטרנט, בדומה למארח וירטואלי של Apache.

נתב במכונה וירטואלית יכול לחשוף כמה מארחים וירטואליים (כל עוד הם שונים זה מזה) את כינוי המארח או ביציאת הממשק שלהם).

לצורך הדוגמה, השמות 'A' עשויים להפעיל שתי מכונות וירטואליות, שנקראים VM1 ו-VM2. נניח ש-VM1 חושפת אתרנט וירטואלי eth0, במכונה הווירטואלית, שכתובת ה-IP שהוקצתה לה 111.111.111.111 על ידי הווירטואליזציה מכונות או שרת DHCP ברשת, ואז נניח ש-VM2 חושפת ממשק אתרנט וירטואלי שנקרא eth0, מוקצית לו כתובת ה-IP 111.111.111.222.

יכול להיות שיש לנו נתב Apigee שפועל בכל אחת משתי המכונות הווירטואליות. הנתבים חושפים מארח וירטואלי נקודות קצה (endpoints), כמו בדוגמה ההיפותטית הזאת:

נתב Apigee ב-VM1 חושף שלושה מארחים וירטואליים בממשק ה-eth0 שלו (שכולל כמה כתובת IP ספציפית), api.mycompany.com:80, api.mycompany.com:443 ו-test.mycompany.com:80.

הנתב ב-VM2 חושף את api.mycompany.com:80 (אותו שם ויציאה כמו שנחשפו על ידי VM1).

ייתכן שבמערכת ההפעלה של המארח הפיזי יש חומת אש של רשת. אם כן, אותה חומת אש צריך להיות מוגדר כך שיעביר תנועת TCP שמשויכת ליציאות שחשופות בתהליך הווירטואלי ממשקים (111.111.111.111:{80, 443} ו-111.111.111.222:80). בנוסף, כל ייתכן שמערכת ההפעלה של המכונה הווירטואלית תספק חומת אש משלה בממשק ה-eth0 שלה, וגם הם חייבים תאפשר ליציאות 80 ו-443 להתחבר.

הבסיס הוא הרכיב השלישי שמעורב בניתוב קריאות ל-API אל שרתי proxy שונים ל-API. שאולי פרסתם. חבילות proxy ל-API יכולות לשתף נקודת קצה אם הן שונות בדרכי בסיס. לדוגמה, basepath אחד יכול להיות מוגדר כ-http://api.mycompany.com:80/ מוגדר כך: http://api.mycompany.com:80/salesdemo.

במקרה כזה, תצטרכו מאזן עומסים או מנהל תנועה מסוג כלשהו, שמפצלים את תעבורת הנתונים http://api.mycompany.com:80/ בין שתי כתובות ה-IP (111.111.111.111 ב-VM1 ו-111.111.111.222 ב-VM2). הפונקציה הזו ספציפי להתקנה הספציפית שלך, ומוגדר על ידי קבוצת הרשתות המקומית שלך.

הנתיב הבסיסי מוגדר כשפורסים API. מהדוגמה שלמעלה, ניתן לפרוס שני ממשקי API, mycompany ו-testmycompany בארגון, mycompany-org עם מארח שבו הכינוי של המארח הוא api.mycompany.com והיציאה מוגדרת ל- 80 אם לא תצהירו Basepath בפריסה, אז הנתב לא יודע איזה API לשלוח בקשות נכנסות ל.

עם זאת, אם פורסים את ה-API testmycompany עם כתובת ה-URL הבסיסית /salesdemo, לאחר מכן משתמשים יוכלו את ממשק ה-API הזה באמצעות http://api.mycompany.com:80/salesdemo. אם לפרוס את mycompany של API עם כתובת ה-URL הבסיסית של / ולאחר מכן המשתמשים ניגשים ל-API דרך כתובת ה-URL http://api.mycompany.com:80/.

הדרישות ליציאת קצה

הצורך לנהל את חומת האש חורג רק מהמארחים הווירטואליים. גם VM וגם מארח פיזי חומות אש חייבות לאפשר תנועה ליציאות שהרכיבים נחוצים כדי לתקשר עם אחר.

בתמונה הזו אפשר לראות את דרישות היציאות לכל רכיב של Edge:

ההערות בתרשים הזה:

  • *יציאה 8082 במעבד ההודעות צריכה להיות פתוחה לגישה של הנתב רק כאשר להגדיר TLS/SSL בין הנתב ומעבד ההודעות. אם לא מגדירים TLS/SSL בין הנתב למעבד ההודעות, תצורת ברירת המחדל, יציאה 8082 עדיין חייבת פתוח במעבד ההודעות כדי לנהל את הרכיב, אבל הנתב לא דורש לגשת אליו.
  • היציאות עם הקידומת "M" הן יציאות שמשמשות לניהול הרכיב, והן חייבות להיות פתוחות ועל הרכיב להיות פתוח ברכיב כדי לאפשר גישה של שרת הניהול.
  • לרכיבים הבאים נדרשת גישה ליציאה 8080 בשרת הניהול: נתב, מעבד הודעות, ממשק משתמש, Postgres ו-Qpid.
  • מעבד הודעות צריך לפתוח את היציאה 4528 כיציאת הניהול שלו. אם יש לך כמה מעבדי הודעות, כולם צריכים להיות מסוגלים לגשת זה לזה דרך יציאה 4528 (מצוין על ידי חץ לולאה בתרשים שלמעלה עבור יציאה 4528 במעבד ההודעות). אם יש לך כמה מרכזי נתונים, היציאה חייבת להיות נגישה מכל מעבדי ההודעות בכל מרכזי הנתונים.
  • אמנם זו לא חובה, אבל ניתן לפתוח את היציאה 4527 בנתב כדי לקבל גישה מכל הודעה מעבד. אחרת, יכול להיות שיופיעו הודעות שגיאה בקובצי היומן של מעבד ההודעות.
  • הנתב צריך לפתוח את היציאה 4527 כיציאת הניהול שלו. אם יש לכם כמה נתבים, חייבים להיות מסוגלים לגשת זה לזה דרך יציאה 4527 (מצוין על ידי חץ הלולאה) שלמעלה עבור יציאה 4527 בנתב).
  • כדי לתמוך בממשק המשתמש של Edge, נדרשת גישה לנתב ביציאות שחשופות שרתי proxy ל-API על הלחצן שליחה בכלי המעקב.
  • לשרת הניהול נדרשת גישה ליציאת ה-JMX ב-Cassandra צמתים.
  • ניתן להגדיר את הגישה ליציאות JMX כדי לדרוש שם משתמש/סיסמה. מידע נוסף זמין במאמר איך עוקבים.
  • בחיבורים מסוימים אפשר להגדיר גישת TLS/SSL (אבטחת שכבת התעבורה), ולהשתמש ב- יציאות שונות. מידע נוסף מופיע ב-TLS/SSL. עוד.
  • אם מגדירים שני צמתים של Postgres לשימוש ברפליקציית המתנה ראשית, צריך לפתוח את יציאה 22. בכל צומת לגישת Ssh. אפשר לפתוח יציאות בצמתים נפרדים כדי לאפשר גישת SSH.
  • אפשר להגדיר את שרת הניהול ואת ממשק המשתמש של Edge לשליחת אימיילים דרך שרת SMTP חיצוני השרת. אם תעשו זאת, עליכם לוודא שלשרת הניהול ולממשק המשתמש יש גישה בשרת ה-SMTP. ב-SMTP ללא TLS, מספר היציאה הוא בדרך כלל 25. להפעלה ב-TLS ב-SMTP הוא בדרך כלל 465, אבל צריך לבדוק זאת אצל ספק ה-SMTP.

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

רכיב

יציאה

תיאור

יציאות HTTP רגילות

80, 443

HTTP ויציאות אחרות שבהן משתמשים למארחים וירטואליים

שרת ניהול

8080

יציאה לקריאות ל-Edge management API. לרכיבים האלה נדרשת גישה ליציאה 8080 שרת הניהול: נתב, מעבד הודעות, ממשק משתמש, Postgres ו-Qpid.

1099

יציאת JMX

4526

לשיחות מבוזרות של מטמון וניהול

ממשק המשתמש של הניהול

9000

יציאה לגישה של דפדפן לממשק המשתמש לניהול

מעבד הודעות

8998

יציאת מעבד הודעות לתקשורת מהנתב

8082

יציאת הניהול המוגדרת כברירת מחדל למעבד ההודעות חייבת להיות פתוחה ברכיב עבור גישה של שרת הניהול.

אם מגדירים TLS/SSL בין הנתב ומעבד ההודעות, שבהם הנתב משתמש כדי לבצע בדיקות תקינות במעבד ההודעות.

1101

יציאת JMX

4528

עבור שיחות מטמון מבוזרות וניהול שיחות בין מעבדי הודעות, וכן תקשורת מהנתב ומשרת הניהול

נתב

8081

יציאת הניהול המוגדרת כברירת מחדל לנתב חייבת להיות פתוחה ברכיב לצורך גישה על ידי שרת הניהול.

4527

לשיחות מבוזרות של מטמון וניהול

15999

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

כדי לקבל את הסטטוס של נתב, מאזן העומסים שולח בקשה ליציאה 15999 נתב:

> curl -v http://<routerIP>:15999/v1/servers/self/reachable

אם ניתן להגיע לנתב, הבקשה תחזיר HTTP 200.

59001

היציאה שמשמשת לבדיקת התקנת Edge על ידי הכלי apigee-validate. כלי השירות הזה מחייב גישה ליציאה 59001 בנתב. למידע נוסף על יציאה 59001, ראו בדיקת ההתקנה.

ZooKeeper

2181

משמש רכיבים אחרים כמו שרת ניהול, נתב, מעבד הודעות וכן הלאה על

2888, 3888

משמש באופן פנימי על ידי ZoomKeeper לאשכול שלzoKeeper (שנקרא 'אוסף תנועת ששומרים') תקשורת

קסנדרה

7000, 9042, 9160

יציאות Apache Cassandra לתקשורת בין צמתים של Cassandra ולגישה של מרכיבי Edge אחרים.

7199

יציאת JMX. צריך להיות פתוח לגישה של שרת הניהול.

Qpid

5672

משמש לתקשורת מהנתב וממעבד ההודעות אל שרת Qpid

8083

יציאת הניהול המוגדרת כברירת מחדל בשרת Qpid חייבת להיות פתוחה ברכיב עבור גישה של שרת הניהול.

1102

יציאת JMX

4529

לשיחות מבוזרות של מטמון וניהול

Postgres

5432

משמש לתקשורת מ-Qpid או משרת הניהול אל Postgres

8084

יציאת הניהול המוגדרת כברירת מחדל בשרת Postgres והיא חייבת להיות פתוחה ברכיב כדי לקבל גישה על ידי שרת הניהול.

1103

יציאת JMX

4530

לשיחות מבוזרות של מטמון וניהול

22

אם מגדירים שני צומתי Postgres לשימוש ברפליקציית המתנה ראשית, צריך לפתוח יציאה 22 בכל צומת לגישת Ssh.

LDAP

10389

OpenLDAP

SmartDocs

59002

היציאה בנתב Edge שאליה נשלחות בקשות הדפים של SmartDocs.

בטבלה הבאה מוצגות אותן יציאות, לפי סדר מספרי, עם המקור והיעד רכיבים:

מספר יציאה

מטרה

רכיב מקור

רכיב יעד

<יציאה של מארח וירטואלי#>

HTTP וכל יציאות אחרות שמשמשות לתנועת קריאות ל-API של מארח וירטואלי. יציאות 80 ו-443 הם הנפוצים ביותר, נתב ההודעות יכול לסיים חיבורי TLS/SSL.

לקוח חיצוני (או מאזן עומסים)

האזנה בנתב ההודעות

1099 עד 1103

ניהול JMX

לקוח JMX

Management Server (1099)

מעבד הודעות (1101)

Qpid Server (1102)

Postgres Server (1103)

2181

תקשורת עם הלקוח של גן החיות

שרת ניהול

נתב

מעבד בקשות

שרת Qpid

שרת Postgres

שומר גן חיות

2888 ו-3888

ניהול קישורים בין-עיניים ב-zookeeper

שומר גן חיות

שומר גן חיות

4,526

יציאת ניהול RPC

שרת ניהול

שרת ניהול

4,527 יציאת ניהול RPC לניהול מטמון ולשיחות ניהול מבוזרות ולתקשורת בין נתבים

שרת ניהול

נתב

נתב

4,528

לשיחות מטמון מבוזרות בין מעבדי הודעות ולתקשורת מהנתב

שרת ניהול

נתב

מעבד בקשות

מעבד בקשות

4,529 יציאת ניהול RPC לשיחות מטמון מבוזרות וניהול קריאות שרת ניהול שרת Qpid
4,530 יציאת ניהול RPC לשיחות מטמון מבוזרות וניהול קריאות שרת ניהול שרת Postgres

5432

לקוח Postgres

שרת Qpid

Postgres

5672

משמש לשליחת ניתוח נתונים מהנתב וממעבד ההודעות אל Qpid

נתב

מעבד בקשות

שרת Qpid

7,000

תקשורת בין צמתים של Cassandra

קסנדרה

צומת אחר של Cassandra

7,199

ניהול JMX. חייבת להיות פתוחה לגישה בצומת Cassandra על ידי ההנהלה שרת.

לקוח JMX

קסנדרה

8080

יציאת ממשק ה-API לניהול

לקוחות של Management API

שרת ניהול

8081 עד 8084

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

לקוחות של Management API

Router (8081)

מעבד הודעות (8082)

Qpid Server (8083)

Postgres Server (8084)

8,998

התקשורת בין הנתב ומעבד ההודעות

נתב

מעבד בקשות

9,000

יציאת ברירת המחדל של ממשק המשתמש לניהול Edge

דפדפן

שרת ממשק המשתמש לניהול

9042

העברה מקומית של CQL

נתב

מעבד בקשות

שרת ניהול

קסנדרה

9,160

לקוח חיסכון של קסנדרה

נתב

מעבד בקשות

שרת ניהול

קסנדרה

10389

יציאת LDAP

שרת ניהול

OpenLDAP

15,999

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

מאזן עומסים נתב
59,001 היציאה שמשמשת את הכלי apigee-validate לבדיקה התקנת Edge apigee-validate נתב

59,002

היציאה בנתב שאליה נשלחות בקשות הדפים של SmartDocs

SmartDocs

נתב

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

כדי למנוע מצב כזה, Apigee ממליץ לשרת Cassandra, למעבד הודעות שהנתבים יהיו באותה רשת משנה כך שחומת אש לא מעורבת בפריסה של רכיבים.

אם חומת אש נמצאת בין הנתב למעבדי הודעות, ומוגדר זמן קצוב לתפוגה של tcp ללא פעילות, ההמלצות שלנו הן:

  1. מגדירים את net.ipv4.tcp_keepalive_time = 1800 בהגדרות ה-sysctl ב-Linux OS, שבהן הערך 1800 צריך להיות נמוך מהערך של חומת האש ללא פעילות. הזמן הקצוב לתפוגה של tcp. ההגדרה הזו צריכה להשאיר את החיבור במצב מוגדר כדי ש- חומת האש לא מנתקת את החיבור.
  2. בכל מעבדי ההודעות, עורכים את /&lt;inst_root&gt;/apigee/customer/application/message-processor.properties כדי להוסיף את המאפיין הבא. אם הקובץ לא קיים, יוצרים אותו.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  3. צריך להפעיל מחדש את מעבד ההודעות:
    &gt; /opt/apigee/apigee-service/bin/apigee-service edge-message-processor הפעלה מחדש
  4. בכל הנתבים, עורכים את /&lt;inst_root&gt;/apigee/customer/application/router.properties כדי להוסיף את המאפיין הבא. אם הקובץ לא קיים, יוצרים אותו.
    conf_system_cassandra.maxconnecttimeinmillis=-1
  5. מפעילים מחדש את הנתב:
    &gt; /opt/apigee/apigee-service/bin/apigee-service edge-router מחדש

אם מתקינים את 12 ההגדרות של אשכולות המארח עם שני מרכזי נתונים, צריך לוודא הצמתים בשני מרכזי הנתונים יכולים לתקשר באמצעות היציאות הבאות:

דרישות ליציאת API BaaS

אם תבחרו להתקין את BaaS של ה-API, תצטרכו להוסיף את הרכיבים של API BaaS Stack ו-API BaaS Portal. הרכיבים האלו משתמשים ביציאות הבאות:

ההערות בתרשים הזה:

  • פורטל ה-API BaaS אף פעם לא שולח בקשות ישירות לצומת של BaaS Stack. כאשר מפתח מתחברים לפורטל, ואפליקציית הפורטל מורידה אותו לדפדפן. אפליקציית הפורטל שפועלת ב- לאחר מכן הדפדפן שולח בקשות לצמתים של BaaS Stack.
  • התקנת ייצור של API BaaS משתמשת במאזן עומסים בין צומת ה-API BaaS Portal ו-API של BaaS Stack. כשמגדירים את הפורטל וכשמבצעים קריאות ל-BaaS API, לציין את כתובת ה-IP או את שם ה-DNS של מאזן העומסים, ולא של צומתי ה-Stack.
  • כל צומתי המקבצים צריכים לפתוח את היציאה 2551 כדי לקבל גישה מכל שאר צומתי ה-Stack (המידע הזה מציין חץ לולאה בתרשים שלמעלה עבור יציאה 2551 בצומתי הערימה). אם יש לכם כמה סוגי נתונים מרכזים, היציאה חייבת להיות נגישה מכל צומתי ה-Stack בכל מרכזי הנתונים.
  • צריך להגדיר את כל הצמתים של Baas Stack לשליחת אימיילים דרך שרת SMTP חיצוני. עבור ב-SMTP ללא TLS, מספר היציאה הוא בדרך כלל 25. ב-SMTP המותאם ל-TLS, בדרך כלל הוא 465, אבל צריך לבדוק באמצעות ספק ה-SMTP.
  • אפשר להקצות את צמתים של Cassandra ל-API BaaS, או לשתף אותם עם Edge.

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

רכיב

יציאה

תיאור

API BaaS Portal

9000

יציאה לממשק המשתמש של BaaS ל-API

סטאק API BaaS

8080

היציאה שבה מתקבלת בקשת ה-API

2551

יציאה לתקשורת בין כל צמתים ה-Stack. צריך להיות נגיש לכל שאר ה-Stack במספר הצמתים במערך הנתונים.

אם יש לכם כמה מרכזי נתונים, היציאה חייבת להיות נגישה מכל צומתי ה-Stack כל מרכזי הנתונים.

ElasticSearch

9200 עד 9400

לצורך תקשורת עם API BaaS Stack ולצורך תקשורת בין ElasticSearch צמתים

רישוי

כל התקנה של Edge דורשת קובץ רישיון ייחודי שמקבלים מ-Apigee. אתם צריך לספק את הנתיב לקובץ הרישיון כשמתקינים את שרת הניהול, לדוגמה /tmp/license.txt.

מנהל ההתקנה מעתיק את קובץ הרישיון אל /&lt;inst_root&gt;/apigee/customer/conf/license.txt.

אם קובץ הרישיון תקף, שרת הניהול מאמת את תפוגת התוקף ואת ההודעה המותרת מספר המעבד (MP). אם פג התוקף של אחת מהגדרות הרישיון, אפשר למצוא את היומנים המיקום הבא: /&lt;inst_root&gt;/apigee/var/log/edge-management-server/logs. במקרה כזה, תוכלו לפנות אל התמיכה של Apigee לקבלת פרטי ההעברה.

אם עדיין אין לך רישיון, אפשר ליצור קשר עם מחלקת המכירות כאן.