הסבר על RaidZ ועל Raid בכללי
ZFS היא מערכת קבצים שעוצבה על ידי Sun Microsystems במאמר זה אסביר על סוגי ה RAID הקיימים בFreeNAS (למרות שאינם באמת סוגי RAID ) ולא רק , מערכת קבצים זו קיימת בלינוקס, Unix ומערכות נוספו
נתחיל בהסברים: בהמשך על ידי תמונות תוכלו להבין את המערך טוב יותר
Stripe
הוא למעשה Raid-0 המידע נכתב ברצף על הכוננים והכך מאפשר מהירות אופטימלית אבל לא נותן שום יתירות ובכך אם כונן אחד נכשל כל המידע אבד
Mirror
הוא למעשה Raid-1 הדיסקים מאורגנים בזוגות כך שהמידע מתרפלק מדיסק 1 לדיסק 2 מצב זה יוצר יתירות שכך אם כונן אחד כושל בשני יש את אותו המידע וכך המידע לא אבד \ נהרס, הבעיה המרכזית היא עלות – תועלת שהיא הנפח אם אני יקנה 2 דיסקים של 4TB
המצב יהיה שקיים לי רק 4TB כי הכונן השני משמש להעתק של המידע
RaidZ
למעשה כמו RAID 5 אך הוא מונע את Write hole על ידי שימוש ב COW על ידי כך שהוא אינו מעתיק את המידע כל פעם ל Pairty אלא יוצר Pointer אומר לו איפה המידע נמצא וכך המידע לא מועתק כל פעם וכך לא נגרם בכזו קלות ה Write hole
Write hole – הוא מונח ואסביר לדוגמה בRAID 1 כאשר המידע נרשם לכונן השני והמידע אינו תקין (בכונן השני) לא ניתן יהיה להבחין בכך עד אשר הכונן השני יקרוס וכאשר הוא יקרוס , המעשה הבא הוא להחליף את הכונן הפגום ובכך להתחיל RAID חדש באותה התצורה
אבל אז בגלל שהמידע לא תקין הוא יועתק לא נכון לאותו כונן
RaidZ הוא למעשה N+1 הכוננים + כונן אחד שהוא למעשה parity כך שבמקרה של כשל כונן אחד השאר ימשיכו לתפקד אבל במקרה של 2 כוננים כושלים… אין גישה למידע בגלל שהמידע פגום ( זהו הסבר קצרצר אם תרצו תוכלו לחפש בגוגל למידע מקיף יותר)
RaidZ2
גם פה הוא למעשה RAID 6 עם 2 Parity ורשמתי למעשה כי הוא אינו כזה…
RAID-5 הוא למעשה N+1 הכוננים כולם משתתפים בחילוק ה Parity וכך למעשה הוא מגביר את מהירות הקריאה מהדיסק
RaidZ2 – הוא יותר דומה לRAID 6 הוא מחזיק 2 דיסקים כ Parity כך ששני כוננים קשיחים יכולים להיכשל ולא רק אחד ובכך להמשיך לפעול ללא איבוד המידע
בהמשך המאמר אסביר על כל תמונה וכך תוכלו להבין יותר לעומק את ההבדלים :
ניתן לראות ש FreeNAS נותן את ההגדרות באופן אוטומטי וניתן לשינוי
*כל כונן קשיח פה הוא בנפח של 60GB
*כל DA הוא כונן קשיח אחד, וככל שאני מושך בכפתור העגול כך אני מעלה את כמות הכוננים שיהיו בRAID
כאשר מוגדר כונן אחד ניתן לראות שעם כונן אחד נקבל את Stripe בלבד
כאשר מגדירים 2 כוננים קשיחים ניתן לראות שנקבל אוטומטית את Mirror והנפח הכולל הוא 53.7GB
כמו שאתם רואים 3 כוננים הוא מגדיר כ RaidZ שכן 2 דיסקים הם Stripe ואחד הוא Parity וכך המערך יכול לסבול עד כונן אחד כושל
ולכן כאשר כונן אחד שהוא Parity הנפח הכולל הוא 96GB
פה כבר אנחנו ב RaidZ2 שהוא למעשה 4 דיסקים עם 2 Parity שכן המערך יכול לסבול עד 2 דיסקים כושלים
וגם פה ניתן לראות בגלל ששני דיסקים הם Parity הנפח הכולל הוא למעשה 96GB
ברגע שנגיע ל5 כוננים נקבל RaidZ שכן כונן אחד הוא Party ולכן הנפח הכולל הוא רק 192GB והמערך יוכל לסבול רק כונן אחד כושל
ופה שוב קיבלנו RaidZ2 והנפח הכולל הוא גם 192GB בגלל שפה המערך יכול לסבול 2 דיסקים כושלים
כמובן שניתן לשנות את ההגדרות שנתן ה FreeNAS