Home Windows ServerWindows Features Network Load Balancing | NLB

Network Load Balancing | NLB

by Tal Ben Shushan 06/03/2014 0 comment
Network Load Balancing | NLB
נהנתם מהמאמר ? שתפו אותו!

Network Load Balancing | NLB

NLB הוא למעשה Cluster הגורם ליתירות ולשרידות אתר אינטרנט, Termminal ועוד (לרוב לשירותי IIS) הוא מבצע חילוק של העומסים בין השרתים ומפנה משתמשים לשרת 1 ואז לשרת 2 וכן הלאה.

Node = שרת הנמצא כחלק מהCluster

על ידי Heartbeat הקיים ב Cluster (שולח Packets על מנת לבדוק אם השרת עדיין פעיל) כל הזמן וב Intreval קבוע בזמן, קובעים שאר ה Nodes בCluster אם אחד מהם קרס ובכך אם אחד מהם קרס יפנה הCluster את המשתמשים אל שאר הNode אחר שהוא חלק מה- Cluster.

החסרון הגדול של NLB שאינו בודק את ה Service או Program  בNode ובכך אם שירות ה IIS יפול, אבל הDC עדיין מחובר לאינטרנט עדיין ישלח ה NLB משתמשים אל שרת זה! קיימים הרבה חברות LB בשוק שלא אציין כאן שנותנות מענה ברמת התוכנה.

במאמר זה אציג שרת IIS עם Replication (אפילו אתר סטטי ניתן לביצוע) כיצד מגדירים את ה  NLB Cluster מה קורה כאשר אחד השרתים נופל ואילו הגדרות קיימות ב NLB

דרישות:

* 2 שרתי DC2 ו DC2

* IIS מותקן על 2 הDC’s

נתחיל…

נפתח את ה Server Manager -> Tools -> Add Roles

נגיע ל Features ונוסיף את Network Load Balancing

התקינו בDC1

התקינו בDC1

נבצע את אותה התקנה גם בDC3 אשר ישמש חבר ב Cluster

התקינו גם בDC3

התקינו גם בDC3

נפתח את Tools ונלחץ על Network Load Balancing Manager

היכנסו ל NLB Manager

היכנסו ל NLB Manager

נלחץ קליק ימני על Network Load Balancing ואז New Cluster

New Cluster

New Cluster

נבחר את הNode הראשון שהוא DC1 ונלחץ Connect ו Next

שם הDC ולחצו Connect

שם הDC ולחצו Connect

לחצו שוב Next

Next

Next

כעת ניתן כתובת לCluster עצמו (כאשר מבצעים זאת בסביבת Production הגדירו בין השרתים אייפי פנימי ואת החיצוני לCluster בלבד)

לחצו על ADD

לא לשכוח! להכניס את הIP הזה ב Exclude ב DHCP

לא לשכוח! להכניס את הIP הזה ב Exclude ב DHCP

אני נותן ל לCluster את הכתובת 110.

לא לשכוח! להכניס את הIP הזה ב Exclude ב DHCP

לא לשכוח! להכניס את הIP הזה ב Exclude ב DHCP

לחצו OK ואז Next

נרשום את כתובת האתר שלנו, שהוא website.bensho.com

עכשיו! קיימים 3 אפשרויות Unicast , Multicast, IGMP multicast בחרו ב Multicast

הסבר קצר,

Unicast- מגדיר לכל כרטיסי הרשת אותו Mac Address, על מנת שהסוויצ’ או הראוטר לא ידעו שלכולם יש אותו MAC ADDR הוא ישנה את ה Packtes בחילת השליחה עם כתובת אחרת. – בעיות נפוצות – יצירת מצב של “הצפה של הסוויצ'” וקיים צורך בסוויצ’ נוסף שיחבר בין 2 הDC’S

Multicast – שלא כמו uni משתמש בMac Address המקורי של כל כרטיס רשת, הפקטים נשלחים דרך כתובת הIP באופן רגיל

IGMP Multicast – חשוב מאוד אפשרות זו דומה ל Multicast  שהסברתי למעלה אבל! אם אינכם מגדירים IGMP יכול לקרות מצב שתאלצו לבצע קינפוג לסוויצ’ על מנת שהכל יעבוד כשורה (נקרא גם MLD בIPV6) והוא בעצם מגלה פורטים .

