דרישות לגבי יציאות

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

דיאגרמות יציאות

בתמונות הבאות מוצגות הדרישות לגבי יציאות גם למרכז נתונים יחיד וגם להגדרה של כמה מרכז נתונים:

מרכז נתונים יחיד

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

דרישות לגבי יציאות לכל רכיב Edge בתצורה אחת של מרכז נתונים

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

  • היציאות עם התחילית M הן יציאות שמשמשות לניהול הרכיב וצריכות להיות פתוחות ברכיב כדי ששרת הניהול יוכל לגשת אליהן.
  • כדי לתמוך בלחצן Send בכלי המעקב, צריך לתת לממשק המשתמש של Edge גישה לנתב ביציאות שחשפו על ידי שרתי proxy של API.
  • ניתן להגדיר את הגישה ליציאות JMX כך שיחייבו שם משתמש/סיסמה. מידע נוסף זמין במאמר איך מבצעים מעקב.
  • אפשר להגדיר גישה של TLS/SSL עבור חיבורים מסוימים, שניתן להשתמש בהם ביציאות שונות. למידע נוסף, ראו TLS/SSL.
  • אפשר להגדיר ששרת הניהול וממשק המשתמש של Edge יישלחו אימיילים דרך שרת SMTP חיצוני. אם עושים זאת, צריך לוודא ששרת הניהול וממשק המשתמש יכולים לגשת ליציאה הנדרשת בשרת ה-SMTP (לא מוצגת). ב-SMTP שאינו TLS, מספר היציאה הוא בדרך כלל 25. בשרת SMTP שתואם ל-TLS (אבטחת שכבת התעבורה), בדרך כלל הוא 465, אבל צריך לבדוק אצל ספק ה-SMTP.

מרכזי נתונים מרובים

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

דרישות לגבי יציאות לכל צומת בקיבוץ של 12 צמתים

לתשומת ליבכם:

  • כל שרתי הניהול צריכים לקבל גישה לכל הצמתים של Cassandra בכל שאר מרכזי הנתונים.
  • כל מעבדי ההודעות בכל מרכזי הנתונים צריכים להיות מסוגלים לגשת זה לזה דרך יציאה 4528.
  • לשרת הניהול חייבת להיות גישה לכל מעבדי ההודעות ביציאה 8082.
  • כל שרתי הניהול וכל הצמתים של Qpid חייבים להיות מסוגלים לגשת ל-Postgres בכל שאר מרכזי הנתונים.
  • מטעמי אבטחה, מלבד היציאות שמוצגות למעלה ואחרות שנדרשות על פי דרישות הרשת שלכם, לא אמורות להיות יציאות אחרות בין מרכזי נתונים.

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

פרטי היציאה

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

רכיב נמל תיאור
יציאות HTTP סטנדרטיות 80, 443 HTTP בנוסף לכל היציאות האחרות שבהן משתמשים למארחים וירטואליים
SSO ב-Apigee 9099 חיבורים מ-IdP חיצוניים, משרת הניהול ומדפדפנים לצורך אימות.
קסנדרה 7000, 9042, 9160 יציאות Apache Cassandra לתקשורת בין צומתי Cassandra ולגישה באמצעות רכיבי Edge אחרים.
7199 יציאת JMX. חייב להיות פתוח לגישה של שרת הניהול.
LDAP 10389 OpenLDAP
שרת ניהול 1099 יציאת JMX
4526 יציאה למטמון מבוזר ושיחות ניהול. ניתן להגדיר את היציאה הזו.
5636 יציאה להתראות לגבי התחייבות להפעלת מונטיזציה.
8080 יציאה לקריאות ל-Edge Management API. לרכיבים האלה נדרשת גישה ליציאה 8080 בשרת הניהול: נתב, מעבד הודעות, UI, Postgres, Apigee SSO (אם מופעל) ו-Qpid.
ממשק משתמש לניהול 9,000 יציאה לגישת הדפדפן לממשק המשתמש לניהול
מעבד בקשות 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
  • Single data center (מרכז נתונים יחיד): משמש לשליחת ניתוח נתונים מהנתב וממעבד ההודעות אל Qpid.
  • מרכזי נתונים מרובים: השירות משמש לתקשורת בין צומתי Qpid במרכזי נתונים שונים.

משמש גם לתקשורת בין שרת Qpid לרכיבי מתווך באותו צומת. בטופולוגיה עם מספר צמתים של Qpid, השרת צריך להיות מסוגל להתחבר לכל המתווכים ביציאה 5672.

