מערכת אוטומטית לחלוקת עומס התיבות בין מספר בסיסי נתונים ב- Exchange 2010

תשתיות ומערכות הפעלה  |  עולם המקצועי
מערכת אוטומטית לחלוקת עומס התיבות בין מספר בסיסי נתונים ב- Exchange 2010
רונן גבאי

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

שרתי Exchange 2010 בגרסת Standard תומך בעד 5 בסיסי נתונים ובגרסת Enterprise עד ל- 100 בסיסי נתונים. כאשר יש לנו מספר רב של תיבות אנו נדרשים לפתוח מספר רב של בסיסי נתונים ולחלק את התיבות ביניהם. צורך זה הינו משמעותי במיוחד בזמן תהליך הגירה ממערכת ישנה לחדשה או בהחלפת חומרה. לקוחות רבים ביקשו מאתנו לכתוב סקריפטים שונים ומשונים אשר בזמן הגירה יחלקו את התיבות על פני כל בסיסי הנתונים בצורה אחידה.


המנגנון הקיים בשרת Exchange 2010 נקרא Load Balanced Mailbox Provisioning והוא דלוק בברירת המחדל על כל בסיסי הנתונים של השרת. כאשר תיצרו תיבה חדשה על שרת Exchange 2010 אולי תופתעו לגלות שאינכם חייבים לציין בסיס נתונים עבור המשתמש וכאשר אתם עושים זאת השרת אוטומטית בוחר עבורכם בסיס נתונים ומבצע Load Balance על כל בסיס הנתונים הקיימים בשרת.


בכדי לדעת להשתמש במנגנון זה בצורה נבונה עלינו להכיר מספר דברים, ראשית כיצד האלגוריתם עובד: האלגוריתם מחלק את התיבות בזמן היצירה או בזמן העברה New-Move-Request בין כל בסיסי הנתונים באותו Active Directory Site של השרת אליו התחברנו. התהליך מבוצע על ידי פקודה הקוראת לתהליך מערכת הקרוי Mailbox Resources Management. השרת מאתר את בסיס הנתונים הפנויים ביותר מבחינת כמות התיבות ולא גודלם ומייצר שם את התיבות. כאשר מעבירים או מייצרים מספר רב של תיבות אלו יחולקו בצורה פחות או יותר שווה על פני כל בסיסי הנתונים של השרתים ב- AD Site.


 


יש דרישות לייצר בסיסי נתונים אשר להם תפקידים מיוחדים כגון בסיס נתונים למשתמשי הנהלה או עבור מערכת הארכיון, במצב זה לא הינו רוצים שמערכת חלוקת העומסים האוטומטית תבחר בבסיסי נתונים אלו כיעד ליצירת התיבות. מסיבה זו ניתן להגדיר על בסיס נתונים פרמטר המוציא את בסיס הנתונים מהמשחק. תהליך זה מתבצע על ידי הפקודה: 
Set-MailboxDatabase DBname -IsExcludedFromProvisioning:$true


יש אפשרות לבצע השהיה זמנית לתהליך חלוקת העומסים ולא לבטלו כלל על ידי פקודה: Set-MailboxDatabase DBname -IsSuspendedFromProvisioning:$true
שימו לב שמנגנון חלוקה אוטומטית של בסיסי הנתונים בזמן תהליך העברת התיבה אינו יכול להיות מופעל על ידי הממשק הגראפי של השרת Exchange Management Console אלא רק על ידי שימוש בפקודת ה- Shell להעברת תיבות New-Move-Request.

 


אם כל בסיסי הנתונים המוגדרים בשרת חסומים לתהליכי Provisioningנקבל Load Balance Error כאשר לא נקצה בסיס נתונים ספציפי ליצירת התיבות.


לסיכומו של דבר Database Provisioning הינו מנגנון חדש ב- Exchange 2010 המסייע לנו לחלק את עומס התיבות על פני כל בסיסי הנתונים ולייצר סביבת Exchange 2010 יותר נכונה ויציבה. מנגנון זה הינו חשוב במיוחד כאשר אנו מסתכלים על התמונה הכוללת כאשר מדובר במערכי Exchange 2010 בתצורת Database Availability Groups או DAG.

 

הכותב הוא רונן גבאי - סמנכ"ל טכנולוגיות בג'ון ברייס - מכללת הי-טק, מייסד ו- CTO בחברת האינטגרציה U-BTech Solutions
Microsoft Exchange Regional Director

קורסים קשורים
לכל המאמרים