Edge for Private Cloud גרסה 4.18.01
דרישות החומרה
כדי לקבל רמת זמינות גבוהה, צריך לעמוד בדרישות החומרה המינימליות הבאות בסביבת ייצור. בכל תרחישי ההתקנה שמתוארים במדיניות הטופולוגיות של ההתקנה, בטבלאות הבאות מפורטות דרישות חומרה מינימליות עבור רכיבי ההתקנה.
בטבלאות האלה דרישות הדיסק הקשיח הן בנוסף לשטח הדיסק הקשיח שנדרש על ידי במערכת ההפעלה. בהתאם לאפליקציות ולתנועה ברשת שלך, ייתכן שההתקנה דורש יותר או פחות משאבים מהמפורט בהמשך.
רכיב התקנה | 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 מבוסס על ניתוח הנתונים שנוצר על ידי Edge מחוץ לתיבה. אם מוסיפים ערכים מותאמים אישית לנתוני הניתוח, צריך להגדיל את הערכים האלה בהתאם. משתמשים בנוסחה הבאה כדי להעריך את נפח האחסון הנדרש:
bytes of storage needed =
(# bytes of analytics data/request) *
(requests/second) *
(seconds/hour) *
(hours of peak usage/day) *
(days/month) *
(months of data retention)
לדוגמה:
(2K bytes) * (100 req/sec) * (3600 secs/hr) * (18 peak hours/day) * (30 days/month) * (3 months retention)
= 1,194,393,600,000 bytes or 1194.4 GB
*** מומלץ להשתמש באחסון רשת עבור מסד נתונים של 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 |
קסנדרה** | 16GB | 8 ליבות | אחסון מקומי בנפח 250GB עם SSD או HDD מהיר עם תמיכה ב-2000 IOPS |
* אפשר להתקין את ElasticSearch ו-API BaaS Stack באותו צומת. אם תעשה זאת, להגדיר את ElasticSearch להשתמש בזיכרון של 4GB (ברירת מחדל). אם ElasticSearch מותקן ב- צומת משלו, ואז להגדיר אותו להשתמש בזיכרון של 6GB.
** אופציונלי; בדרך כלל משתמשים באותו אשכול Cassandra גם ב-BaaS וגם ב-Edge שירותים.
מערכת הפעלה וצדדים שלישיים דרישות תוכנה
הנחיות ההתקנה וקובצי ההתקנה שסופקו נבדקו במערכות ההפעלה ובתוכנות צד שלישי המפורטות ב תוכנות נתמכות וגרסאות נתמכות
יצירת המשתמש ב-apigee
תהליך ההתקנה יוצר משתמש במערכת Unix בשם 'apigee'. ספריות קצה וגם הקבצים הם בבעלות 'apigee' וגם תהליכי Edge. כלומר רכיבי Edge פועלים 'apigee' משתמש. במקרה הצורך, ניתן להריץ רכיבים כמשתמש אחר.
ספריית התקנה
כברירת מחדל, מנהל ההתקנה כותב את כל הקבצים לספרייה /opt/apigee
. שלך
לא ניתן לשנות את מיקום הספרייה הזה. למרות שלא ניתן לשנות את הספרייה הזו, אפשר ליצור
קישור סימבולי למיפוי של /opt/apigee
למיקום אחר, כפי שמתואר בהמשך.
בהוראות שבמדריך הזה, ספריית ההתקנה מצוינת
/opt/apigee
יצירת קישור סימבולי מ-/opt/apigee
לפני שיוצרים את הקישור הסמלי, צריך קודם ליצור משתמש וקבוצה בשם 'apigee'. הדבר אותה קבוצה ומשתמש שנוצרו על ידי מנהל ההתקנה של Edge.
כדי ליצור את הקישור הסימבולי, צריך לבצע את השלבים הבאים לפני שמורידים את הקובץ bootrap_4.18.01.sh. צריך לבצע את כל השלבים האלה ברמה הבסיסית (root):
- יוצרים את ה-apigee משתמש וקבוצה:
groupadd -r apigee > useradd -r -g apigee -d /opt/apigee -s /sbin/nologin -c "Apigee platform user" apigee
- יוצרים קישור סימבולי מ-
/opt/apigee
לרמה הבסיסית (root) של ההתקנה:ln -Ts /srv/myInstallDir /opt/apigee
כאשר /srv/myInstallDir הוא המיקום הרצוי של קובצי ה-Edge.
- שינוי הבעלות על הרמה הבסיסית (root) של ההתקנה והקישור הסמלי ל-apigee user:
chown -h apigee:apigee /srv/myInstallDir /opt/apigee
Java
נדרשת גרסה נתמכת של Java 1.8 בכל מחשב לפני ההתקנה. מפתחות ה-JDK הנתמכים מפורטים כאן תוכנות נתמכות וגרסאות נתמכות
צריך לוודא ש-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 מוגדרת
נכון באמצעות עיון ב/opt/apigee/apigee-cassandra/conf/cassandra.yaml
חדש. לדוגמה, צריך לוודא שסקריפט ההתקנה של Edge for Private Cloud מגדיר את הרכיבים הבאים:
נכסים:
cluster_name
initial_token
partitioner
seeds
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
כדי להגדיר את הערכים האלה:
- עורכים את הקובץ postgresql.properties:
vi /opt/apigee/customer/application/postgresql.properties
אם הקובץ לא קיים, יוצרים אותו.
- מגדירים את המאפיינים המפורטים למעלה.
- שומרים את השינויים.
- מפעילים מחדש את מסד הנתונים של PostgreSQL:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql restart
מגבלות מערכת
עליך לוודא שהגדרת את מגבלות המערכת הבאות ב-Cassandra ובמעבד ההודעות צמתים:
- בצמתים של Cassandra, מגדירים מגבלות ל-memlock בקטע רך וקשה, ללא קובץ ומרחב כתובות (כ)
משתמש התקנה (ברירת המחדל היא 'apigee') ב-
/etc/security/limits.d/90-apigee-edge-limits.conf
כפי שמוצג בהמשך:apigee soft memlock unlimited apigee hard memlock unlimited apigee soft nofile 32768 apigee hard nofile 65536 apigee soft as unlimited apigee hard as unlimited
- בצמתים של מעבד הודעות, מגדירים את המספר המקסימלי של מתארי קבצים פתוחים ל-64K
ב-
/etc/security/limits.d/90-apigee-edge-limits.conf
כ- מוצגת למטה: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:
- בכל צומת של מעבד הודעות, עורכים את
/etc/nscd.conf
- מגדירים את המאפיין הבא:
enable-cache hosts no
השבתת IPv6 ב-Google Cloud פלטפורמה ל-RedHat/CentOS 7
אם מתקינים את Edge ב-RedHat 7 או CentOS 7 ב-Google Cloud Platform, חייבים להשבית את IPv6 בכל צומתי Qpid.
במסמכי התיעוד של RedHat או CentOS מפורטות הגרסה הספציפית של מערכת ההפעלה הרלוונטית. השבתת IPv6. לדוגמה, אפשר:
- פתיחת
/etc/hosts
בעורך. - הוספת "#" בעמודה אחת מהשורה הבאה כדי להוסיף תגובה:
#::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
- שומרים את הקובץ.
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 |
libxslt |
סיבובים לדקה |
לפרוס את קובץ ה-ZIP |
שם בסיס |
GRep |
lua-socket |
rpm2cpio |
הוספת משתמש |
באש |
hostname |
ls |
Sed |
wc |
bc |
id [מזהה] |
רשת כלים |
sudo |
wget |
curl |
ליביו |
perl (מ-procps) |
זפת |
Xerces-c |
קירוס-סאסל | libdb4 | pgRep (מ-procps) | tr | טעים |
תאריך |
libdb-cxx |
PS |
Uuid |
chkconfig |
dirname | ליביבים | pwd | אושם | |
echo | librdmacm | python |
ntpdate
מומלץ להשתמש בשרתים פעמים סונכרנו. אם עדיין לא הוגדר,
הכלי ntpdate
יכול למלא את המטרה הזו, שמאמתת
האם שרתים מסונכרנים בזמן. אפשר להשתמש ב-yum install ntp
כדי להתקין את
של Google. זה שימושי במיוחד לשכפול הגדרות OpenLDAP. שימו לב שאתם מגדירים שרת
אזור הזמן לפי שעון UTC.
Openldap 2.4
כדי להתקין את האפליקציה המקומית נדרשת OpenLDAP 2.4. אם המיקום
לשרת יש חיבור לאינטרנט, ולאחר מכן קובץ הסקריפט להתקנת Edge יורד ומתקין
OpenLDAP. אם לשרת שלך אין חיבור לאינטרנט, עליך לוודא ש-OpenLDAP הוא
שכבר התקנתם לפני הרצת סקריפט ההתקנה של Edge. ב-RHEL/CentOS אפשר להריץ
yum install openldap-clients openldap-servers
כדי להתקין את OpenLDAP.
עבור התקנות של 13 מארחים ו-12 התקנות של מארחים עם שני מרכזי נתונים, צריך רפליקציה של OpenLDAP כי יש מספר צמתים שמארחים את OpenLDAP.
חומות אש ומארחים וירטואליים
המונח virtual
עמוס בדרך כלל בזירת ה-IT, ולכן יש לו
Apigee Edge לפריסה בענן פרטי ולמארחים וירטואליים. כדי להבהיר, יש שני סוגים של
שימושים במונח virtual
:
- מכונות וירטואליות (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
. אם תפרסו את ה-API mycompany שלכם עם
כתובת ה-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. |
בטבלה הבאה מוצגות אותן יציאות, לפי סדר מספרי, עם המקור והיעד רכיבים:
מספר יציאה | מטרה | רכיב מקור | רכיב יעד |
---|---|---|---|
virtual_host_port | HTTP וכל יציאות אחרות שמשמשות לתנועת קריאות ל-API של מארח וירטואלי. יציאות 80 ו-443 הם הנפוצים ביותר, נתב ההודעות יכול לסיים חיבורי TLS/SSL. | לקוח חיצוני (או מאזן עומסים) | האזנה בנתב ההודעות |
1099 עד 1103 | ניהול JMX | לקוח JMX | שרת ניהול (1099) מעבד הודעות (1101) שרת Qpid (1102) Postgres Server (1103) |
2181 | תקשורת עם הלקוח של גן החיות | שרת ניהול נתב מעבד הודעות שרת Qpid שרת Postgres |
שומר גן חיות |
2888 ו-3888 | ניהול קישורים בין-עיניים ב-zookeeper | שומר גן חיות | שומר גן חיות |
4526 | יציאת ניהול RPC | שרת ניהול | שרת ניהול |
4527 | יציאת ניהול RPC לניהול מטמון ולשיחות ניהול מבוזרות ולתקשורת בין נתבים | הנתב שרת הניהול |
נתב |
4528 | לשיחות מטמון מבוזרות בין מעבדי הודעות ולתקשורת מהנתב | שרת ניהול נתב מעבד הודעות |
מעבד בקשות |
4529 | יציאת ניהול RPC לשיחות מטמון מבוזרות וניהול קריאות | שרת ניהול | שרת Qpid |
4530 | יציאת ניהול RPC לשיחות מטמון מבוזרות וניהול קריאות | שרת ניהול | שרת Postgres |
5432 | לקוח Postgres | שרת Qpid | Postgres |
5672 |
משמש לשליחת ניתוח נתונים מהנתב וממעבד ההודעות אל Qpid |
נתב מעבד הודעות |
שרת Qpid |
7000 | תקשורת בין צמתים של Cassandra | קסנדרה | צומת אחר של Cassandra |
7199 | ניהול JMX. חייבת להיות פתוחה לגישה בצומת Cassandra על ידי ההנהלה שרת. | לקוח JMX | קסנדרה |
8080 | יציאת ממשק ה-API לניהול | לקוחות של Management API | שרת ניהול |
8081 עד 8084 |
יציאות של Component API, המשמשות לשליחת בקשות API ישירות לרכיבים בודדים. כל רכיב פותח יציאה אחרת. היציאה המדויקת שבה נעשה שימוש תלויה בתצורה אבל חייבות להיות פתוחות ברכיב לגישה של שרת הניהול |
לקוחות של Management API | Router (8081) מעבד הודעות (8082) שרת Qpid (8083) Postgres Server (8084) |
8998 | התקשורת בין הנתב ומעבד ההודעות | נתב | מעבד בקשות |
9000 | יציאת ברירת המחדל של ממשק המשתמש לניהול Edge | דפדפן | שרת ממשק המשתמש לניהול |
9042 | העברה מקומית של CQL | נתב מעבד הודעות שרת ניהול |
קסנדרה |
9160 | לקוח חיסכון של קסנדרה | נתב מעבד הודעות שרת ניהול |
קסנדרה |
10389 | יציאת LDAP | שרת ניהול | OpenLDAP |
15999 | יציאה לבדיקת התקינות. מאזן עומסים משתמש ביציאה הזאת כדי לקבוע אם הנתב זמינים. | מאזן עומסים | נתב |
59001 | היציאה שמשמשת את כלי השירות apigee-validate לבדיקת התקנת Edge |
apigee-validate | נתב |
59002 | היציאה בנתב שאליה נשלחות בקשות הדפים של SmartDocs | SmartDocs | נתב |
מעבד הודעות משאיר מאגר חיבור ייעודי ל-Cassandra, שמוגדר ואף פעם לא יפוג. כשחומת אש נמצאת בין מעבד הודעות לבין שרת Cassandra, חומת אש יכולה לקצר את זמן החיבור. עם זאת, מעבד ההודעות לא נועד לחדש את החיבורים לקסנדרה.
כדי למנוע מצב כזה, Apigee ממליץ לשרת Cassandra, למעבד הודעות שהנתבים יהיו באותה רשת משנה כך שחומת אש לא מעורבת בפריסה של רכיבים.
אם חומת אש נמצאת בין הנתב למעבדי הודעות, ומוגדר זמן קצוב לתפוגה של tcp ללא פעילות, ההמלצות שלנו הן:
- להגדיר את
net.ipv4.tcp_keepalive_time = 1800
בהגדרות Sysctl ב-Linux OS, כאשר הערך 1800 צריך להיות נמוך יותר מהזמן הקצוב לתפוגה של tcp ללא פעילות בחומת האש. ההגדרה הזו אמורה להשאיר את במצב קיים כך שחומת האש לא תנתק את החיבור. - בכל מעבדי ההודעות, עורכים
/opt/apigee/customer/application/message-processor.properties
כדי להוסיף את המאפיין הבא. אם הקובץ לא קיים, יוצרים אותו.conf_system_cassandra.maxconnecttimeinmillis=-1
- מפעילים מחדש את מעבד ההודעות:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- בכל הנתבים, יש לערוך את
/opt/apigee/customer/application/router.properties
כדי להוסיף את המאפיין הבא. אם הקובץ לא קיים, יוצרים אותו.conf_system_cassandra.maxconnecttimeinmillis=-1
- מפעילים מחדש את הנתב:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
אם מתקינים את 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 | 9000 | יציאה לממשק המשתמש של BaaS ל-API |
מקבץ BaaS ל-API | 8080 | היציאה שבה מתקבלת בקשת ה-API |
2551 |
יציאה לתקשורת בין כל צמתים ה-Stack. צריך להיות נגיש לכל שאר ה-Stack במספר הצמתים במערך הנתונים. אם יש לכם כמה מרכזי נתונים, היציאה חייבת להיות נגישה מכל צומתי ה-Stack כל מרכזי הנתונים. |
|
ElasticSearch | 9200 עד 9400 | לצורך תקשורת עם API BaaS Stack ולצורך תקשורת בין ElasticSearch צמתים |
רישוי
כל התקנה של Edge דורשת קובץ רישיון ייחודי שמקבלים מ-Apigee. אתם צריך לספק את הנתיב לקובץ הרישיון כשמתקינים את שרת הניהול, לדוגמה /tmp/license.txt.
מנהל ההתקנה מעתיק את קובץ הרישיון אל
/opt/apigee/customer/conf/license.txt
אם קובץ הרישיון תקף, שרת הניהול מאמת את תפוגת התוקף ואת ההודעה המותרת
מספר המעבד (MP). אם פג התוקף של אחת מהגדרות הרישיון, אפשר למצוא את היומנים
המיקום הבא: /opt/apigee/var/log/edge-management-server/logs
.
במקרה כזה, תוכלו לפנות לתמיכה של Apigee Edge כדי לקבל פרטי העברה.
אם עדיין אין לכם רישיון, צריך לפנות למחלקת המכירות של Apigee.