Edge for Private Cloud v4.18.05
הצורך בניהול חומת האש לא מוגבל רק למארחים הווירטואליים. גם חומות האש של המארחים הווירטואליים וגם חומות האש של המארחים הפיזיים צריכות לאפשר תעבורת נתונים ביציאות שנדרשות לרכיבים כדי לתקשר ביניהם.
דיאגרמות יציאות
בתמונות הבאות אפשר לראות את הדרישות לגבי השקעים במרכז נתונים יחיד ובהגדרות מרובות של מרכז הנתונים:
מרכז נתונים יחיד
בתמונה הבאה מוצגות דרישות היציאות לכל רכיב Edge בהגדרה אחת של מרכז נתונים:
הערות לגבי התרשים הזה:
- יציאות עם הקידומת 'M' הן יציאות שמשמשות לניהול הרכיב, וחובה שהן יהיו פתוחות ברכיב כדי ששרת הניהול יוכל לגשת אליהן.
- כדי לתמוך בלחצן שליחה בכלי המעקב, לממשק המשתמש של Edge נדרשת גישה לנתב, ביציאות שחשופות שרתי proxy ל-API.
- אפשר להגדיר גישה ליציאות JMX כך שתחייב שם משתמש/סיסמה. מידע נוסף זמין במאמר איך עוקבים.
- אפשר להגדיר גישה ל-TLS/SSL לחיבורים מסוימים, שיכולים להשתמש ביציאות שונות. מידע נוסף זמין במאמר TLS/SSL.
- אפשר להגדיר את שרת הניהול ואת ממשק המשתמש של Edge כך שישלחו אימיילים דרך שרת SMTP חיצוני. אם כן, צריך לוודא שלשרת הניהול ולממשק המשתמש יש גישה ליציאה הנדרשת בשרת ה-SMTP (לא מוצג). ב-SMTP ללא TLS, מספר היציאה הוא בדרך כלל 25. ב-SMTP שתומך ב-TLS, בדרך כלל זהו 465, אבל כדאי לבדוק עם ספק ה-SMTP.
כמה מרכזי נתונים
אם מתקינים תצורה של אשכולות עם 12 צמתים עם שני מרכזי נתונים, צריך לוודא שהצמתים בשני מרכזי הנתונים יכולים לתקשר ביציאות הבאות:
לתשומת ליבכם:
- לכל שרתי הניהול צריכה להיות גישה לכל צמתים של Cassandra בכל מרכזי הנתונים האחרים.
- כל מעבדי ההודעות בכל מרכזי הנתונים צריכים להיות מסוגלים לגשת זה לזה דרך יציאה 4528.
- לשרת הניהול צריכה להיות גישה לכל מעבדי ההודעות דרך יציאה 8082.
- לכל שרתי הניהול וכל צמתים של Qpid צריכה להיות גישה ל-Postgres בכל מרכזי הנתונים האחרים.
- מטעמי אבטחה, מלבד היציאות שצוינו למעלה וכל יציאה אחרת שנדרשת בהתאם לדרישות הרשת שלכם, אסור לפתוח יציאות אחרות בין מרכזי הנתונים.
פרטי היציאה
בטבלה הבאה מתוארים היציאות שצריך לפתוח בחומות האש, לפי רכיב Edge:
רכיב | יציאה | תיאור |
---|---|---|
יציאות HTTP רגילות | 80, 443 | HTTP וגם כל יציאה אחרת שבה אתם משתמשים למארחים וירטואליים |
Cassandra | 7000, 9042, 9160 | יציאות של Apache Cassandra לתקשורת בין צמתים של Cassandra ולגישה של רכיבי Edge אחרים. |
7199 | יציאת JMX. צריך להיות פתוח לגישה של שרת הניהול. | |
LDAP | 10389 | OpenLDAP |
שרת ניהול | 1099 | יציאת JMX |
4526 | יציאה למטמון מבוזר ולשיחות ניהול. אפשר להגדיר את השקע הזה. | |
8080 | יציאה לקריאות ל-API לניהול Edge. לרכיבים הבאים נדרשת גישה ליציאה 8080 בשרת הניהול: נתב, מעבד הודעות, ממשק משתמש, Postgres ו-Qpid. | |
ממשק משתמש לניהול | 9000 | יציאה לגישה של דפדפן לממשק המשתמש לניהול |
מעבד בקשות | 1101 | יציאת JMX |
4528 | לשמירת מטמון מבוזרת ולקריאות ניהול בין מעבדי ההודעות, ולתקשורת מהנתב ומשרת הניהול.
מעבד הודעות חייב לפתוח את היציאה 4528 כיציאת הניהול שלו. אם יש לכם כמה מעבדי הודעות, כל אחד מהם צריך להיות מסוגל לגשת לשאר המעבדים דרך יציאה 4528 (החץ של הלולאה בתרשים שלמעלה מציין את יציאה 4528 במעבד ההודעות). אם יש לכם כמה מרכזי נתונים, היציאה צריכה להיות נגישה מכל מעבדי ההודעות בכל מרכזי הנתונים. |
|
8082 |
יציאת ניהול שמוגדרת כברירת מחדל לעיבוד הודעות, וצריך שהיא תהיה פתוחה ברכיב כדי ששרת הניהול יוכל לגשת אליה. אם מגדירים TLS/SSL בין הנתב לבין מעבד ההודעות, הנתב משתמש בו כדי לבצע בדיקות תקינות של מעבד ההודעות. יציאה 8082 במעבד ההודעות צריכה להיות פתוחה לגישה של הנתב רק כשמגדירים TLS/SSL בין הנתב לבין מעבד ההודעות. אם לא מגדירים TLS/SSL בין הנתב לבין מעבד ההודעות, יציאת 8082 עדיין צריכה להיות פתוחה במעבד ההודעות כדי לנהל את הרכיב, אבל הנתב לא צריך גישה אליה. |
|
8443 | כאשר TLS מופעל בין הנתב ומעבד ההודעות, עליך לפתוח את יציאה 8443 במעבד ההודעות כדי לקבל גישה מהנתב. | |
8998 | יציאת מעבד הבקשות לתקשורת מהנתב | |
Postgres | 22 | אם מגדירים שני צומתי Postgres לשימוש ברפליקציית מאסטר במצב המתנה, צריך לפתוח את היציאה 22 בכל צומת כדי לקבל גישת SSH. |
1103 | יציאת JMX | |
4530 | לשיחות ניהול ומטמון מבוזרות | |
5432 | משמש לתקשורת מ-Qpid/Management Server אל Postgres | |
8084 | יציאת הניהול שמוגדרת כברירת מחדל בשרת Postgres, וצריך שהיא תהיה פתוחה ברכיב כדי ששרת הניהול יוכל לגשת אליה. | |
Qpid | 1102 | יציאת JMX |
4529 | לשיחות מבוזרות של מטמון וניהול | |
5672 |
|
|
8083 | יציאת הניהול שמוגדרת כברירת מחדל בשרת Qpid, וצריך שהיא תהיה פתוחה ברכיב כדי ששרת הניהול יוכל לגשת אליה. | |
נתב | 4527 | לשיחות ניהול ומטמון מבוזרות.
הנתב חייב לפתוח את יציאה 4527 כיציאת הניהול שלו. אם יש לכם כמה נתבים, כל אחד מהם צריך להיות מסוגל לגשת לשאר הנתבים דרך יציאה 4527 (החץ של הלולאה בתרשים שלמעלה מציין את יציאה 4527 בנתב). זו אמנם לא חובה, אבל אפשר לפתוח את היציאה 4527 בנתב כדי לקבל גישה באמצעות כל מעבד הודעות. אחרת, יכול להיות שיופיעו הודעות שגיאה בקובצי היומן של מעבד ההודעות. |
8081 | יציאת ברירת המחדל לניהול הנתב חייבת להיות פתוחה ברכיב כדי ששרת הניהול יוכל לגשת אליה. | |
15999 |
יציאה לבדיקת תקינות. מאזן העומסים משתמש ביציאה הזו כדי לקבוע אם הנתב זמין. כדי לקבל את הסטטוס של נתב, מאזן העומסים שולח בקשה ליציאה 15999 בנתב: curl -v http://routerIP:15999/v1/servers/self/reachable אם אפשר לגשת לנתב, הבקשה מחזירה את הערך HTTP 200. |
|
59001 | היציאה שבה נעשה שימוש לבדיקה של התקנת Edge באמצעות הכלי apigee-validate .
כדי להשתמש בכלי הזה, נדרשת גישה ליציאה 59001 בנתב. אפשר לקרוא מידע נוסף בקטע
בדיקת ההתקנה ביציאה 59001. |
|
SmartDocs | 59002 | היציאה בנתב Edge שאליה נשלחות בקשות הדפים של SmartDocs. |
ZooKeeper | 2181 | משמש רכיבים אחרים כמו שרת ניהול, נתב, מעבד הודעות וכו' |
2888, 3888 | משמש באופן פנימי את ZoomKeeper לאשכול שלzoKeeper (שנקרא 'אוסף תנועת ששומרים') |
בטבלה הבאה מוצגים אותם יציאות, ממוספרות, עם רכיבי המקור והיעד:
מספר יציאה | מטרה | רכיב המקור | רכיב יעד |
---|---|---|---|
virtual_host_port | HTTP וגם כל יציאה אחרת שבה אתם משתמשים לתנועה של קריאות API למארח וירטואלי. בדרך כלל משתמשים ביציאות 80 ו-443. נתב ההודעות יכול לסיים חיבורי TLS (אבטחת שכבת התעבורה) או SSL. | לקוח חיצוני (או מאזן עומסים) | מאזין בנתב ההודעות |
1099 עד 1103 | ניהול JMX | לקוח JMX | שרת ניהול (1099) מעבד הודעות (1101) שרת Qpid (1102) שרת Postgres (1103) |
2181 | תקשורת של לקוח Zookeeper | שרת ניהול נתב מעבד הודעות שרת Qpid שרת Postgres |
Zookeeper |
2888 ו-3888 | ניהול קישורים בין-עיניים ב-zookeeper | Zookeeper | 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 | יציאת ה-Management API | לקוחות Management API | שרת ניהול |
8081 עד 8084 |
יציאות של ממשקי API לרכיבים, המשמשות להנפקת בקשות API ישירות לרכיבים נפרדים. כל רכיב פותח יציאה אחרת. היציאה המדויקת שבה נעשה שימוש תלויה בתצורה, אבל היא חייבת להיות פתוחה ברכיב כדי ששרת הניהול יוכל לגשת אליה. |
לקוחות Management API | נתב (8081) מעבד הודעות (8082) שרת Qpid (8083) שרת Postgres (8084) |
8443 | תקשורת בין הנתב לבין מעבד ההודעות כש-TLS מופעל | נתב | מעבד בקשות |
8998 | תקשורת בין הנתב לבין מעבד הבקשות | נתב | מעבד בקשות |
9000 | יציאת ברירת המחדל של ממשק המשתמש לניהול Edge | דפדפן | שרת של ממשק משתמש לניהול |
9042 | העברה מקומית של CQL | נתב מעבד בקשות שרת ניהול |
Cassandra |
9160 | לקוח Thrift של Cassandra | נתב מעבד הודעות שרת ניהול |
Cassandra |
10389 | יציאת LDAP | שרת ניהול | OpenLDAP |
15999 | יציאה לבדיקת התקינות. מאזן עומסים משתמש ביציאה הזו כדי לקבוע אם הנתב זמין. | מאזן עומסים | נתב |
59001 | היציאה שמשמשת את כלי השירות apigee-validate לבדיקת התקנת Edge |
apigee-validate | נתב |
59002 | יציאת הנתב שאליה נשלחות בקשות לדפי SmartDocs | SmartDocs | נתב |
מעבד הודעות משאיר מאגר חיבור ייעודי ל-Cassandra, שמוגדר לו ללא זמן קצוב לתפוגה. כשחומת אש נמצאת בין Message Processor לבין שרת Cassandra, חומת האש יכולה להפסיק את החיבור בגלל תפוגת הזמן. עם זאת, מעבד ההודעות לא מיועד ליצירת חיבורים מחדש ל-Cassandra.
כדי למנוע מצב כזה, ב-Apigee ממליצים ששרת Cassandra, מעבד ההודעות והנתבים יהיו באותה תת-רשת, כדי שחומת אש לא תהיה מעורבת בפריסה של הרכיבים האלה.
אם יש חומת אש בין הנתב לבין מעבדי ההודעות, והוגדר לה זמן קצוב לתפוגה של TCP במצב חוסר פעילות, מומלץ לבצע את הפעולות הבאות:
- מגדירים את
net.ipv4.tcp_keepalive_time = 1800
בהגדרות sysctl במערכת ההפעלה Linux, כאשר הערך 1800 צריך להיות נמוך יותר מזמן הקצאת הזמן הקצוב לתפוגה (timeout) של 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