ההכרזה של אינטל על חומרה חדשה

אינטל לאחרונה הכריזה על שורת מוצרים חדשים – משפחת מעבדי ה-Xeon Cascade Lake שמהווים שדרוג למשפחה הנוכחית, Xeon Scalable. אלו שרוכשים שרתים מ-Dell יוכלו להתחיל לרכוש את הדור הבא של השרתים (סידרת ה-R650,750 וכו') בשבועיים הקרובים (לפחות בחו"ל). חברת HPE עוד לא הכריזה על תאריך השקה וגם לא לנובו. בסיסקו הולכים להוציא את המשפחה החדשה בערך בעוד חודש וחצי. בהשוואה למעבדים הנוכחיים, המעבדים החדשים יהיו קצת יותר מהירים אך באותו מחיר כמו הקיימים, וניתן יהיה (לאחר עדכון BIOS) להחליף את המעבדים הנוכחיים במעבדים החדשים. פוסט יותר מפורט על המעבדים החדשים (כולל רשימת המעבדים) – יופיע פה בבלוג בקרוב.

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

נתחיל בדיסק ה-SSD החדש של אינטל, ה-DC D4800X (תבדילו בינו ל-P4800X). ה-D בשם המוצר מסמן Dual Port. זהו SSD בחיבור NVME כפול. בשביל מה צריך כפול? כדי לקבל שרידות כמובן!…

אממה .. מישהו שכח או התעלם מכלל פשוט שקיים בכל PC, החל מלאפטופ ועד שרת עצבני עם 8 מעבדים: כשיש לך תקלה בחיבור PCIe, המערכת פשוט תקפא או תקרוס. לגמרי. נסיון לבצע כיבוי/הפעלה מחדש לא יצליח לעבור את ה-POST. (בעקרון, כשמפעילים את המכונה, לאחר שהמעבד הופעל וה-BIOS נכנס לשליטה, הוא מריץ את המיקרוקוד שבתוכו, הוא מתחיל לאפס את תושבות וציודי ה-PCIe. כשהוא לא מצליח – תופיע שגיאה שלא תאפשר המשך הפעלת המכנה). במילים אחרות – זה ציוד מעולה .. אם יש לכם Mainframe של IBM, שם אפשר להחליף כמעט את כל הציוד שהמכונה פעילה (וניתן להפעיל/לכבות תושבות PCIe בזמן ריצה) – אבל לא כל כך רלוונטי בשרתים.

מכאן – נעבור ל-Optane DC.

למי שלא מכיר – Optane DC זו גירסת SSD שאינה מתחברת לתושבת PCIe אלא יושבת בתוך תושבות הזכרון של השרת. בתמונה משמאל תוכלו לראות אותם כ"מקלות זכרון" (עם המדבקות, כלומר 3 מקלות Optane DC ו-3 מקלות זכרון DDR4 ECC). כל מקל Optane DC מגיע ב-3 גדלים – 128, 256 או 512 ג'יגהבייט אחסון! (המחירים, אגב, לאלו שרוצים לדעת – ואלו לא מחירים סופיים: 893, 2461 דולר וה-512 ג'יגהבייט עדיין לא יצא). אלו אינם מקלות זכרון, כך שאם יש לך מול מעבד כ-256 ג'יגה זכרון והכנסת מקל Optane DC של 256 ג'יגהבייט, לא יהיה לך זכרון של כחצי טרה, אלא 256 ג'יגה זכרון ו-256 ג'יגה של אחסון מהיר.

בכנס Ignite האחרון, מיקרוסופט הדגימה איך ה-Optane DC עוזר בסביבת HCI שמורכבת מ-Hyper-V, Storage spaces direct וכו'. להלן הוידאו:

שימו לב למשהו אחד חשוב שקצת פחות מודגש בוידאו: כל ה-Optane DC שבשרתים בהדגמה משומש ל-Cache בלבד ולא כ-Storage! במילים אחרות, גם אם תכניס טרהבייט של Optane DC בשרת, עדיין תצטרך Storage כלשהו, ולכן השימוש של Optane DC יותר מתאים כ-Cache ל-DB או למכונות וירטואליות. ניתן לראות את הדגש הזה גם במסמך הזה שהוציאה VMWare שמתייחסת ל-Optane DC ולגירסה עתידית של vSphere.

בלינוקס יש תמיכה ל-Optane DC ובקרוב תהיה גם תמיכה לשימוש ב-Optane DC כ"זכרון". הפצות רד האט 8, SLE 15 ואחרות כבר תומכות ב-Optane DC וכל מה שצריך זה שאפליקציות יתמכו בכך, וזה יקרה ברגע שהטכנולוגיה תהיה נפוצה יותר.

בקיצור – טכנולוגיה מעניינת (אם כי יש לסמסונג המתחרה מענה "בשרוול" שנותן ביצועים בעומסים הרבה יותר גבוהים, זה בסידרת ה-Z-NAND), אבל יקח זמן עד שהיא תיכנס בצורה מסודרת לשימוש על ידי כל מיני אפליקציות ופלטפורמות. הדבר שהכי מעכב כרגע את הדברים – זה הצורך ברכישת שרתים חדשים על מנת להשתמש בטכנולוגיה. כל ספקי הענן הציבורי יציעו בקרוב מכונות עם Optane DC.

אחד המוצרים הנוספים שאינטל הכריזה עליו הוא Intel SSD D5-P4326 – כונן SSD בתצורת "סרגל" (שמו הטכני של הסטנדרט: EDSFF E1.L – שם שממש מתגלגל בפה). כל סרגל SSD כזה יכיל בדור הנוכחי עד 15.32 טרהבייט אחסון… רק לפני שמתלהבים, האחסון מורכב מ-QLC NAND, הווה אומר שבתא NAND אפשר לאחסן 4 ביטים, מה שמאפשר לאחסן יותר מידע פר תא, אך מצד שני, מהירות הכתיבה – איטית מאוד בהשוואה לכונני SSD מדור נוכחי מבוססי TLC (כלומר 3 ביטים בתא). אינטל ושותפיה ימכרו שרת 1U שבו יהיה ניתן להכניס 32 סרגלים כאלו ליצור אחסון עד כמעט חצי פטהבייט שמיועד יותר לאחסון מידע לקריאה, ובמילים אחרות – לא מאחסנים על זה מכונות וירטואליות, קונטיינרים ושאר דברים שמצריכים קריאה/כתיבה מהירה יותר ממה שאותם סרגלי SSD יכולים להציע.

הבעיה המרכזית במוצר היא התחרות שלו מול דיסקים קשיחים מכניים. נכון, SSD נותן מהירות קריאה הרבה יותר גבוהה מכל דיסק מכני, אבל דיסק מכני כמו Seagate Baracuda בגודל 14 טרהבייט ל-Enterprise עולה בסביבות ה-550$ ואילו סרגל של 15.3 טרהבייט של אינטל עולה פי 8. את עניין הבדלי הקריאה/כתיבה ניתן תמיד לפתור בעזרת מספר דיסקים SSD שישמשו ל-Cache כך שהפתרון של אינטל עדיין אינו שווה לדעתי מבחינה כלכלית.

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

על תכנון מפרט שרתים

לפני זמן מה קיבלתי פניה מלקוח שנתתי לו יעוץ לגבי מפרט לשרת שיריץ אפליקציה מסויימת כבדה. הם רכשו את השרת ממשווק מורשה של DELL, מערכת הפעלה והאפליקציה הותקנו והם היו מרוצים. לאחר זמן מה הם רצו שרת נוסף והם החליטו פשוט לשלוח את המפרט שנתתי להם לאותו משווק כדי לרכוש שרת זהה נוסף. השרת הגיע, הם ביצעו Clone לשרת הראשון, והיו בטוחים שהשרת השני ירוץ כמו השרת הראשון.

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

לשמחתי זה לא לקח זמן רב. פתחתי את השרת השני החדש והבעיה התגלתה במהירה. המשווק מכר ללקוח שרת עם אותה כמות זכרון שהוא ביקש, אך הזכרון היה מורכב מ-DIMM בגדלים שונים ללא שום Balance בין 2 בקרי הזכרון של כל מעבד. השארתי את עניין הויכוחים עם המשווק ללקוח. אחרי שהזכרון הוחלף לפי המפרט שנתתי – הביצועים היו בדיוק כמו השרת הראשון.

יש לא מעט אנשים בתחום הגדרות ומכירת שרתים שלא ממש מעודכנים בטכנולוגיות שנמצאים בתוך השרתים. ניקח לדוגמא את תחום הזכרון: השרתים הנמכרים כיום אצל רוב המשווקים – מבוססים על Xeon SP של אינטל או EPYC של AMD. ב-EPYC הדברים מאוד פשוטים: יש לכל מעבד 8 ערוצי זכרון לכל מעבד, ואם אתה רוצה את הביצועים המקסימליים שהמעבד יכול לתת, אתה פשוט קונה זכרון לכל הערוצים. כך לדוגמא אם אתה רוצה 256 ג'יגהבייט לשרת עם מעבד אחד, אתה פשוט קונה 8 מקלות SDRAM ECC מיצרן השרת, כשכל DIMM הוא בגודל 32 ג'יגהבייט.

