MS SQL Cluster

M o t e l

New member
MS SQL Cluster

יש למישהו שיקולים מתוך נסיון איזו קונפיגורציה עדיפה יותר: Active/Active or Active/Passive ? (מדובר על הקמה של DB לארגון בסדר גודל מקסימלי של 100 GB, כאשר יש כל הזמן טרנסקציות, והדגש הוא על שרידות מקסימלית בלי אובדן מידע.)
 

Zig35

New member
---->

ה-DB מתחיל מ-0? או מנפח מסוים (גדול)? עקונית, אם זה DB חדש, הייתי מתחיל מתצורה של active/passive, כאשר לפי הצורך, עם גדילת ה-DB, הייתי מוסיף עוד שרתי active לתצורה - כך שיהיה לך cluster active/active/passive וכו'. אם ה-DB מתחיל "מגדול" - אז תתחיל active/active בשביל הביצועים, ותוסיף אח"כ passive - בשביל האמינות. עקרונית אתה יכול להגיע עד ל-8 nodes ב-clster כיום (ב-.w2k3 adv - אני לא טועה, נכון? הרבה זמן לא נגעתי בחומר הזה...) כאשר היחס הוא 3:1 - על כל 3 nodes active, אתה מוסיף 1 passive. יש הטוענים ליחס רצוי של 2:1. ויש גם הטוענים שמספיק לשים passive אחד לכל 7 ה-active nodes.
 

M o t e l

New member
../images/Emo27.gif

"אז תתחיל active/active בשביל הביצועים" למיטב הבנתי דווקא תצורה של active/active נחשבת לגרועה בביצועים כי כאשר קורה failover, אז שרת אחד נאלץ לעשות עבודה של שניים. אכן ניתן להגיע ל-8 שרתים ב-Windows 2003 Enterprise וקראתי גרף של וריטאס על אחוזי שרידות ביחסי קלאסטר שונים (1:2, 3:1 ועוד) וההתחייבות שלי היא לזמן שרידות של 99.999 מה שמחייב יחס קטן יותר, כמובן. מה שמעניין אותי זה באמת בעיות או טיפים של אנשים שמיממשו קלאסטר של SQL. למשל, ב-Exchange 2000/3 היו לי בעיות עם active/active והרבה פעמים לא התרחש בכלל failover כאשר שרת אחד נפל או הושבת, כנראה מבעיות ביצועים (ליתר דיוק דיפרגמנטציה בזיכרון). זה טיפ שנלמד מנסיון ואני מחפש הערות דומות.
 

Zig35

New member
הבנתי אותך, הנה כמה נקודות בתגובה:

1. ביצועי ה-active/active אכן לא מוצלחים כאשר נופל אחד ה-nodes, אבל הכוונה היתה שתתחיל ככה בגלל הביצועים כששניהם עובדים - כשה-DB שלך גדול כבר. אבל מכיוון ואמרת שהדגש הוא על שרידות ולא על בצועים -אז אני מושך את התשובה הזו חזרה... 2. כשאתה מגדיר זמינות של 5@9 למערכת, מה כוללת הזמינות הזו? אצלי זה כולל לא רק המשך עבודה (ללא קריסה של המערכת), אלא המשך עבודה עם זמני תגובה סבירים וכו'. לצורך כך יש לוודא שה- SLA מגדיר את כל הספים (thresholds) המתאימים. 3. כפועל יוצא מ-1+2.. הייתי מתחיל ישר עם active/active/passive במקרה שלך. בכל מקרה אגב אין צורך (מענייני עלות/תועלת) ביחס של יותר מ-1:2 ב-nodes. 4. דיפרגמנטציה היא לא מה שקורה בזכרון אלא הפעולה שבאה לסדר את מה שקורה שם.. פרגמנטציה היא היא המצב שבו מקומות לא-עוקבים בזיכרון מחזיקים מידע שהוא עקיב במהותו. דבר שגורם לבזבוז זכרון, עבודה איטית יותר וכיו"ב. 5. לצערי (או לשמחתי?) אני כבר למעלה מחצי שנה לא מתעסק בדברים האלה, (מאז עזבתי את מקום העבדה האחרון), אבל אני אשמח לנסות להיזכר בטיפים ולתת לך אם יהיו.
 

M o t e l

New member
אכן, בעיות של fragmentation

זה מה שקורה שמנסים לכתוב אנגלית בעברית
 
למעלה