שוב, בחרו ב Multicast

שנו ל Multicast

שנו ל Multicast

לחצו Next

במסך זה תוכלו לראות שהcluster מקבל על IP עם פורט מ0 עד 65535 וניתן להגדיר פורט מסוים לאיזה Cluster

לחצו על Edit ונסביר מושג חשוב

מאזין לכל הפורטים מ0 עד 65535

מאזין לכל הפורטים מ0 עד 65535

Affinity

אומר שברגע שמחשב מסוים התחבר לNode (נאמר DC1) והכל תקין, הוא ישאר בDC1 זאת אומרת שהוא לא יבצע פעם שרת X פעם שרת Y הוא ימשיך להיות מחובר לאותו הDC ובכן ניתן להגדיר כיצד הוא יבצע זאת על ידי שינוי סוג ה-affinity

Single affinity הוא מצב של משתמש המתחבר לNode מסוים ונשאר בו ככל הניתן אבל יוצא מצב שהחלוקה בין השרתים וחלוקת העומסים קטנה

Network affinity – על פי IP ברמה C דומה ל Single affinity ולרוב ישתמשו בו כאשר המשתמשים עוברים ב דרך Proxy או בשפת המחשוב Megaproxy (שרת פרוקסי שמנתב את המשתמש מעשרות או יותר של IP) אז מה הקשר בין הדברים? בגלל שהמתשמש מגיע לcluster דרך IP אחר בכל פעם בגלל הפרוקסי נוצר מצב שהוא כל “רענון” מגיע ל Node אחר ולכן אם הIP ברמה C והגדרתם Network affinity הוא ישאר באותו הNODE!! וזה פיתרון מעולה

no affinity – מצב בו קיימת חלוקת עומסים מעולה אבל affinity גרוע ביותר שכן המשתמש מועבר מDC לDC

קיימים רמות Source IP, Destination IP, Destination Port שבהם ישתמש הCluster בno affinity

למען התרגיל בחרו ב Single affinity

חשוב להבין את סוגי ה Affinity

חשוב להבין את סוגי ה Affinity

לחצו Next וסיימו את האשף, בסיום ניתן לראות שעון חול

ניתן ליצר כמה Cluster's ולהוסיף כמה Node's שאתם רוצים אל תוך הCluster

ניתן ליצר כמה Cluster’s ולהוסיף כמה Node’s שאתם רוצים אל תוך הCluster

לחצו קליק ימני על ה Cluster שעכשיו יצרנו  (ניתן לראות גם את Node DC1 בצבע ירוק)

לחצו על Add Host To Cluster

הוסיפו עוד אחד

הוסיפו עוד אחד

נוסיף את DC3

אין צורך בהגדרות נוספות

אין צורך בהגדרות נוספות

כעת נכניס את הרשומה של ה Cluster ל DNS אז נכנס לDNS

חייב להוסיף רשומה בDNS

חייב להוסיף רשומה בDNS

נלחץ קליק ימני ואז New Host

חייב להוסיף רשומה בDNS

חייב להוסיף רשומה בDNS

נרשום Website  ואת הכתובת של ה Cluster שהיא 110  (ברגע שהמשתמשים יגיעו לכתובת האתר שלנו הם יגיעו לCluster)

כתובת ה Cluster

כתובת ה Cluster

נבצע Reload ל Zone

Reload

Reload

Yes

yes

yes

ניתן לראות שה Cluster ירוק וקיים Converged

Converged אומר שה Cluster תקין!

Converged אומר שה Cluster תקין!

וכאשר אני מתחבר לאתר אני מגיע לDC3

DC3

DC3

אבל מה יקרה אם אני יפיל את DC3?

כיביתי את כרטיס הרשת של DC3

כיביתי את כרטיס הרשת של DC3

ברגע שאני יעשה רענן, אני יגיע לDC1 והכל בזכות ה Cluster !

עברנו ל DC1

עברנו ל DC1

ניתן לראות ב NLB את נפילתו של DC3

גם הNLB יודע

גם הNLB יודע

 

מאמרים קשורים

Leave a Comment