דף הבית » איך ל » מבוא למערכת הקבצים Z (ZFS) עבור לינוקס

    מבוא למערכת הקבצים Z (ZFS) עבור לינוקס

    ZFS הוא נפוץ על ידי האוגרים נתונים, אוהבי NAS, וחנונים אחרים המעדיפים לשים את האמון שלהם במערכת אחסון מיותר משלהם ולא בענן. זוהי מערכת קבצים נהדרת להשתמש לניהול מספר דיסקים של נתונים יריבים כמה מן הגדולים RAID setups.

    צילום של קני לואי.

    מה זה ZFS ולמה אני צריך להשתמש בו?

    מערכת הקבצים Z היא מנהל נפח לוגי חופשי וקוד פתוח שנבנה על ידי חברת Sun Microsystems לשימוש במערכת ההפעלה Solaris שלהם. חלק מהתכונות הכי מושכות שלה כוללות:

    מדרגיות אינסופית

    טוב, זה לא באופן טכני אינסופית, אבל זה מערכת קבצים 128 סיביות כי הוא מסוגל לנהל zettabytes (מיליארד טרה בתים) של נתונים. לא משנה כמה שטח כונן קשיח יש לך, ZFS יהיה מתאים לניהול זה.

    יושר מקסימלי

    כל מה שאתה עושה בתוך ZFS משתמש בדיקת כדי להבטיח שלמות הקובץ. אתה יכול להיות סמוך ובטוח כי הקבצים שלך עותקים מיותרים שלהם לא ייתקל השחיתות נתונים שקטים. כמו כן, בזמן ZFS הוא עסוק בשקט לבדוק את הנתונים שלך על שלמות, זה יעשה תיקונים אוטומטיים בכל עת שהוא יכול.

    איסוף כונן

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

    RAID

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

    התקנת ZFS

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

    Solaris ו FreeBSD צריך כבר לבוא עם ZFS מותקן ומוכן לשימוש.

    אובונטו:

    $ sudo Add-apt-repository ppa: zfs-native / stable
    $ sudo apt- לקבל עדכון
    $ sudo apt- קבל להתקין אובונטו- zfs

    דביאן:

    $ -
    # wget http://archive.zfsonlinux.org/debian/pool/main/z/zfsonlinux/zfsonlinux_2%7Ewheezy_all.deb
    # dpkg-i zfsonlinux_2 ~ wheezy_all.deb
    # apt-get update
    # apt-get התקן debian-zfs

    RHEL / CentOS:

    $ sudo yum localinstall --nogpgcheck http://archive.zfsonlinux.org/epel/zfs-release-1-3.el6.noarch.rpm
    להתקין zfs

    אם יש לך הפצה אחרת, לבדוק את zfsonlinux.org ולחץ על ההפצה שלך תחת "חבילות" רשימה לקבלת הוראות כיצד להתקין ZFS.

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

    ההתקנה לוקח די הרבה זמן, אבל ברגע שזה נגמר, לרוץ $ zds רשימת כדי לוודא שהוא מותקן כהלכה. אתה צריך לקבל פלט כזה:

    אנו משתמשים בהתקנה חדשה של שרת אובונטו כעת, עם כונן קשיח אחד בלבד.

    הגדרת ZFS

    עכשיו, נניח שאנחנו שמים עוד שישה כוננים קשיחים לתוך המחשב שלנו.

    $ sudo fdisk -l שגיאת grep יראה לנו את שישה כוננים קשיחים שאנחנו פשוט מותקן. הם כרגע שמיש כי הם לא מכילים כל סוג של טבלת המחיצות.

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

    $ sudo zpool ליצור -F geek1 / dev / sdb / dev / sdc / dev / sdd

    zpool ליצור היא הפקודה המשמשת ליצירת מאגר אחסון חדש, עוקפת את כל השגיאות המתרחשות (כגון אם הדיסק כבר מכיל מידע עליהם), חנון הוא שם מאגר האחסון ו / dev / sdb / dev / sdc / dev / sdd הם כוננים קשיחים שמנו בבריכה.

    לאחר שיצרת את הבריכה שלך, אתה אמור להיות מסוגל לראות את זה עם df הפקודה או רשימת zfsYou

    כפי שאתה יכול לראות, / geek1 כבר מותקן והוא מוכן לשימוש.

    אם אתה רוצה לראות איזה שלושה דיסקים שבחרת עבור הבריכה שלך, אתה יכול לרוץ מצבYou

    מה שעשינו עד כה הוא ליצור 9 TB בריכת דינאמי פס (ביעילות, RAID 0). במקרה שאתה לא מכיר מה זה אומר, לדמיין יצרנו קובץ 3 KB ב / geek1. 1 KB היה עובר אוטומטית ל- sdb, 1 KB ל- sdc ו- 1 KB ל- sdd. אז כאשר אנחנו הולכים לקרוא את הקובץ 3 KB, כל כונן קשיח יציג 1 KB לנו, המשלב את המהירות של שלושת הכוננים. זה עושה כתיבה וקריאת נתונים מהר, אבל גם אומר שיש לנו נקודה אחת של כישלון. אם רק כונן קשיח אחד נכשל, נאבד את הקובץ 3 KB שלנו.

    בהנחה כי הגנה על הנתונים שלך חשוב יותר מאשר לגשת אליו במהירות, בואו נסתכל על setups פופולריים אחרים. ראשית, נמחק את zpool שיצרנו כדי שנוכל להשתמש בדיסקים אלה בהגדרה עודפת יותר:

    להרוס geek1

    באם, הזאפול שלנו איננו. הפעם, הבה נשתמש בשלושת הדיסקים שלנו כדי ליצור מאגר RAID-Z. RAID-Z הוא בעצם גרסה משופרת של RAID 5, כי זה נמנע "חור לכתוב" באמצעות העתקה on-write. RAID-Z דורש מינימום של שלושה כוננים קשיחים, והוא סוג של פשרה בין RAID 0 ו RAID 1. במאגר RAID-Z, אתה עדיין מקבל את המהירות של פילוס ברמת הבלוק אבל גם יש להפיץ זוגיות. אם דיסק אחד בבריכה שלך מת, פשוט להחליף את הדיסק ואת ZFS באופן אוטומטי לבנות מחדש את הנתונים על בסיס מידע זוגיות מן הדיסקים האחרים. כדי לאבד את כל המידע במאגר האחסון שלך, שני דיסקים יצטרכו למות. כדי לעשות דברים עוד יותר מיותר, אתה יכול להשתמש RAID 6 (RAID-Z2 במקרה של ZFS) ויש להם זוגיות כפולה.

    כדי להשיג זאת, אנו יכולים להשתמש בו zpool ליצור הפקודה כמו קודם, אבל ציין raidz לאחר שם הבריכה:

    $ sudo zpool ליצור -F geek1 raidz / dev / sdb / dev / sdc / dev / sdd

    כפי שאתה יכול לראות, df -h מראה כי בריכת 9 TB שלנו עכשיו צומצם ל 6 TB, מאז 3 TB משמש כדי להחזיק מידע זוגיות. עם ה מצב zpool הפקודה, אנו רואים כי הבריכה שלנו היא בעיקר כמו קודם, אבל הוא משתמש RAID-Z עכשיו.

    כדי להראות כמה קל להוסיף דיסקים נוספים למאגר האחסון שלנו, נוסיף את שלושת הדיסקים האחרים (עוד 9 TB) למאגר האחסון geek1 שלנו כתצורה נוספת של RAID-Z:

    $ sodo zpool add -f geek1 raidz / dev / sde / dev / sdf / dev / sdg

    אנחנו בסופו של דבר עם:

    הסאגה ממשיכה ...

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