8083 יציאת הניהול המוגדרת כברירת מחדל בשרת Qpid חייבת להיות פתוחה ברכיב כדי לאפשר גישה של שרת הניהול.
8090 יציאת ברירת המחדל של Qpid's Broker; חייבת להיות פתוחה כדי לגשת למסוף הניהול של Broker או לממשקי ה-API לניהול למטרות מעקב.
נתב 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 משמש באופן פנימי על ידי התאמות של התאמות שיבוצעו (IoKeeper) לאשכול).

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

מספר יציאה מטרה רכיב מקור רכיב יעד
virtual_host_port HTTP בתוספת כל יציאות אחרות שבהן אתה משתמש לתנועת קריאות לממשק ה-API של המארח הווירטואלי. היציאות 80 ו-443 הן הנפוצות ביותר. נתב ההודעות יכול לסיים חיבורי TLS/SSL. לקוח חיצוני (או מאזן עומסים) האזנה לנתב ההודעות
1099 עד 1103 ניהול JMX לקוח JMX Management Server (1099)
Message processing (1101)
Qpid Server (1102)
Postgres Server (1103)
2181 תקשורת עם לקוחות שלzokeeper שרת ניהול
נתב
מעבד הודעות
שרת Qpid
שרת Postgres
שומרי גן חיות
2888 ו-3888 ניהול צמתים של גן חיות שומרי גן חיות שומרי גן חיות
4526 יציאה לניהול RPC שרת ניהול שרת ניהול
4527 יציאת ניהול RPC להפעלות מבוזרות של מטמון וניהול, ולתקשורת בין נתבים נתב
שרת ניהול
נתב
4528 לקריאות מבוזרות של מטמון בין מעבדי הודעות ולתקשורת מהנתב שרת ניהול
נתב
מעבד הודעות
מעבד בקשות
4529 יציאת ניהול RPC לקריאות מבוזרות של מטמון וניהול שרת ניהול שרת Qpid
4530 יציאת ניהול RPC לקריאות מבוזרות של מטמון וניהול שרת ניהול שרת Postgres
5432 לקוח Postgres שרת Qpid Postgres
5636 מונטיזציה רכיב JMS חיצוני שרת ניהול
5672
  • Single data center (מרכז נתונים יחיד): משמש לשליחת ניתוח נתונים מהנתב וממעבד ההודעות אל Qpid.
  • מרכזי נתונים מרובים: השירות משמש לתקשורת בין צומתי Qpid במרכזי נתונים שונים.

משמש גם לתקשורת בין שרת Qpid לרכיבי מתווך באותו צומת. בטופולוגיה עם מספר צמתים של Qpid, השרת צריך להיות מסוגל להתחבר לכל המתווכים ביציאה 5672.

שרת Qpid שרת Qpid
7000 תקשורת בין צמתים של Cassandra קסנדרה צומת נוסף של Cassandra
7199 ניהול JMX. חייב להיות פתוח לגישה של שרת הניהול בצומת Cassandra. לקוח JMX קסנדרה
8080 יציאת ממשק API לניהול לקוחות של ממשק API לניהול שרת ניהול
8081 עד 8084

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

לקוחות של ממשק API לניהול נתב (8081)
מעבד הודעות (8082)
שרת Qpid (8083)
שרת Postgres (8084)
8090 יציאת הניהול המוגדרת כברירת מחדל ל-Qpid's Broker, לצורך ניהול תורים ומעקב אחריהם. לקוח דפדפן או API Qpid Broker (apigee-qpidd)
8443 התקשורת בין הנתב ומעבד ההודעות כש-TLS מופעל נתב מעבד בקשות
8998 התקשורת בין הנתב למעבד ההודעות נתב מעבד בקשות
9000 יציאת ברירת המחדל של ממשק המשתמש לניהול Edge דפדפן שרת ניהול ממשק משתמש
9042 תעבורת נתונים מקומית של CQL נתב
מעבד הודעות
שרת ניהול
קסנדרה
9099 אימות IdP חיצוני IDP, דפדפן ושרת ניהול SSO ב-Apigee
9160 Cassandra thrift Client נתב
מעבד הודעות
שרת ניהול
קסנדרה
10389 יציאת LDAP שרת ניהול OpenLDAP
15999 יציאה לבדיקת תקינות. מאזן עומסים משתמש ביציאה הזו כדי לקבוע אם הנתב זמין. מאזן עומסים נתב
59001 היציאה שבה משתמש כלי השירות apigee-validate כדי לבדוק את התקנת Edge apigee-validate נתב
59002 יציאת הנתב שאליה נשלחות בקשות הדפים של SmartDocs SmartDocs נתב

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

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

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

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