וירטואליזציה ודיסקים מקומיים. כדאי?

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

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

אולם כשאנחנו מדברים על מעל כמות של שרת אחד שיריץ וירטואליזציה, שימוש בדיסקים מקומיים דווקא פוגע בדברים אחרים, כמו שרידות (HA). אחרי הכל, לא חשוב איזו וירטואליזציה יש לך, אם שרת אחד מתוך 2 שרתים כבוי עקב תקלה, לא תוכל להפעיל את מכונות ה-VM בשרת אחר.

ל-NAS יש יתרון אחד שדווקא לא קיים במרבית פתרונות הוירטואליזציה והוא קשור לאופטימיזציה. הדרייברים שנמצאים בתוכנת הוירטואליזציה הם דרייברים בסיסיים. הם מאפשרים עבודה רציפה עם הדיסקים ותו לא. כך לדוגמא אינך יכול להכניס לשרת וירטואליזציה 1-2 דיסקים SSD ולהגדיר אותם כ-Cache (ה-Read Cache במקרה של vSphere לדוגמא, מיועד להאצת עבודה חוזרת של מכונות VM, לא לשמש כ-Cache ל-Datastore). לעומת זאת, אם נרים NAS על שרת ישן (זה יכול להיות גם PC עם דיסקים במקרים שאין תקציב) ונכניס לו 1-2 דיסקים SSD, נוכל בעזרת התוכנה ב-NAS להגדיר אותם כ-Cache. בנוסף, אם אנחנו רוצים מהירות גישה רצינית אל/מאת ה-NAS ולא להיות "חנוקים" במהירות של 1 ג'יגהביט – אפשר לרכוש בזול כרטיסי רשת QSFP (או +SFP) שנותנים חיבור במהירות 10 ג'יגהביט עם פורטים כפולים וכבלי DAC ולחבר אותם בין ה-NAS ל-2 שרתים שמריצים מכונות וירטואליות. כך הדברים ירוצו הרבה יותר מהר ואין צורך לרכוש סוויצ' 10 ג'יגהביט יקר לשם כך (אגב, התוספת מחיר על כך מגיעה בד"כ בסביבות ה-300$).

מצד שני, יש בהחלט מקום בשימוש בדיסקים מקומיים כאשר אנחנו משתמשים בתצורת Hyper Converge. בקונפיגורציה כזו, המערכת צריכה לפחות SSD אחד על מספר קטן של דיסקים מכניים והיא משתמשת ב-SSD לשם כתיבה/קריאה מואצת וכמובן כ-Cache (רק שחשוב לשים לב איזה SSD Intense אתם רוכשים, אם רכשתם את הלא נכון, הביצועים יהיו מופחתים) אך גם כאן חשוב לשים לב לא רק לסוג ה-Intense אלא גם לסוג החיבור של ה-SSD. חיבור SATA לדוגמא "נחנק" במהירות 560 מגהבייט ואילו SSD בחיבור U.2/NVME יתן ביצועים ורוחב פס עד פי 4-5 בהשוואה ל-SATA.

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

כשצריכים לבחור Storage לסטודיו

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

אותה חברה החליטה לעבור ל-NAS אחר ובאותה הזדמנות לעבור לחיבור 10 ג'יגהביט לכל מכונות הדסקטופ.

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

נתחיל עם משהו פשוט: אם העובדים בחברה מעתיקים מה-NAS את קבצי הוידאו אל המכונות שלהם, מרנדרים במכונות שלהם על הדיסקים המקומיים שלהם ורק בסוף מעתיקים בחזרה אל ה-NAS, אז כן, כל פתרון NAS יכול להתאים לחברה בהתאם לתקציב שלהם מכיוון שעל ה-NAS אין ממש עומס (כל עוד מדובר בכמות קטנה של עורכים – 3-8 בערך).

אבל כשרוצים לערוך את הקבצים ישירות מה-NAS ללא העתקה (כמו שאותו סטודיו בוידאו רוצה לבצע), זו לא השיטה לבחור NAS.

הדבר הראשון שצריך לקחת בחשבון הוא בעצם את החומר שאנחנו הולכים לערוך וליתר דיוק – בכמה מגהביט מוקלט הוידאו. יש הבדל עצום בין וידאו שמוקלט ממכשיר טלפון סיני, מאייפון או גלקסי – לבין מצלמות DSLR מקצועיות, מצלמות וידאו מקצועיות (כמו Sony) ומצלמות RED בדחיסה נמוכה. המצלמות הפשוטות בטלפון מקליטות ב-10-20 מגהביט ואילו RED יכולות להגיע בערך ל-300 מגהבייט לשניה ואני מאמין שיש מצלמות שמקליטות במגהביט יותר גבוה.

אם ניקח את אותו NAS וננסה לערוך ממנו קבצים שהוקלטו מ-RED ב-300 מגהבייט (לא מגהביט) לשניה (שוב, מבלי להעתיק את הקבצים מה-NAS אל מכונה מקומית), מהר מאוד נמצא שדברים יזוזו מאוד לאט בתוכנת העריכה (בין אם מדובר בפרמייר, AVID, דה וינצ'י ואחרים) הואיל ותוכנות העריכה יוצרות קבצים רבים נוספים (זמניים וקבועים) וה-NAS שרואים בוידאו פשוט לא מסוגל לספק את הנתונים במהירות הזו.

כלל האצבע הוא: ככל שהמגהביט בהקלטה יותר גבוה, ויש יותר אנשים שצריכים לעבוד במקביל על הפרויקטים – הציוד ל-NAS יהיה יותר יקר (כמה יותר יקר? כל דיסק NVME SSD לעומסים כאלו עולה בין 1000-1500$) ולכן יש צורך לבדוק פר מקרה מה החומרים, לאן גודלים, כמה עורכים יש, האם יש עבודה במקביל ועוד ועוד. קניה של NAS ספציפי רק כי יש כזה לשכן ממול – לעניות דעתי, אינה החלטה חכמה.

ובנוגע לרשת שהחבר'ה ב-FStoppers הקימו, לו היו החברים קוראים את הסטנדרט בגירסה הקצרה, הם היו מוצאים שהכבלים שהם רכשו, ולא חשוב מאיזה פירמה – לא יתנו תמיד 10 ג'יגהביט הואיל ו-CAT7 מספק 10 ג'יגהביט עד אורך 100 מטר, לא 200. בשביל 200 מטר יש צורך להשקיע בכבלים CAT 7A או ברכישת כבלים מוקשחים (כאלו שמכניסים בקירות).