באינטל המצב שונה. בעבר למעבדי Xeon היו 3 ערוצי זכרון וכל ערוץ זכרון הצריך 3 מקלות DIMM זהים, כך שעל מנת לקבל ניצול מקסימלי של ביצועי מעבד/זכרון, היית צריך להכניס 9 מקלות DIMM. רוצה לדוגמא להכניס 128 ג'יגהבייט זכרון למעבד? שדרג טיפה ל-144 ג'יגה זכרון ורכוש 9 מקלות של 16 ג'יגהבייט זכרון. כיום המצב שונה במעט, ולכל מעבד Xeon SP יש 2 בקרי זכרון, עם 6 ערוצים לכל מעבד. כל ערוץ מחובר ל-2 מקלות DIMM ויש דרכים שונות לקבל Balanced Memory. למי שמעוניין, המסמך הזה מ-LENOVO מסביר את הדברים בהרחבה (וההסבר מתאים לכל שרת מבוסס Xeon SP, לא חשוב מי היצרן).

גם בגיזרת הדיסקים דברים משתנים. לא מעט אנשי IT היו מריצים תוכנות מדידה שונות למשך יום יומיים כדי לקבל מצב ולהחליט אם לרכוש דיסקים SSD שהם Read Intensive או Mixed Intensive. אני חולק על השיטה הזו הואיל והיא לא יכולה לקחת בחשבון צרכים עתידיים, וההפתעה הכי גדולה שאני מבשר לאנשי IT – ההבדלים בין Read ל-Mixed מבחינת מחיר – צנחו. אם לדוגמא תשוו דיסק SSD של מיקרון או אינטל או סמסונג שהוא Read Intensive לדיסק SSD כמו PM883 של סמסונג (שנמכר ע"י כל יצרני השרתים, אגב, עם תמיכה מלאה ו-SLA) הוא 100-120$ כשאנחנו מדברים על גודל דיסק SSD זהה, וחיבור SATA. אז אם לדוגמא אתם רוכשים לשרת 5 דיסקים, האם הפרש של 500-600$ בעלות הכוללת של השרת, זה מה שישבור את הדיל?

תחום נוסף הוא חיבוריות לרשת. לא מעט חברות עוברות ל-10 ג'יגה ובמקרים רבים מתקבלת החלטה לחבר את השרת ב-teaming של זוג בשיטת חיבור Active/Passive, כך שאם חיבור אחד נופל, חיבור שני ימשיך לעבוד. צר לי, זה לא יעבוד אם מחברים את זה לאותו כרטיס או ללוח האם מסיבה פשוטה: בכרטיס או לוח האם יש מעבד אחד ואם יש בו תקלה, אף אחד מהחיבורים לא יעבוד. זה כן יכול לעבוד אם לדוגמא סיב נפגם, אבל על מנת לכסות את מקסימום האפשרויות לתקלות, תצטרכו 2 כרטיסי רשת נפרדים ולחבר אותם ב-Teaming.

כבעל עסק ליעוץ, אני מטבע הדברים ממליץ לשכור את שרותי העסק שלי ליעוץ, אבל מי שלא רוצה/לא יכול, אולי כדאי שיעשה את הדברים הבאים לפני שמחליטים לרכוש שרתים:

  • בישראל אין חנות Online לאף יצרן שרתים ואתם גם לא תקבלו את מלוא הקטלוג של חלקי החומרה שהיצרן מייצר/משווק, לכן אני ממליץ להיכנס לחנות Online בחו"ל, ו"לבנות" את השרת שלכם. המחיר כמובן אינו כמו המחיר שתשלמו בישראל, אבל תוכלו לראות בדיוק את האפשרויות שיש לכם במקום לסמוך על איש שיווק שבמקרים רבים לא יודע על מה הוא סח (מבלי לפגוע במישהו).
  • תכננו את הזכרון באופן אופטימלי, אך תשדלו לא לרכוש דברים שלא תוכלו להשתמש בהם מאוחר יותר בעת שדרוג, כמו מקלות זכרון של 4 ג'יגהבייט.
  • אם אתם מתכננים פרויקט שהשרתים יבצעו בו עבודת Scale Out, יהיה עדיף לרכוש מספר מצומצם יותר של שרתים "חזקים" מאשר כמות גדולה יותר של שרתים "חלשים". הסיבה לכך פשוטה: יותר תחזוקה, יותר עלות של חשמל, תופס יותר מקום. אז במקום 20 שרתים חלשים, 10 חזקים יעשו את העבודה ויחסכו את הדברים שציינתי לעיל.
  • מעבדים: כיום המצב הוא שבאותו מחיר שאתם רוכשים מעבד אינטל עם 4 ליבות, אתם יכולים לרכוש EPYC של AMD עם 8 ליבות. לא עדיף לקבל יותר באותו מחיר? (ולא, אל תתנו למסמכי השיווק של אינטל לבלבל אתכם, במקרים רבים הנתונים מעוותים/מוטים).
  • דיסקים: לכו על Mixed ותחסכו לעצמכם הפתעות עתידיות. ההבדל במחיר אינו כה משמעותי.
  • רשת: עדיף 2 כרטיסי רשת מאשר לחבר לאחד עם 2-4 חיבורים לשם שרידות.
  • VDI: למי שלא מודע, nVidia כעת גובה על ה-Grid שלהם תשלום חודשי. הגיע הזמן שתכירו את ה-Fire Pro של AMD שעובד מצוין על VMWare, Citrix, Microsoft – שם לא תשלמו חודשי.

 

על VDI ולקוחות שונים

אתחיל בשאלה: שאלתם את עצמכם פעם, כשאתם צריכים יעוץ מבחוץ, מה ההבדל בין יועץ טוב לבין יועץ .. פחות טוב? אפשר לכתוב על כך כמה וכמה פוסטים מאוד ארוכים, אך אני אתמצת את התשובה במשפט פשוט: יועץ טוב יתאים את הפתרון ללקוח. יעוץ פחות טוב – ינסה לשנות את "הלקוח" לפתרון.

בתחום ה-VDI, יש 3 פתרונות ש"שולטים" בשוק: Horizon של VMWare, ה"סלט" של Citrix (כמו Xen Desktop יחד עם כלים אחרים) וכמובן הפתרון של מיקרוסופט. בכל הפתרונות ניתן או "לפרסם" אפליקציות כך שיצוצו כחלונות נפרדים המציגים אפליקציה בלבד או שניתן להקים מכונות וירטואליות ועליהן "להלביש" פרופילים, ויש כמובן את שיטת ה"ערימות" – הקמה של מספר מכונות VM שמשוייכות קבוע למשתמש פר VM.

בהינתן החומרה הנכונה וההגדרות הנכונות, כל הפתרונות יכולים לתת תוצאות מעולות בכל מה שקשור ל-VDI, החל מרמת הפקידה שמשתמשת באופיס ודפדפן וכלה במשתמשים שצריכים להריץ אפליקציות תלת מימד. כולם תומכים בהאצת GPU (למעט מיקרוסופט שירדה מ-RemoteFX ב-Windows Server 2016 והולכת להוציא משהו בקרוב שיקרא GPU-P לצרכים של גרפיקה למשתמש מרוחק).

כל החברות הגדולות במשק משתמשות כבר בפתרון VDI או "מעין VDI". לכו לכל נציגות סלולרית בקניון ואתם תוכלו לראות במסכים של המוכרים חיבור RDP לחוות השרתים של אותה חברת סלולר. על המחשב המקומי לא רץ כמעט כלום (אגב, בלא מעט מקרים אותן חברות גדולות מוותרות על רכישת Thin Client יעודי מכיוון שזה יותר זול להן לרכוש PC בקצה המאוד נמוך עם Windows). רוב המשרדים הממשלתיים, חברת החשמל וכו' משתמשים ב-Citrix לצרכי VDI. חברות גדולות אחרות שלא ממש משתמשות ב-VDI הן חברות השיווק הגדולות (שופרסל, רמי לוי וכו') בקופות הרושמות (כולל הקופות החדשות לשרות עצמי) – שם עדיין יש PC עם דיסק קשיח שמטעין שורת אפליקציות לאחר שה-Windows עולה. אחד הדברים שגיליתי לאחרונה זה שכשבמשרד ממשלתי (נניח רשות המסים) אם ה-Thin Client שלהם (שמשום מה מטעין Windows 10 בזמן Boot, כך שאני לא בדיוק יודע למה הם צריכים Thin Client) לא מצליח להתחבר ל-Store Front של Citrix וזה קורה לכולם באותו סניף – אז הם פשוט מפסיקים לקבל לקוחות ובאותו יום אין עבודה. ברשת שיווק שמרוויחה כסף מכל לקוח, סיטואציה כזו היא הסיוט הכי שחור להנהלה, ולכן לא נראה לי שבעתיד הקרוב הם יעברו למשהו כמו VDI.

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

מדוע שהם בעצם ירכשו? בגלל ש-PC יכול להתקלקל? כיום אפשר ב-500-700$ להשיג PC פשוט בקצה הנמוך (כולל זכרון ו-SSD במקום דיסק מכני), וכל מה שנותר לעשות זאת להעביר את ה-DATA (כולל OS) ממערכת ישנה לחדשה ואולי להתקין דרייברים. בגלל גיבויים? אפשר לקנות NAS קטן, להתקין תוכנה כמו Macrium Reflect שתגבה את כל המכונות לאותו NAS. העלות של כל העניין ממש שולית.

היכן עסקים קטנים כן ירצו להקשיב ליתרונות VDI ולהטמעתם? רק כשהדברים הבאים ימולאו:

  • מחיר – זול. הפתרונות של Citrix ו-VMWare עפים ישר מהחלון. של מיקרוסופט – אולי.
  • שקט – תתפלאו בכמה משרדים אין ממש בידוד למחסן שאפשר להכניס שם שרת 1U או 2U, ובמשרד די שקט, רעש כזה בולט (יש לי כמה כאלו פה בבית, מנסיון!)
  • שרות ותחזוקה ל-3-5 שנים, בלי זה אין על מה לדבר.
  • עלות חד פעמית – לא רשיונות בתשלום חודשי. (ביי ביי nVidia ו-Grid!)
  • שרות ותמיכה מקומיים ובעברית.

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

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

לסיכום: יש לקוחות שיכול להתאים להם פתרון X או Y לצרכי VDI, אבל יש לקוחות שצריך להתאים להם פתרון יעודי ויחודי. זה שחברת X הטמיעה פתרון Y לא אומר שהפתרון יכול להתאים תמיד גם לכם מכל מיני סיבות, ולכן כדאי לבדוק דברים היטב ואם צריך – לבדוק מה ניתן לבנות עבור הלקוח בהתחשב בצרכיו ובתקציב שיש עבור הפרויקט.

לפני רכישה – כדאי לחשוב קדימה

כאן בארץ, לא חסרים ארגונים ועסקים שההתמחות שלהם היא בשיווק מוצרים לעסקים וחברות בכל מה שקשור ל-IT – בין אם מדובר בתוכנה, חומרה, שרותי אינטגרציה, תמיכה וכו'. זה הביזנס שלהם ומרביתם יכולים למכור לך כמעט כל מה שתרצה – בין אם זה כונן דיסקטים 5.25" ועד Mainframe – כולל שילוב ואינטגרציה של מה שהם מוכרים. לגטימי? בהחלט.

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

המקרה הראשון התרחש לפני מס' חודשים: קורא נאמן של הבלוג פנה אל עבדכם הנאמן בשאלה פשוטה: החברה הגדולה שהוא עובד שם מתכננים לרכוש 4 דיסקים Optane של אינטל מסוג P4800X דרך יצרן השרתים של החברה. הסיבה לרכישת הדיסקים האלו? מצגת שהראתה להם שבביצועי SQL – הדיסקים הללו יהיו מעולים לצרכיהם, הרבה יותר מכל סטורג' שהם יחברו (בקטע הזה המצגת צודקת. דגם ה-Optane הזה בהחלט מתאים ונותן ביצועים מטורפים!). הדיסקים האלו יכנסו לתוך שרת R740 של DELL, ימופו לתוך VM שיריץ שרת Windows Server 2016 ו-SQL Server. אמרתי לו שלדעתי תהיה בעיית ביצועים, אבל אם הם מעוניינים, אשמח לבדוק להם את העניין – בתשלום. החברה הסכימה. (בכל זאת, 2500$ פר SSD, כלומר $10000 דולר במחירי ארה"ב…)

תודות לכמה יבואנים הצלחתי להשיג את הציוד להשאלה אליי ל-LAB. השרת פורק, חיברתי את ה-backplane עם כניסות U.2, הצמדתי לדיסקים חיישני חום, הפעלתי והתחלתי להריץ בדיקות עומסים שונים. לקח 10 דקות עד שאחד ה-SSD הגיע ל-95 מעלות חום. כמה דקות אחרי זה שאר ה-SSD הגיעו בערך לאותו חום – והביצועים החלו לצלול. סיכום הדו"ח שלי ללקוח הצביע על הבעיה הפשוטה: הן שרתי ה-R740 (וגם כל שרת 2U של HPE או לנובו לצורך העניין) אינם מתאימים בתצורה זו ל-SSD מבוסס Optane של אינטל. הדיסקים הללו מפיקים הרבה יותר חום מדיסקים מכניים או SSD מתחרים. הדרך היחידה להכניס 4 כרטיסים כאלו היא לרכוש 4 SSD כאלו בתצורת AIC (כלומר כרטיס PCIe) ואז למפות אותם. עדיף במקום שרת 2U להשתמש בשרת 3U (אבל אז גם מחיר השרת מטפס הואיל ומה ש-DELL מוכרת בגירסת 3U זה שרת עם 4 מעבדים).

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

  • אבטחה – עם כל הכבוד ל-Kubernetes, הפלטפורמה עדיין אינה מאובטחת כמו OpenShift (תודות ל-SELinux ועוד מספר רכיבים).
  • Auditing, Compliance – בחברות גדולות ומשרדים ממשלתיים מאוד רוצים את זה.
  • מיגרציה בהמשך – תחשבו 4 שנים קדימה, אם Kubernetes עדיין תהיה קיימת, יהיה קשה מאוד להעביר אליה דברים שבנינו השנה לגירסה שתצא אז. במוצר כמו OpenShift היצרן מציע כלים לבצע מיגרציה.

במילים אחרות: Kubernetes זה טוב, אבל במוסדות מסויימים צריכים את ה"מעטפת" מסביב ל-Kubernetes כולל מיגרציה בהמשך – על מנת להכניס מערכת כזו.

המקרה השלישי קשור יותר ל"התלהבות" הולכת וגודלת לכל ה-Hyper Converge בוירטואליזציה (למי שלא מכיר: מערכות כמו vSAN, Simplivity, Nutanix מציעות להקים שרתים שיתנו את כל השרותים הכוללים Storage, Network, Compute – ללא צורך בסטורג' מאסיבי, סוויצ'ים יקרים וכו').

כמו תמיד, חברות כמו VMWare ואחרות לא המציאו מאפס את עניין ה-Scale Out הזה. מערכות File System ל-Scale Out קיימות זמן רב, כמו Lustre FS, מערכת Open Vswitch לצרכי Network, ופתרונות וירטואליזציה שונים הציעו זאת בסביבת HPC כבר זמן רב.  החולשה שיש ב-HPC קיימת בדיוק אותו דבר גם בפתרונות וירטואליזציה Scale Out: אם אתה צריך כמות IOPS מאסיבית של 7 ספרות ומעלה, תצטרך או לרכוש סטורג' יעודי או לרכוש הרבה יותר שרתים פיזיים מכפי שאתה צריך עבור Compute. אם אין לך צרכים כאלו, אז כן, פתרון Hyper Converge יכול להיות פתרון טוב.

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

קצת על Guacamole, כניסה מורשית ואבטחה

כמעט בכל עסק/חברה/מוסד יש לא מעט מקרים בהם יש צורך בעזרה מבחוץ כשיש תקלה טכנית בשרת כלשהו או בתוכנה כלשהי. באותם מקרים בדרך כלל יצרו קשר עם אותו יועץ/אינטגרטור/טכנאי חיצוני, יחברו אותו דרך תוכנה כמו Team Viewer/AnyDesk או תוכנות אחרות ואז אותו סיוע מבחוץ בעצם "משתלט" על התחנה המקומית ועושה את מה שהוא צריך לעשות כדי לטפל בבעיה/תקלה.

לשיטה הזו יש יתרון ברור: אתה רואה מה אותו אדם מבחוץ עושה, ואתה תמיד יכול לנתק אותו במידה ויש צורך בכך. החסרון לעומת זאת, די ברור: בזמן שהוא עובד, אתה לא יכול לעשות מאומה באותו מחשב. זה "נסלח" אם מדובר על משהו קצר כמו רבע שעה או חצי שעה, אבל אם טיפול בתקלה הולך לקחת כמה שעות, עניין השליטה מרחוק הופך לבעייתי. שימוש בלאפטופ עם תוכנת שליטה מרחוק זו אופציה לא רעה, כל עוד בלאפטופ אין מסך עם רזולוציית 4K – תוכנת השליטה לא ממש יודעת לטפל ברזולוציות כאלו. הן יודעות לבצע scale אבל במקרים רבים קשה לקרוא טקסט מרחוק כך.

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

הנה שיטה שאני משתמש בה ואולי היא יכולה להיות ישימה גם אצלכם.

קצת רקע: עבדכם הנאמן נותן שרותי יעוץ ואינטגרציה למגוון פלטפורמות. חלקן פופולריות ומוכרות (כמו vSphere) וחלקן קצת פחות – כמו oVirt, OpenShift, OpenStack, Ceph, Gluster, Kubernetes (ויש עוד לא מעט תוכנות) וכמובן מערכות לינוקס שונות. כל המערכות הללו רצות נון סטופ אצלי ב-LAB מסיבות שונות:

  • בחלק מהמקרים מדובר בהיכרות עם גרסאות חדשות והתנסות עליהן
  • בחלק מהמקרים אני מריץ מספר עותקים של הפלטפורמה כדי להכין PoC להדגמה מרחוק עבור לקוחות פוטנציאליים.
  • בחלק מהמקרים אני מריץ מערכת פגומה כדי לאפשר ליצרן התוכנה להתחבר ולראות את התקלה, במקום שהיצרן ינסה ליצור אותה (לא תמיד בהצלחה. כך לדוגמא ברגעים אלו יש לי כאן מערכת וירטואליזציה oVirt עם באג רציני ב-Nested Virtualization).
  • בחלק מהמקרים אני מתחבר מבחוץ כשאני בישיבה כשאני צריך להדגים מערכת, במקום להתחיל להתקין אותה על הלאפטופ שלי.

וכאן אולי אפתיע אתכם: אני לא משתמש ב-VPN או תוכנות שליטה מרחוק מבחוץ. זה לא בעיה של רשיונות או בעיה של התקנת VPN.

אני משתמש ב-Guacamole.

למי שלא מכיר, Guacamole היא אפליקציית Java שרצה תחת Appplication Server כמו Tomcat או Wildfly (או JBOSS) המאפשרת חיבור מכשירים, תחנות ושרתים לממשק Web מאוחד, הגדרת משתמשים והרשאות וכניסה דרך הדפדפן לתוך כל חיבור. יש כמובן מספר תוכנות כאלו שנמצאות בכל חברה המאפשרות להתחבר ב-SSH/Telnet/RDP/VNC, רק שאת Guacamole לא צריך להתקין על כל מכונה. מספיק שיש דפדפן סטנדרטי ומודרני.

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

  • הראשון הוא עניין TOTP (כלומר Time-based One-time Password) – כך שמי שמתחבר מבחוץ יצטרך להשתמש ב-MFA בכל פעם שהוא מתחבר (בנוסף לשם משתמש וסיסמא)
  • הגישה שהוא מקבל – היא למכשיר/מכונה אחת או יותר שהוא צריך. אם הוא ינסה להיכנס למכונות אחרות – אני יוכל לראות זאת.
  • המכונה שהוא ניגש אליה – שמורה ב-snapshot ב-ZFS כך שאם הוא יגרום נזק, אפשר תוך שניות ספורות לחזור אחורה.
  • וכמובן הכל מוקלט – ל-Guacamole יש אפשרות "הקלטת session" שמקליט כל מקש שהמשתמש מבחוץ מקיש ומה הוא רואה על המסך, כך שאני יכול לראות בזמן אמת מה הוא מקיש ומאוחר יותר אני יכול להמיר את ההקלטה לקובץ MP4 כדי לראות בבירור מה בוצע במכונה.
  • מכונות קריטיות ב-LAB – אינן זמינות דרך ה-session.
  • הגישה מבחוץ זמינה רק לאחר שהפעלתי זאת. כברירת מחדל, אין גישה מבחוץ לשום דבר.

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

על מנת לממש את הדברים ב-LAN של חברה, מבצעים את הצעדים הבאים:

    • מקימים מכונת VM עם לינוקס ועליה מתקינים את Guacamole ומוסיפים את תוסף ה-TOTP (לחובבי אובונטו, יש בלינק הזה סקריפט מוכן להתקנת האפליקציה באופן אוטומטי)
    • מגדירים משתמשים (אפשר לחבר את זה ל-Active Directory לפי ההוראות בקובץ PDF זה. זה קצת מורכב) ומגדירים סשנים למכונות או ציוד שיש צורך בגישה אליהם. שימו לב – כל סשן למעט עם חיבור VNC מתנתק ברגע שסוגרים את ה-TAB, כך שאם רוצים להשאיר דברים רצים בלינוקס לדוגמא, אפשר להשתמש ב-nohup או להשתמש ב-screen או TMUX.
    • מגדירים אלו סשנים יהיו זמינים לאלו משתמשים
    • על מנת שסשן יוקלט, בכל הגדרת חיבור יש בסוף הדף הגדרות להקלטה. בד"כ יספיק path ושם כלשהו כדי להפעיל את ההקלטה (ההקלטה תישמר בתוך שרת ה-Guacamole, לא במכונה שמתחברים אליה דרך ה-Guacamole). חשוב לזכור, ההקלטה היא בפורמט דחוס שיש צורך בהמרה, ואותו כדאי לשמור בסטורג' או ב-NAS כך שמומלץ לחבר את שרת ה-Guacamole לאיזה NFS share על מנת לשמור הקלטות לעתיד לצרכי אבטחת מידע. כל הקלטה כזו ניתן מאוחר יותר להמיר לקובץ MP4 על מנת שלא לתפוס יותר מדי מקום באחסון.
    • ב-Firewall מגדירים Static NAT בין IP חיצוני ל-IP פנימי שמריץ את ה-Guacamole. את החוק הזה מכבים ומפעילים לפי צורך. (למתוחכמים – אפשר לכתוב סקריפט פשוט שמשתמש ב-CURL ומתחבר ל-API של ה-Firewall על מנת להפעיל/לכבות את החוק הספציפי).

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

טיפ: כשרוצים להוסיף דיסקים SSD מקומיים בשרת

בעולם השרתים, יש סוג מסוים שמיועד לאינטגרטורים ולא ללקוחות קצה. הקטגוריה של השרתים הללו נקראת "שרתי Tier 1".

בניגוד לשרתים רגילים שרוכשים מ-HP/לנובו/DELL ששם אתם מקבלים שרות מהקצה עד הקצה, בשרתי Tier 1 אתה מקבל אפס תמיכה טכנית (הדבר היחיד שכן מוכנים לעשות עבורך הוא להחליף ציוד תקול) והתשובה הקבועה שתקבל מהתמיכה הטכנית היא משהו כמו: זה שרת Tier-1, אין תמיכה טכנית, כך שאם מישהו רוצה לרכוש שרת כזה, עדיף שיכיר היטב איך לזהות חולשות ובעיות תכנוניות של לוח אם, איוורור, נתיבי PCIe מבחינה לוגית (לא רק פיזית) ועוד, אחרת בקלות אפשר לרכוש "פיל לבן". כך לדוגמא השרת בתמונה למעלה היה אמור להירכש על ידי חברה מסויימת בארץ – למטרת הקמת "סטורג'" מאוד מהיר (כל הדיסקים שנכנסים מקדימה הם SSD NVME בלבד). הם פנו לכל מיני אינטגרטורים שנתנו המלצה חיובית לרכישה ואז הם פנו אל עבדכם הנאמן דרך בלוג זה והמלצתי היתה שלא לרכוש מהסיבות הבאות:

  • הלוח אינו תומך במעבדי XEON נוכחיים.
  • תכנון האיוורור גרוע לדיסקים SSD NVME ולהמשך השרת (מעבדים, זכרונות, כרטיסים) מכיוון ש-SSD NVME רציניים דורשים קירור הרבה יותר רציני בהשוואה ל-SSD רגיל.
  • פריסת תושבות ה-PCIe אינה מתאימה לצרכים הנדרשים, ועם החום שמופק בתוך מכונה כזו, הביצועים יהיו נמוכים.

אחד היתרונות הגדולים בעבודה עם שרתים כאלו – זה שאתה לומד "על הבשר" מה אפשרי לעשות, מה לא, ואפשר להסיק מסקנות שיכולים לעזור בשרתים יותר קונבציונאליים שחברות בארץ רוכשות.

מכאן נעבור לשרתים רגילים, שכל חברה קונה. אלו כמובן שרתים שניתן לקבל עליהם תמיכה או online או טלפונית. הבעיה: בחלק מהמקרים התמיכה שניתנת אינה מספקת תשובות נכונות (קורים מקרים בהם החברה דווקא כן מפרסמת KB עם מידע נכון אולם התומך לא מעודכן בפרסומים והמידע שנמסר ללקוח – שגוי).

אחד המקרים הכי נפוצים הוא מקרה של לקוחות שיש להם שרתים והם מעוניינים מעוניינים להוסיף דיסקים SSD מקומיים לשרת. במקרים כאלו רוכשים SSD מהיצרן (HPE מוכרים את מוצרי ה-SSD של אינטל, לנובו ו-DELL מוכרים את הדיסקים SSD של סמסונג, ולפעמים גם נמכרים SSD של טושיבה ומיקרון).

טכנית, אני ממליץ לרכוש מיצרן השרת דיסקים SSD מבוססי SATA ולא SAS מכיוון ש-SATA Enterprise עבר כברת דרך ארוכה באמינות, ויתרון הערוץ הכפול לא רלוונטי בשרתים מודרניים הואיל ובקר ה-RAID הראשי מוטמע בלוח האם, כך שאם יש תקלה, השרת מושבת בכל מקרה. מבחינת ביצועים – כיום SATA עוקף SAS (ב-SSD).

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

יש לכם כבר 8 ורוצים להוסיף עוד? סביר להניח שתצטרכו בנוסף לדיסקים SSD לרכוש "Extension Kit" לשרת עצמו. אצל חלק מהיצרנים מדובר על מספר כבלים וכרטיס SAS Expander שאותו יש לחבר אל כניסות בקר ה-RAID ומה-SAS Expander לחבר את כל הכבלים אל ה-Backplane. יש מקרים שאתם תצטרכו לעשות זאת ויש מקרים שטכנאי מטעם היצרן יבוא ויעשה זאת (תלוי בחוזה שלכם מול יצרן השרתים). אם מדובר לעומת זאת בשרת ישן (נניח G7/G8 של HPE או R710/R720 של DELL או M2/M3 של IBM) – תהיה לכם בעיה כלשהי, ההסבר לגביה – בהמשך הפוסט.

יהיו מקרים, כמובן, שבחברה מסויימת ירצו להרחיב מעבר ל-16 דיסקים. במקרים כאלו בדרך כלל היצרן ימכור ללקוח כרטיס SAS Expander בערך כמו שיש פה בתמונה משמאל שמאפשר חיבור של 24 דיסקים. מבחינת חיבוריות – אין שום בעיה לחבר את הכל כמו במקרה של הרחבה מ-8 ל-16.

הבעיה – צוואר בקבוק.כמעט כל בקר RAID, בין אם מדובר בכרטיס ובין אם מדובר בשבב שנמצא על לוח האם, תופס 8 נתיבי PCIe (כלומר PCIe X8) ו-PCIe 3.0 X8 (שנמצאים בשרתים מודרניים) יכול להעביר ברוטו עד 8 ג'יגהבייט (קצת פחות בפועל). אם נזכור ש-SSD כשקורא נתונים – מעביר אותם במהירות של 450-550 מגהבייט לשניה, ונכפיל את זה כפול כמות ה-SSD בשרת (אני לא ממליץ על RAID-5 כמו שכתבתי לעיל, אבל מי באמת מקשיב?) – ואנחנו יכולים להגיע למצב שבקר ה-RAID "יחנק" עוד במצב של 16 דיסקים. אם כל הדיסקים (24) מחוברים ל-RAID והמערכת מוגדרת כ-RAID-5 על כל הדיסקים – הביצועים פשוט יצנחו בכל מה שקשור לקריאת נתונים. המצב חמור יותר בשרתים ישנים ששם בקר ה-RAID משתמש ב-PCIe 2.0 X8 שאז יש מחצית מרוחב הפס והבקר "יחנק" מ-8 דיסקים SSD אם המערכת קוראת וכותבת מכל הדיסקים במקביל.

לכן – אם מתעקשים להכניס לדוגמא 24 דיסקים SSD בשרת אחד (או בשרת ישן לעבוד עם יותר מ-8 דיסקים SSD), יש לשקול את האפשרויות הבאות:

  • להוסיף בקר RAID עם 2 כניסות SFF 8087 ולחבר אליו את ה-8 דיסקים SSD (אחרי 16). בשרתים ישנים אפשר לרכוש 2 בקרי RAID עם 2 כניסות SFF 8087 ולחבר אליהם את הדיסקים. החסרון בשיטה זו: אין RAID "המשכי" לכל הדיסקים, אבל גם לכך יש פתרון, המשיכו לקרוא.
  • לעצור ב-16 דיסקים.
  • לרכוש במקום בקר RAID – כרטיסי HBA (או כרטיס RAID במצב IT MODE) ולהקים RAID מבוסס תוכנה (כל מערכת הפעלה מאפשרת זאת, ויש גם תוכנות יעודיות לכך כמו FreeNAS, UnRaid, XPEnology ועוד). שימו לב – החלפת בקרים אינה דבר מומלץ ואינו נתמך רשמית על ידי יצרני השרתים.
  • לפצל לשרתים נפרדים. 2 שרתים עם 8 דיסקים SSD יתנו עבודה יותר מהירה.

לסיכום: זה שיש 24 מקומות לדיסקים SSD בשרת, לא אומר שהשרת באמת בנוי להפעיל 24 דיסקים SSD (ובשרתים ישנים – יותר מ-8 SSD במקביל, גם אם מדובר בבקר עם 4 כניסות SFF-8087), בדיוק כמו שרוב מוחלט של השרתים שנמכרים לחברות לא יכולים להפעיל 24 דיסקים SSD NVME (אל תנסו. תכנון הקירור, גם בדגמים הכי חדשים של DELL/HPE/לנובו לא מתאים לכך). עדיף לחלק את הדיסקים בין 2 מכונות פיזיות, ואם אתם מתעקשים "להפציץ" מכונה אחת בדיסקים SSD – עדיף לייעד אותה לשימוש כ-NAS עם מפרט נמוך ולהריץ את הדברים הדורשים ביצועים בשרת אחר.

תחום ה-VDI וענן – עדכון מצב

יש משהו אחד שקשה מאוד למצוא אצל ספקי ענן ציבורי – וזהו כמובן שרות VDI, שרות מבוסס SaaS וזה מפתיע לא מעט אנשים. מדוע שספקי ענן ציבורי לא יציעו שרות כזה? הרי הם מציעים שרותים מכאן ועד הודעה חדשה…

על מנת להבין את הבעיה, נתחיל בהתחלה הפשוטה: כל ספקי הענן ישמחו לאפשר לך לשכור מכונה (Instance או VM) מבוססת Windows, בין אם מדובר על Windows Server 2012, 2016 או אפילו 2019. אין שום בעיה. רוצה משהו כמו Windows 10 או גירסה מתחת? תשכח מזה. ספקית ענן כמו אמזון שמחה להציע משהו "דומה ל-Windows 10" לדוגמא. מה שתקבל בעצם זה Windows Server 2016 ששינו לו מספר גדול של ערכים ב-Registry, שהותקן עליו Windows Experience וגם מספר אפליקציות בסיסיות. יש גם את חבילת ה"פלוס" שכוללת אופיס, אבל אז אתה משלם תוספת שכוללת תשלום חודשי למיקרוסופט לא רק על ה-OS, אלא גם על ה-Office שמותקן ב-Instance. למכונה כזו אתה יכול להתחבר עם כלים שונים שמתאימים לכל מערכת הפעלה קיימת, כולל סלולרי/טאבלט/כרומבוק וכו'.

אז מדוע אף אחד לא מציע מכונה מבוססת Windows 10? אחרי הכל, שרות שידע להקים מכונה כזו מ-אפס או אפילו לקחת Sysprep שלך ו"להלביש" אותו על ה-OS זה לא משהו כזה מסובך לכתוב…

הבעיה מגיעה מכיוון רדמונד. מיקרוסופט לא רוצה (ולפעמים גם נלחמת באמצעים משפטיים) ששום ספק יציע שרות כזה, ולא חשוב אם מדובר בספק ענן ענק, או בחברת Hosting פצפונת. מבחינת מיקרוסופט, המוצרים היחידים מבחינת OS המוצעים לספקי Hosting וענן כאחד – הם אלו הכלולים תחת רשיון SPLA בהם הספק משלם למיקרוסופט כל חודש על רשיונות ה-Windows Servers (וכלים אחרים) ואת המחיר הוא מגלגל על הלקוח. במסגרת הדברים המוצעים ב-SPLA, אין שום הצעה/שורה למערכת דסקטופ כלשהי, ולא חשוב אם מדובר בגירסת Home או Enterprise.

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

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

וכאן נשאלת השאלה שכולם ירצו לדעת: האם זה שווה פיננסית? ניקח דוגמא: ראובן, CTO של חברה גדולה מעוניין לזרוק/לגרוט את כל ה-800 דסקטופים של החברה. להתקין לכולם Thin Client (ואלו שמחוץ לחברה ישתמשו בתוכנת Client יעודית או בדפדפן) ופשוט לעבוד בענן. אם מחר ראובן היה שוכר את שרותי היעוץ שעבדכם הנאמן מציע – מה הייתי אומר לו?

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

הדבר הזה טוב ויפה (ואני אתייחס אליו יותר בפירוט בפוסט הבא) וזה עובד מקומית טוב. הבעיה מתחילה כשהדברים רצים מספק ענן ציבורי. קודם כל יש לנו השהיה (Latency) שהיא גבוהה פי כמה וכמה בהשוואה לפתרון VDI מקומי (מה שאומר שיש מצב שמשתמש יקליק עם כפתור העכבר שוב ושוב ושוב כי הוא לא ראה תגובה, מה שעלול להפעיל כל מיני תהליכים מיותרים). הדבר השני החשוב – קשור בעלויות: אם פתרון ה-VDI שלך רץ מחדר השרתים שנמצא בבניין/בניין סמוך – העלות מבחינת תקשורת היא כמעט אפסית (אם ננכה עלויות של סיב אופטי בין בניינים וכו'). בענן לעומת זאת, הדברים הפוכים – כל דבר שמוצג על המסך וכל עדכון של כל פיקסל עולה לך כסף. נסו לדמיין סיטואציה בה אתם גולשים באתר ישראלי. כל הפרסומות והאנימציה המוצגים? עולים לכם כסף, ולא מדובר בעלות חד פעמית! כל פריים שהפרסומת מציגה, עולה לכם כסף, כך שצפיה פשוטה באתר מתחילה לעלות לכם הרבה יותר! צופים בוידאו? תשלמו הרבה יותר. פייסבוק? האתר סופר דינמי, וגלישה בהחלט תוסיף למחיר הסופי, וכמובן שלא דיברנו על כך שיהיו לא מעט שרותים חיצוניים שפשוט יסרבו לפעול בגלל שאתם מגיעים מכתובת IP זרה שאינה ישראלית (תסבירו את זה למחלקת הנהלת חשבונות, מדוע הם לא מצליחים לבצע פעולות ולקבל מידע בחשבונות הבנק של החברה, או שתנסו להתחבר למערכת שע"מ של רשויות המס. בהצלחה עם זה).

בקיצור: אם ספקי הענן יציעו שרות של מכונות וירטואליות עם Windows 10 כ-שרות VDI והם יגבו כמו שהם גובים כיום על Instances, המחיר הכולל פשוט לא יהיה שווה מכיוון שעלויות התקשורת יהיו אסטרונומיות. החברות יצטרכו להציע חבילות Bundle הכוללות מספר טרהבייט תעבורה בחודש עם שרות VDI.

לסיכום: VDI בענן במחשבה ראשונה יכול להישמע רעיון לא רע, אבל כשמתחילים לחשוב על העלויות של Instances ובמיוחד העלויות של תקשורת בין הענן אל המשתמשים בארגון, ואם מוסיפים לכך ענייני רגולציה ובעיות תקשורת עקב כך שהכתובות IP אינן ישראליות – הרעיון כרגע אינו שווה כל כך פיננסית. אם לעומת זאת ספקי הענן יתנו חבילות תקשורת עם מחיר טוב בכל הקשור לתעבורת VDI וניתן יהיה לקשר כתובות IP ישראליות מספק מקומי אל ספק הענן (כמו שרות BYOIP שאמזון מציעים) – יכול להיות שזה יהיה משתלם. האם ניתן יהיה להעביר הכל לענן? לא. כל דבר שמצריך VPN לא ניתן יהיה להעביר (מכיוון שמשתמשים בתקשורת אל ה-VM ש"נופלת" ברגע שיש שכבת VPN, ובמקרים של VPN כמו של סיסקו המערכת פשוט לא נותנת להתחבר) ויש כמובן את המכונות המקומיות שקשורות לכל מיני ציודים שיש בהם צורך מקומית (GPU, תקשורת לסטורג' מקומי וכו').

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

נקודות למחשבה לגבי מעבר לענן (2019)

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

לכל מי שיש שרתים כמו R720 או R730 של Dell לדוגמא, האחריות תפוג בקרוב (את ה-R730 ניתן להאריך כמובן), ומכיוון שרבים מעוניינים לעבוד עם שרתים שנמצאים תחת אחריות מלאה, יש לא מעט פניות ותהיות אם לרכוש שרתים חדשים או פשוט להעביר את הדברים לענן.

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

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

נניח וירון בוחר את השיטה להחליף "ברזלים" – נניח R710/R720 ב-R740 – העלות שלו תהיה Fixed ומשולמת מראש. נניח לשם הדוגמא ש-R740 עולה 10,000$ ויש לו 3 שרתים ישנים והוא מעוניין להחליף את כולם, אז העלות תהיה בעצם 30,000$. במחיר הזה ירון מקבל את האפשרות להביר מכונות VM לתשתית החדשה תוך שימוש ברשיונות קיימים (בדרך כלל, קיימות גם חריגות) והוא יכול בהמשך להוסיף עוד מכונות VM ללא עלות נוספת (שוב, למעט מקרים של רשיונות ל-OS וכו').

אבל הסתכלות כזו היא הסתכלות חסרה. מה קורה לדוגמא עם הסטורג'? האם הוא "חנוק"? האם החברה נמצאת במצוקת מקום ו/או ביצועים בסטורג'? כי אם כן, זה שנחליף שרתים ישנים בשרתים חדשים ונוצצים – לא תמיד תעזור. צריך גם להתייחס לנקודה של הסטורג' והאם צריך להחליף או לשדרג אותו או להוסיף אחד נוסף.

אז בואו נחשב מחיר: יש לנו 50 מכונות VM שפרוסים על 3 שרתים והם יתנו שרות לפחות ל-3 שנים הקרובות. מחיר פר VM יצא 600$. אפשר כמובן לקצץ ולרדת ל-2 שרתים עם מעבדים חזקים מרובי ליבות וכמות זכרון משמעותית (נניח 256 ג'יגה פר שרת פיזי). חושבים שזה יעזור? מהרגע שעוברים ממעבדים כמו Xeon SP Silver למשהו יותר רציני – המחיר יטפס בכמה אלפי דולרים, כך שלא בטוח שאם נרד בכמות השרתים (אך נשדרג במעמד ההזמנה את אלו שאנחנו רוצים לרכוש במפרט יותר "כבד") זה יעזור. אנחנו יכולים לרדת במחיר VM מ-600$ נניח ל-500$ ואפילו $400. המחיר ירד יותר אם אותן מכונות VM יעבדו יותר שנים, כמו לדוגמא 5 שנים – אז אנחנו יכולים לרדת ל-$133 פר VM.

נניח עתה שירון רוצה להסתכל על הפתרונות בענן. שיהיה מה להשוות.

אז בואו נאמר שב-AWS ניקח מכונה צנועה, 2 ליבות, 8 ג'יגה זכרון, תעבורת תקשורת נמוכה ו-80 ג'יגה דיסק (EBS). המחיר לחודש – 80$. את המחיר הזה ניתן "לחתוך" אם ירון מוכן לשלם לשנה מראש או 3 שנים מראש על אותו VM. אם זה לשנה, הוא יצטרך לשלם $1740 ואם זה ל-3 שנים, אז הוא יצטרך לשלם $1159 (כלומר אפקטיבית הוא כביכול ישלם 32.20$ לחודש) – אז בתכל'ס ניתן להגיע למחירים טובים פר VM (זה קיים אצל כל ספקי הענן הגדולים, אגב). יש,אגב, מסלולים שונים, תלוי בספק הענן.

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

  • רוצים קו יעודי (MPLS) של 100 מגה נניח מחברתכם אל אמזון? זה יעלה כמה אלפי דולרים, לאמזון ולספק התשתיות שלכם.
  • לא רוצים פתרון MPLS אלא VPN? אין בעיה. התשלום יהיה על ה-Instance שיריץ את פתרון ה-VPN ועל התעבורה היוצאת מאמזון אליכם (משלמים על הכיוון מאמזון החוצה, לא להיפך)
  • יציאה לאינטרנט – אתם משלמים על כל ביט שיוצא החוצה לאינטרנט מהתשתית שלכם בענן, ותלוי גם לאן התקשורת יוצאת – כל אזור והמחיר שלו (המחיר הולך פר ג'יגהבייט)
  • רוצים לגבות את התכנים? רעיון מעולה! כל ספקי הענן מציעים שרותי אחסון שונים (כמו S3 ועוד) ויש עלויות של כמה סנטים פר ג'יגהבייט (תלוי בענן, ובסוג שרידות שאתם מחפשים עבור הגיבוי).
  • כתובות IP אמיתיות – כל כתובת עולה כסף ואם ביקשתם הקצאת כתובות ולא השתמשתם – המחיר פר IP קופץ פי 3-4 (המחיר הוא בדרך כלל ל-IP אמיתי בשימוש בסביבות 1-2$ לחודש)
  • החלטתם להשתמש בשירותים שונים כדי לחסוך הקמה ותחזוקה של שרות דומה? יש מחירים Pay as you go ויש מקרים שאפשר לשלם מראש ולחסוך. ככל שיש יותר שימוש, המחיר עולה.

(עכשיו אתם מבינים מדוע אני מתייחס לעננים המקומיים שמציעות חברות תקשורת מקומיות שונות שמריצות תשתית של VMWare או Hyper-V כבדיחה?)

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

  • ב-On Prem אתה משלם על הציוד פעם אחת ואם אתה רוצה להוסיף נניח עוד מכונות VM, העלות תהיה אפסית (למעט במקרים שצריך שדרוג ציוד).
  • ב-On Prem כשיש תקלה, אפשר לטפל בה מקומית 24X7 ולא תלוים בספק הענן (אם משתמשים בשרותים של ספק הענן לדוגמא) עד שיתקנו את התקלה.
  • בענן אפשר תוך דקות ספורות להתחבר לשרותים שונים שחוסכים הקמת שרתים/הגדרות/תחזוקה ואפשר להשתמש ישירות בשירות. כך לדוגמא, במקום להחזיק Cluster של SQL, אפשר להשתמש בשרותי RDS.
  • בענן מחירי ה-VM יותר זולים – אם מוכנים לשלם מראש.
  • בענן אתה תמיד רץ על תשתית חזקה ואף אחד לא מכניס את ה-Instances שלך למכונות שכבר עמוסות. במקרים רבים ה-Instances רצים על מעבדים יחודיים חזקים שלא זמינים לשוק הרחב.
  • שרותי תמיכה בענן ישירות מספק הענן – אינם זולים.
  • נקודה חשובה: ב-On Prem אין לך הפתעות במחיר או בחשבונית חודשית.
  • כשזה מגיע לתשלום – בענן אין "שוטף/שוטף פלוס". התשלום הוא בתחילת החודש הבא.

כמו שאתם מבינים, אין תשובה לכאן או לכאן. זה תלוי בעסק, תלוי מה יש לו, תלוי במחיר שהוא צריך לשלם, תלוי באנשי IT שלו, ותלוי בדברים נוספים שצריכים להילקח בחשבון. בנוסף, אין שום דבר רע ב-Hybrid (שהוא מומלץ, לעסקים גדולים שצריכים תשתית מחשוב רצינית) ולארח חלק מהתשתית בענן וחלק אחר מקומית מבלי לנסות לזרוק את הכל החוצה לענן.

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

הערה: המספרים שציינתי לגבי שרתים חדשים ועלויות תיאורתיות של VM מקומי – הם מספרים מופרכים והם כאן רק לשם הדגמה בלבד.

המלצות וטיפים לגבי רכישת ציוד ל-AI/Deep learning

תחום ה-AI ו-Deep Learning (אני אקרא לזה בקיצור DL) תופס תאוצה בתעשיות רבות, ובלא מעט מקרים הפתרונות שקיימים בענן – אינם מתאימים או שאינם יכולים להיות בשימוש עקב אילוצים שונים: חברות בטחוניות, רגולציה, סודיות ועוד, ולפיכך חברות שונות מעוניינות לקנות את הציוד כדי לפתח פתרונות AI/DL.

אז אני קודם כל רוצות להודות לחברת CRG שהשאילה לי ציודים (כרטיסי GPU ומכונות) כדי לבדוק פה ב-LAB את הדברים לפני שאני כותב את הפוסט הזה.

נתחיל במקרים פשוטים ונמשיך ביותר מורכבים.

תחנות עבודה
בלא מעט מקרים יש צורך בתחנות עבודה למפתחים ואחד הדברים שצריך להחליט הוא כמובן סוג ה-GPU וכמה כרטיסי GPU. במידה ומדובר בכרטיס אחד ולא ממש מחפשים ביצועים אלא יותר לנסיונות – מומלץ לרכוש כרטיס כמו RTX 2080 או RTX 2080TI, אך לא מומלץ לרכוש RTX 2070 ומטה. הסיבה לכך שכרטיסים כמו RTX 2070 ומטה אינם כוללים חיבור NVLINK (שהוא חיבור מהיר בין הכרטיסים – 100 ג'יגהביט לשניה) כך ש-2 כרטיסי RTX 2070 יעבדו יותר לאט בהשוואה לכרטיסים כמו RTX 2080 או RTX 2080TI עם חיבור NVLINK ביניהם (ניתן לחבר מקסימום 2 כרטיסים). אם מעוניינים בכרטיסים יותר מהירים אך עדיין לא להיכנס לתחומי ה-Quadro וה-Tesla, ניתן לרכוש את ה-Titan RTX.

כמות ה-GPU המקסימלית המומלצת בתחנת עבודה היא עד 3 ויש לכך מספר סיבות:

  1. אם רוצים לעבוד מקומית על התחנה (הכוונה לחבר אליה מסך מקלדת ועכבר), יש צורך ב-GPU כמו RTX כדי לחבר אליו מסך. בחלק מתחנות העבודה יש חיבור VGA אולם זהו חיבור שמיועד לניהול התחנה מבחינת סיסטם ולא לעבודה רציפה (העבודה כדסקטופ לינוקס גרפי תהיה איטית, ויש פה ושם מספר באגים בקוד התצוגה של שבבי הניהול).
  2. הכרטיסים הללו מפיקים המון חום וצריכת החשמל גבוהה – עם 4 כרטיסי GPU ו-2 מעבדים מגיעים בקלות ל-1400 וואט ומעלה.
  3. זה מרעיש.
  4. לפעמים צריכים את התושבת להכנסת ציוד אחר – כרטיסי רשת 10 ג'יגה, חיבור לסטורג' ועוד.

בקיצור – צריכים להכניס מעל 3 כרטיסים לצורך AI/DL? תחשבו על שרתים.

לרכוש כרטיסי TESLA?
כרטיסי ה-Tesla הם כרטיסים מאוד יקרים. החסרון שלהם בהשוואה לכרטיסי RTX היא המהירות שהם עובדים (בערך חצי ממהירות השעון בהשוואה לכרטיס RTX 2080TI), אבל היתרון שלהם הוא בכך שיש להם זכרון בדרגה גבוהה יותר (ECC), אחריות יותר ארוכה, ויותר זכרון מכרטיסי RTX (למעט RTX TITAN שמכיל 24 ג'יגה זכרון בהשוואה ל-11 ב-RTX 2080TI) וניתן לשרשר אותם כדי לקבל מהירות תעבורת נתונים מאוד גבוהה (למעט כרטיס Tesla T4 שאינו כולל NVLink).

שרתים לצרכי AI/DL
כל יצרן שמייצר שרתים (כולל כאלו שפחות ידועים כמו ASUS ו-PNY) מייצר שרתים מיוחדים למטרה זו. המפרטים מגוונים ומבחינת גדלים – מתחיל ב-1U ונגמר גם ב-20U. הפופולריים בד"כ הם 2U או 4U. בדרך כלל ב-2U תוכלו להכניס עד 4 כרטיסים וב-4U תוכלו להכניס (תלוי בדגם וביצרן) עד 16 כרטיסי GPU Dual Slot. בשרתי 1U-2U לא מומלץ להכניס כרטיסי GTX/RTX מכיוון שבעת עבודה רצינית, האיוורור שמגיע דרך המפוח אינו מספיק חזק ולפיכך ה-GPU מאט את פעילותו ומהירות השעון יורדת. כרטיסים כמו Quadro (שאגב, הוא פחות מתאים ל-AI/DL, הוא יותר לתלת מימד ווידאו) ו-RTX לפיכך יותר מתאימים לתחנות עבודה ואילו הכרטיסים לשרתים אינם כוללים מאוורר.

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

לינוקס וכרטיסים ל-AI/DL
באופן עקרוני, הורדת גירסת ה-CUDA מאתר nVidia (בגירסת הקובץ run) מכילה בתוכה כבר את הדרייבר היציב שתומך בכל הכרטיסים, כך שאין צורך להתקין בנוסף דרייבר של nvidia. יחד עם זאת, שימוש במעבד הגרפי הפנימי של אינטל או בממשק הניהול של המכונה בתצורה גרפית והתקנת ה-CUDA יכולים ליצור קונפליקטים שלא יאפשרו למכונה יותר להיכנס למצב גרפי. ניתן בהתקנת ה-CUDA לבטל התקנת OpenGL, אך לפעמים גם זה אינו עוזר (במיוחד כשיש שבב ניהול במכונה של ASpeed) ולכן חשוב להתקין את הפצת הלינוקס ללא סביבה גרפית אלא טרמינל בלבד. אם מעוניינים לעבוד עם שרת מרחוק ובכל זאת רוצים להשתמש בסביבה גרפית, עדיף להתקין תוכנה כמו NX Server של חברת NoMachine או להתקין VNC. אם אתם צריכים גם סביבה גרפית וגם להשתמש בדברים כמו TensorFlow עם OpenGL, מומלץ לרכוש את Nomachine Workstation שכוללת קידוד חומרה של H.264 כך שהדסקטופ הגרפי המרוחק יהיה מהיר מאוד עם תצוגה מעולה.

תחרות
זה לא סוד שכרטיסי Tesla של nVidia החזקים ממש לא זולים וגם כשחברות גדולות מעוניינות לרכוש והם מקבלים את הצעת המחיר – יש לפעמים היסוסים ומעוניינים לשמוע הצעות אחרות. גם ל-AMD יש מה להציע בתחום, אולם אינה ההחלטה כה פשוטה של אי רכישת Tesla ובמקומה לרכוש Instinct של AMD. יש עוד פרמטרים לקחת בחשבון (סוג ה-FP למשל). יש כמובן גם מקרים שרוצים להכניס מספר גדול של כרטיסי RTX בשרת, האם זה עובד? יעיל? על כך אפרסם פוסט בקרוב.

בניה עצמית
בלא מעט מקרים רוצים להשמיש ציוד קיים ופשוט רוצים לרכוש את הכרטיסים ולהכניס אותם פנימה לשרת או תחנת עבודה שקיימת בחברה. אחרי הכל – תושבות פנויות יש, אז פשוט נרכוש ונגמור עניין.
וכאן צצה בעיה: לא כל תושבת PCIe X16 היא באמת כזו. בחלק מהמקרים החיבור הפיזי הוא X16 אולם אם יש כרטיס נוסף במחשב, החיבור ירד מבחינה אלקטרונית ל-X8, ואם מכניסים GPU נוסף (שלישי) אותו חיבור ירד ל-X4. בניקוד למשחקים ועריכת וידאו, ב-AI/DL מהירות ה-PCIe חשובה (גם אם אתם משתמשים ב-NVLink – החומר צריך לעבור דרך ה-CPU) ולכן רק לוחות מסויימים או תחנות עבודה מסויימות שכוללות במפרט נתיבי X16 אלקטרוניים (ויותר מתושבת אחת, ובלי "תנאים") יכולים להתאים לכך.

לסיכום: רכישת תחנת עבודה, או כרטיסים לצרכי AI/DL מצריכה מחשבה על מספר שיקולים, וגם לאחר הרכישה יש מספר סיכונים לגרום למכונה לא לעבוד עקב הגדרות לא נכונות, ולכן אני ממליץ לחשוב ואם צריך – להתייעץ לפני רכישה.

על דיסקים מכניים גדולים ו-RAID

מי שעוקב אחרי חדשות טכנולוגיות יכול למצוא אחת לכמה חודשים הכרזות של יצרני דיסקים שונים על דיסקים חדשים, לפעמים על שיטת קריאה/כתיבה חדשה. כך לדוגמא, חברת Showa Denko K. K. הכריזה כי היא סיימה לפתח ראש MAMR חדש לדיסקים קשיחים עבור חברת טושיבה, וטושיבה תוציא דיסקים קשיחים בגודל 18 טרה המבוססים על טכנולוגיה זו במשך השנה. צפו להכרזות דומות מצד שאר היצרנים.

כיום, בין אם יש לך שרת שאתה מכניס בו דיסקים קשיחים ומחבר אותו לבקר RAID כלשהו, ובין אם יש לך סטורג' קנייני – כל היצרנים ישמחו למכור לך דיסקים קשיחים גדולים – בין אם ישירות מיבואן יצרן הדיסקים ובין אם דרך החברה שרכשת ממנה את השרת או הסטורג'. רוצה מדף עם 12 דיסקים של 10 טרהבייט? בשמחה! תחתום פה ופה, תעביר כרטיס אשראי או תשלח צ'ק וטכנאי בדרך אליך להתקין את המדף לסטורג' ולהגדיר אותו. אין צורך לדאוג, גם הדיסקים הגדולים שנמכרים כיום נמכרים עם SAS Dual Port לחבר ל-2 כרטיסי RAID (אם אתה רוצה להכניס את זה לשרת, בסטורג' זה אוטומטי).

אבל האם זה שווה לרכוש את הדיסקים הללו? בכל זאת, אם קנינו מדף של 12 דיסקים בגודל 10 טרה, אנחנו נקבל ברוטו 120 טרהבייט, זה שקט להרבה זמן מבחינת אחסון פנוי!

בעבר כתבתי על הנושא והצרות עם זה, ועכשיו גם חברת Western Digital, אחת מחברות יצרני הדיסקים הגדולים – כותבת על כך (ואני ממליץ מאוד לקרוא את הפוסט!). הסיבה שהם כותבים היא כמובן כדי לדחוף 2 מוצרים שהם מוכרים. אני לעומת זאת כותב מהנקודה היותר פרקטית – של סכנה.

לשם פוסט זה, נניח ויש לנו את ה-12 דיסקים של 10 טרה, והם מורכבים בסטורג' או בשרת עצמאי עם 2 בקרי RAID (או אחד, זה לא ממש משנה מבחינת מהירות קבלת נתונים, ה-Dual Port ב-SAS הוא יותר לשרידות, אם כי במצב שהולך לך בקר, אני הייתי ממליץ לך להשבית את השרת עד שיגיע טכנאי עם חלק חלופי. אתה לא רוצה לסכן את ה-DATA שלך!). נניח שהגדרנו RAID, נניח 5 או 6 (במצב של 1 זה הרבה יותר מסוכן) או כל "RAID" בסטורג'.

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

וכאן… מתחילות הבעיות והסיכונים צצים…

  • אם הדיסקים נמצאים בשרת והם מחוברים לבקר RAID (וזה לא חשוב איזה RAID הגדרתם, למעט כמובן 0 שאז הלך ה-DATA) – השחזור לא רק שיהיה איטי ויקח מספר ימים, אלא שאתם תסבלו מביצועים נמוכים מאוד באותם ימים הואיל וכל מערך ה-RAID צריך לעבוד בעצם כפול: גם לשרת את הצרכים שלכם, וגם לקרוא מהחלקים השונים של הדיסקים על מנת לכתוב את ה-DATA מחדש על הדיסק החלופי.
  • מכיוון שאתם מאמצים את המערכת – יש סיכוי שדיסק נוסף יפסיק לעבוד, הואיל והמערכת עובדת נון סטופ.
  • במקרים של שרת ו-RAID מבוסס בקר חומרה, הכתיבה היא "הכל" – גם אם היה לכם ב-RAID חומר בגודל 10 ג'יגהבייט, הוא יבצע Rebuild של 10 טרהבייט, מכיוון שבקר RAID הוא דבר די טיפש.
  • במקרים של סטורג' (או Software defined Storage) – שיטת ה-Rebuild תהיה שונה, וכמות ה-DATA שתיכתב על הדיסק תהיה כמו שאר הדיסקים באותו "RAID", כך אם יש חומר של 10 ג'יגה, יכתב 10 ג'יגה. ההבדל הגדול בין סטורג' לבין שרת עם בקר RAID חומרה – זה שהסטורג' יודע "להסתיר" את האיטיות עם דיסקים SSD, עם Flash Cache וטריקים אחרים, אבל עדיין – תורגש איטיות.

לכן, אם אתם מעוניינים לרכוש כמות דיסקים קשיחים גדולים ולבנות לעצמם NAS לדוגמא, כדאי להסתכל על ההמלצות הבאות:

  • חברו את הדיסקים ל-HBA ולא לבקר RAID (אפשר לרכוש בקרי LSI עם IT MODE או להחליף להם קושחה).
  • השתמשו בתוכנה כדי לבצע RAID. יש הרבה פתרונות – החל מ-FreeNAS, ZFS, XPEnology, או Storage Spaces של מיקרוסופט. הכל תלוי בהעדפה שלכם.
  • השתמשו ב-SSD שהוא Mixed Intensed או SSD שמתאים ל-Enterprise אם המהירות חשובה לכם. ההמלצה שלי היא ללכת על Optane 900P או DC P4800X (אם יש לכם את התקציב) של אינטל על מנת לקבל Latency מאוד נמוך וביצועים גבוהים מאוד (שימו לב – אם השרת אינו חדש, אז ה-Optane לא יוכל לבצע Boot ואם בשרת אין תושבות PCIe 3.0 – אז הוא לא יעבוד).
  • אם אתם משתמשים ב-ZFS, אל תשכחו להגדיר תהליך "קרצוף" (scrub) של הדיסקים לפחות אחת לשבוע (התהליך עובר על כל ה-DATA והיכן שהוא מוצע בעיות, הוא משכתב את ה-DATA למקום פנוי אחר, כך שהעבודה תהיה חלקה).
  • גיבויים, גיבויים, גיבויים – תוכנות גיבוי זה טוב, אבל snapshots ברמת האחסון הם יותר טובים והשחזור הרבה יותר מהיר. דאגו שתהיה מכונה אחרת עם מקום פנוי לקבל את ה-Snapshots.

ככלל, לא חשוב אם האחסון שלכם הוא NAS שבניתם או סטורג' שקניתם, אם כמות האחסון שלכם נעה בין מאות טרהבייט לפטהבייט – עדיף לעבור לפתרון Scale Out (וכשאני מדבר על Scale Out אני מדבר על מספר מכונות [גם נקראות Nodes]) המכילים את הדיסקים או JBOD המחוברים לאותן מכונות. פתרונות כאלו יודעים להתמודד גם עם מצבים שמספר דיסקים קשיחים מתקלקלים במקביל ומענה לדרישה מוגברת של תעבורת נתונים הלוך ושוב לשרתים/מהשרתים.

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