מוציאים מכרז לרכישת ברזלים? זוג עיניים נוספות יכול לסייע

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

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

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

נעבור חלק חלק, נתחיל בסטורג':

  • במכרז מבקשים הצעת מחיר ל-Unity של Dell/EMC, עם שילוב של דיסקים מכניים (16), דיסקים SSD בגודל 400 ג'יגה (10), ו-3 דיסקים (Fast Cache) ושאר הציודים שצריך. זה טוב ויפה אולם יש כאן לעניות דעתי מספר נקודות שכדאי לחשוב עליהן:
    • פתרון כזה אינו עונה לצרכי מכונות VM שמייצרים כתיבה מרובה. נכון, הסטורג' "יחביא" את האיטיות בעזרת ה-Fast Cache (פלוס עוד כמה טריקים) אבל בשלב מסוים האיטיות תחל לצוץ.
    • הדיסקים SSD  הם איטיים (ולא חשוב אם בפנים הם MLC או eMLC) ובמקרים של Enterprise, דווקא ה-SATA SSD מבצעים עבודה הרבה יותר טובה (תסתכלו בהצעות של כל היצרני SSD, תראו שבד"כ מציעים SATA או U.2/PCIe/NVME, בקושי SAS) ולכן חשוב לזכור – זה לא משנה אם הדיסקים נמצאים בתוך סטורג' קנייני או בשרת: SSD קטנים יותר איטיים מהגדולים ולפעמים בפערים מאוד משמעותיים. לדוגמא: אם רוצים לרכוש 4 דיסקים של 400 ג'יגה, עדיף 2 דיסקים של 800 ג'יגה.
    • במקום להיצמד למותג קנייני, מוציא המכרז יכול לבקש פתרון חומרה ותוכנה שהם Software Defined Storage עם כל הפונקציות שהוא מצפה לקבל בסטורג' קנייני וגם להכתיב כמות מינימום ומקסימום IOPS שפתרון ה-SDS יצטרך לעמוד בו. חשוב לזכור: אם לשם הדוגמא אתה מוציא מכרז ואני זה שצריך לעמוד בו, ואני הסכמתי למפרט שלך, אני צריך לעמוד בביצועים במפרט, ואם זה עולה לי יותר, אותך זה לא מעניין, אני צריך לתת את מה שמובטח וזהו, ולכן במכרזים כאלו כדאי לנצל את הסיטואציה ולקחת SDS, מה עוד שתמיד ניתן להשתמש ב-SDS בעתיד לצרכי פתרונות אחרים בתחום הסטורג', כך שההשקעה משתלמת יותר מאשר סטורג' קנייני (אם לדוגמא עברתם לסטורג' אחר, אתה לא יכול להעביר את הדיסקים הישנים יותר).

מכאן נמשיך לשרתים:

מוציא המכרז מבקש 2 שרתי Dell R730:

  • ראשית, כדאי לבקש את דגם ה-XD, ההבדל במחיר הוא קטן (100-200 דולר, תלוי אצל מי קונים), ודגם ה-XD ניתן בהמשך להרחבות שונות שלא כל כך קיימים ב-R730 הרגיל.
  • לא מומלץ לקחת 32 ג'יגהבייט זכרון במקלות של 2 ג'יגהבייט (כלומר 16 מקלות) הואיל וכל נסיון הרחבת זכרון בעתיד מחייבת החלפת כל מקלות הזכרון ובמקרים רבים הזכרונות הללו ישארו "מיותמים", לכן מומלץ לרכוש את הזכרון עם מקלות של 4 או 8 ג'יגהבייט, בהתאם לגודל הסופי שרוצים.
  • 2 דיסקים של 300 ג'יגהבייט – חבל אפילו לרכוש אותם. אם (כפי שבמקרה זה) רוצים להריץ VMWare, עדיף לרכוש 2 מיקרו SD עם ה-Image מוטמע בהם ולהכניסם לתוך השרת, הואיל ו-ESXI כותב אליהם מעט מאוד והמודול מיקרו SD כולל שרידות (RAID-1). במקום ה-300 ג'יגה, אפשר לרכוש 2 דיסקים SSD בגודל של 500 ג'יגהבייט (מספיק Read Intense רגיל, לא צריך Mixed Intense) ואז להשתמש בהם כ-Read Cache בתוך vSphere, כך תוכנות רבות שרצות שוב ושוב ישתמשו ב-SSD המקומי כ-Cache לקריאה והדברים ירוצו החל מהפעם השניה יותר מהר מבלי להשקיע תקציב רציני.
  • כרטיסי רשתות: במקום לרכוש כרטיס Qlogic 57800 שנותן 2 כניסות 10 ג'יגהביט ו-2 כניסות 1 ג'יגהביט, כדאי לרכוש כרטיס אחד נוסף Intel X710 Quad Port – יוצא יותר זול עם אותה כמות פורטים (4 של 10, 4 של 1).

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

לסיכום: חברה גדולה או קטנה, רשות מקומית או אזורית או עיריה או משרד ממשלתי – כולם צריכים בסופו של דבר לעמוד במסגרת תקציב ואף חברה לא רוצה להרגיש פראיירית ולשלם יותר ממה שמקובל בשוק ובגלל זה כולם מוציאים מכרזים, על מנת לקבל את ההצעה הטובה ביותר. יחד עם זאת, אפשר לנצל את כל עניין המכרז כדי לקבל יותר מבלי לפרוץ מסגרות תקציב פנימיות. אחרי הכל – אתם לא קונים ברזלים ומחפשים אחר כך מי יתמוך בכם, אתם רוצים חבילה שכוללת הכל עם 24/7 ועם 4 שעות SLA, ואתם מקבלים זאת גם אם מדובר בטכנולוגיות חדשות שנותנות לכם יותר מסתם עוד הצעה שהיא Copy/Paste ממקום אחר.

קצת על עולם ה-NVMEoF וסטורג' חזקים

אם נסתכל היום בכל חברה בינונית וגדולה שיש לה כמה עשרות שרתים פיזיים ומעלה – בד"כ נמצא סטורג' קנייני כלשהו, בין אם זה NetApp, HPE, Dell/EMC, IBM. Hitachi ואחרים. הסיבה לכך היא די פשוטה: הפתרונות הללו נותנים ביצועים גבוהים וגם נותנים פתרונות לצרכים השונים, החל ב-LUN ש"מפורמט" ל-iSCSI (כשצריך),iSCSI, NFS, CIFS, Snapshots ועוד ועוד. הפתרונות הללו במקרים רבים היו יותר טובים מפתרונות Software defined storage בעבר בגלל מה שהיה מבחינת חומרה בתוך הסטורג' הקנייני, בין אם זה שימוש ב-NVRAM, בכרטיסי האצה, ב-SSD (שלא חושבו כחלק מכמות המקום הפנויה בסטורג', מה שנקרא גם Vault) – ובקיצור, שורת טכנולוגיות שמובנים בתוך הסטורג' שנותנים ביצועים נאותים שמתאימים לאותן חברות.

בשנים האחרונות ישנם פתרונות אחרים המבוססים על Software Defined Storage (בקיצור: SDS) המוטמעים כחלק מפתרון וירטואליזציה, פתרונות כמו VSAN של VMware, או Nutanix או Simplivity ואחרים. בפתרונות כאלו בכל שרת יש דיסקים שמשמשים לאותן מכונות VM שרצים בשרת והדיסקים גם משמשים לאחסון ושרידות של VM אחרים, כך שאם שרת פיזי נופל, ה-VM יופעל מחדש במכונה פיזית אחרת (מה שנקרא: HA) או שה-VM ממשיך לפעול מהעתק רצוף שרץ על מכונה אחרת (מה שנקרא Fault Tolerance או FT בקיצור). במקרים כמו של VSAN ניתן כמובן להגדיל את האחסון בכך שמוסיפים עוד שלישיית דיסקים (2 איטיים ואחד SSD מהיר) בכל פעם שמגדילים את האחסון, אם כי ההמלצה "בין השורות" היא שעדיף להוסיף שרת פיזי נוסף ולפזר את המכונות VM ביניהם כדי לקבל יותר IOPS. השיטה הזו טובה (וב-VMware ישראל נותנים לדוגמא את ערוץ 10 שעבר לעבוד כך), אך החסרון המשמעותי של השיטה הזו היא שזה לא תמיד עובד טוב. כך לדוגמא, אם מכונות VM צריכים SSD שהוא Mixed Intense, ה-VSAN לא תמיד ידע להעביר אותו למכונה אחרת שגם שם יש SSD שהוא Mixed Intense ובכך אנחנו עלולים לקבל ביצועים מופחתים, רק בגלל שה-DRS החליט להעביר את ה-VM בגלל עומסים (אני מכיר את זה אישית מה-LAB שלי).

כיום פתרונות ה-SDS תופסים יותר ויותר מקום של כבוד (לפחות בחו"ל), כאשר הלקוח בעצם צריך לרכוש את התוכנת SDS והוא מריץ את התוכנה על הברזלים שיש לו, כאשר אותם ברזלים הם שרתים מהיצרנים המובילים (Dell, Lenovo, HPE, SuperMicro, Cisco) ואותו הלקוח מקבל בעצם בחבילה את כל הפונקציות שהוא רגיל לקבל מיצרן סטורג' קנייני, כולל כל החיבורים שהוא צריך (FC, FCOE, Ethernet, Infiniband) ויש ל-SDS תמיכה והתממשקות לכל הפלטפורמות המובילות וגם לתוכנות גיבוי המובילות.

גם בפתרונות SDS וגם בפתרונות קנייניים, בד"כ הפתרונות מבוססים על דיסקים SSD בחיבורי SAS/SAS2/SATA או על דיסקים מכניים או שילוב שלהם (כאשר פתרון האחסון יודע להעביר נתונים שאינם נקראים תדיר לדיסקים המכניים ונתונים שנקראים/נכתבים תדיר ל-SSD, או במקרים אחרים שהמערכת מאפשרת ללקוח לבנות LUN או Share מ-SSD או מכני לפי צרכי הלקוח). אלו פתרונות טובים כאשר יש לנו עשרות שרתים עד מאות בודדות של שרתים פיזיים, כשהדרישה מבחינת ביצועי דיסק/סטורג' אינה כה גבוהה (כלומר שאפשר להסתדר עם IOPS של 5 ספרות נניח).

אבל מה קורה אם יש לנו מאות (ואולי יותר) של שרתים ואנחנו רוצים ביצועי דיסק מאוד גבוהים, בדיוק כמו ביצועים של דיסקים מקומיים? נסו לחשוב על בנקים ומוסדות פיננסיים גדולים שבשבילם כל מילישניה זה רווח או הפסד כספי? כאן נצטרך דברים הרבה יותר חזקים. יש כמובן פתרונות AFA (שזה All Flash Array) אבל הפתרונות האלו ו-Scale Out הם לצערי .. לא משהו.

בואו ננסה לדמיין משהו. דמיינו שצריך להקים פתרון מבוסס Flash בגודל 1 פטהבייט. סביר להניח שאתם מדמיינים ארון מלא בדיסקים, עם סוויצ' רציני מלמעלה (TOR או Top Of Rack).

מהדמיון נעבור למציאות, הביטו בתמונה הבאה (לחצו להגדלה):

תכירו, זהו שרת של SuperMicro שיצא בשנה הבאה (לא לדאוג, שאר היצרנים יוציאו שרתים זהים גם בשנה הבאה, פשוט היצרנים כמו אינטל וסמסונג מעדיפים לעבוד במצבי פיתוח וטסטים עם SuperMicro). רואים את המלבן על השרת? כל מלבן נחמד כזה יכול להכיל מקל בפורמט M.3 בגודל 8 או 16 טרהביייט. המקל עצמו מבפנים נראה כך:

בשרת ה-1U יש 36 מקומות למלבנים הללו, כך שבשרת 1U צנוע ניתן להכניס 576 טרהבייט, ובשרת 2U – כ-1152 טרהבייט, כלומר יותר מפטהבייט על שרת פיזי אחד!. הפתרון הזה שאתם רואים לעיל הוא הפתרון של סמסונג, לאינטל יש פתרון דומה (אם כי הקוביות קצת יותר מוארכות והם נקראים "סרגלים" – בתמונה משמאל ואינטל קוראת להם NGSFF). בפתרונות הללו אין שום בקרי RAID כלשהם (הכל מחובר דרך PCIe ומתגי PLX ישירות למעבד, כך שהביצועים מאוד גבוהים, בסביבות ה-3-4 ג'יגהבייט קריאה וכמעט 2 ג'יגהבייט כתיבה לשניה פר מקל).

וכאן אנחנו מתחילים להכיר את פתרון עם השם המפוצץ NVMEoF (ר"ת של NVME over Fiber, אם כי לא מדובר על Fiber Channel רגיל).

בוא נחשוב על חיבורים לשרת כזה. חיבור של 1 ג'יגהביט לא בא בחשבון וחיבור 10 ג'יגהביט "יחנק" עוד בפעילות של מקל יחיד! אנחנו צריכים פעילות של מס' מקלות NVME כדי לתת ביצועים סופר חזקים וסופר מהירים כדי שהמכונות שיחוברו לשרת כזה ירגישו כאילו הדיסק שהם מקבלים – הוא ממש מקומי, כלומר אנחנו צריכים חיבורים של 25,50,56 או 100 ג'יגהביט, כלומר או Ethernet או Infiniband.

מבחינת תעבורה מהירה, אנחנו צריכים לוותר על TCP/IP במהלך העברה של הנתונים (אך לא בזמן ה-Handshake הראשוני, בשביל זה עדיין אנחנו צריכים IPv4 או IPv6 ב-TCP/IP) ואז אנחנו עוברים לשימוש בטכנולוגיה שרבים מאיתנו מכירים… RDMA, זוכרים? היתרון הגדול עם RDMA הוא שהמעבד באותו שרת "מקור" לא צריך כמעט לעשות כלום, ומכיוון שאנחנו מעבירים בעצם "בלוקים", אז אנחנו מוותרים בדרך גם על שכבת ה-File System. מישהו שהסברתי לו על הנושא אמר לי "אה, זה בעצם מעין iSCSI על סטרואידים".. אפשר לאמר 🙂

ל-NVMEoF יש מספר יתרונות גדולים:

  • אפשר להכניס איזה גדלים שרוצים וכמה שרוצים. אפשר להתחיל ב-2 מלבנים של 8 טרה ואחר כך להוסיף עוד 4 של 16 ואחר כך עוד 4 של 8 טרהבייט. למערכת זה לא ישנה כלום. מבחינתה – יש עוד מקום לאחסן.
  • אין צורך לבנות מערכי RAID (כי .. אין RAID). במערכת שתרוץ על השרת נוכל לקבוע איך הנתונים ישמרו, מה הדחיסה שתהיה והיכן ישמר עותק נוסף של הנתונים.
  • ההשקעה למוסדות גדולים אינה כה גבוהה (לא ניכנס לחישובי ה-ROI, אפשר לכתוב ספר שלם על זה!). כן, יהיה צורך בהחלפת מתגים וכרטיסים בשרתים, והמוסדות יצטרכו להחליט עם מה הם עובדים – Infiniband או Ethernet (כבלי CAT 7 עם תיוג Class F יכולים להעביר 100 ג'יגה עד 15 מטר אורך, CAT 8 יתן עד 100 מטר 100 ג'יגהביט אך הוא עדיין לא אושר רשמית. כאן יש עוד פרטים לגבי 100 ג'יגה)
  • ישנן תוכנות שונות שנותנות את שרות ה-NVMEoF, חלקן כחול לבן כמו Kaminario, E8, Pure וכו'. כמו שכתבתי לעיל, אני ממליץ לרכוש תוכנה ולא פתרון חומרתי סגור מכיוון שעם תוכנה אפשר לעבור לפתרונות מתקדמים יותר בעתיד תוך שימור ההשקעה בברזלים, לא צריך לרכוש פתרון חומרתי סגור אחר ולהיפתר מהקודם.
  • מבחינת תמיכת חומרה – גם כאן, החבר'ה מיוקנעם ישמחו לסייע לכם (Mellanox), סמסונג, אינטל, Chelsio, Qlogic ואחרים, וכל יצרני המתגים המוכרים כבר תומכים בפתרונות NVMEoF.
  • מה עם פתרונות קוד פתוח? גירסת RHEL 8 שתצא (כנראה, כנראה..) עד סוף השנה תתן פתרון NVMEoF עד סוף השנה, וכל מערכות ההפעלה והוירטואליזציה יתמכו בפתרון.
  • כל הפתרונות (שאני מכיר) תומכים ב-Scale Out.

לסיכום: NVMEoF הוא בהחלט פתרון מעולה לעתיד. לפני שבועיים הרצתי אותו בבית (כפתרון וירטואלי, אין לי ממש כספים לדיסקים NVME ל-Enterprise) על Fedora 27. ובהחלט ה-Latency נמוך מאוד והביצועים מרשימים. אני תיארתי את הפתרון לעסקים גדולים כמו בנקים וכו' אולם כל חברה בינונית ומעלה יכולה להתחיל ב-PoC על מנת לבדוק בהמשך מימוש פרודקשן של פתרון כזה. לא צריך השקעה של מאות אלפי שקלים – מספיק 2-4 דיסקים NVME, כמה כרטיסי רשת במהירות של 25 ג'יגה ומעלה (ללא סוויצ') ושרת שיכול לקבל דיסקים כאלו, מערכת לינוקס עדכנית ואפשר לנסות ולשחק עם זה.
אפשר לאמר שאנחנו "חוזרים לאחור" הן מבחינת שיטת העברת הנתונים (RDMA) והן מבחינת מקום אחסון הנתונים (מחוץ לשרתי הוירטואליזציה/קונטיינרים) ובכך יש מעין "מלחמה" בין השיטות, רק שהפעם השיטה ה"ישנה" קיבלה זריקת חיזוק רצינית בכך ש-NVMEoF נותנת לנו ביצועים הרבה יותר גבוהים מבחינת דיסק בהשוואה לכל פתרון Hyper Converge.

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

שיטת שידור חדשה מיוטיוב

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

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

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

אז מה עושה מישהו שרוצה לשדר וידאו עכשיו ואין לו תקציב? ובכן, יוטיוב הוציאה פונקציה חדשה שנקראת Go Live והיא זמינה מעתה לכולם. עם הפונקציה הזו כל מה שצריך זה מחשב נייד עם מצלמת Webcam טובה (כמו Logitech C920 ומעלה), מיקרופון עם חיבור USB שישב מול מגיש השידור .. וזהו.

מעתה כל מה שצריך לעשות זה להיכנס ליוטיוב, לוודא שאתם מחוברים בשם המשתמש שלכם, ללחוץ על הפתור הוידאו עם ה-+ ולבחור Go Live (הדפדפן כרגע צריך להיות כרום). בחרו את המצלמה, המיקרופון, תנו כותרת, צלמו את עצמכם או העלו תמונת Preview ו.. אתם בשידור, בלי להפעיל שום תוכנה צד ג' ואפשר לעשות זאת מכל מחשב, וגם לשדר מהשטח (כל עוד יש לכם חיבור סלולרי טוב עם חבילת DATA רצינית).

לאלו שרוצים לשדר עם מצלמות יותר רציניות, אז אפשר להשתמש בציוד USB של Elgato או אם מדובר במחשב דסקטופ, אז כרטיס Black Magic יעזור. כל מה שצריך לעשות זה לחבר את המצלמה המקצועית דרך חיבור ה-HDMI שלה אל הכרטיס, ולבחור את ה-Elgato או ה-Black Magic כמקור וידאו ואת המיקרופון המקצועי כמקור אודיו – ולשדר.

לסיכום: רוצים לשדר וידאו? דאגו ל-Web Cam טוב. רוצים לשדר וידאו באיכות מעולה? דאגו לכרטיס לכידה טוב, מיקרופון מקצועי עם חיבור USB (כמו YETI לדוגמא) – כנסו לאתר של יוטיוב ותתחילו לשדר.

תכירו: Windows Server 2019

(לתוהים מה קרה שהחלטתי לכתוב על Windows – אמנם "חץ ביז" אינו נותן תמיכה רשמית ל-WIndows [בגלל שהשוק מוצף והמחיר נמוך], אבל הם מוציאים טכנולוגיות ואינני "אנטי מיקרוסופט")

מיקרוסופט הכריזה רשמית היום על גירסת Preview ל-Windows Server 2019. הגירסה זמינה להורדה (המפתחות כבר בתוך ה-ISO או VHDX) אבל כדאי לשים לב: זוהי גירסת CLI, תצטרכו להתקין כלים כדי להיכנס עם ממשק גרפי.

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

  • Cluster Set: כפי הנראה גם מיקרוסופט מבינה ש-Hyper Converge זה העתיד ומעתה ניתן להגדיל קלאסטרים וליצור Cluster ל-Compute, ל-Storage (הכוונה ל-Cluster של Storage Spaces Direct, כן, גם במיקרוסופט מבינים ש- Software Define Storage יותר עדיף מברזלים קנייניים), ומכונות ה-VM שלכם יכולים "לשוט" להם בתוך ה-Cluster Set לפי ביצועים או שרידות שתגדירו. נחמד.
  • Windows Defender מקבל חיזוק משמעותי בדמות ATP (כלומר Advanced Thread Protection) עם ערימת חיישנים וירטואליים לניטור זכרון, פסיקות (Interrupts) וכו'. אני ממליץ להיכנס ללינק שפרסמתי לעיל לקרוא את הדברים (ויש לא מעט). קצת מזכיר מעולם הסולאריס את DTrace רק שזה לשם הגנת המערכת.
  • מערכת WSL – מיקרוסופט מעתה משלבת את Windows System for Linux בתוך Windows Server 2019 כך שתוכלו להריץ את הפצת הלינוקס החביבה עליכם בתוך שרת Windows 2019. בנוסף מיקרוסופט מחזירה לחיים חלק ממה שהיה בעבר SFU (כלומר Services for Unix) עם SSH, TAR, CURL כך שיהיה אפשר לשלב את הדברים בתוך סקריפטים שלכם.
  • קונטיינרים – כן, מיקרוסופט עושה מאמצים כדי לשלב קונטיינרים ברמה הרבה יותר "טבעית", כך לדוגמא כל IMAGE לא ישקול 5 ג'יגהבייט והוא יקבל "דיאטה" ל-2 ג'יגה (הלו מיקרוסופט, בלינוקס זה בד"כ בין 100-200 מגה בשכבה הראשונה, דרושה עוד דיאטה), כך שתוכלו להריץ גם קונטיינרים של לינוקס ישירות בשרת Windows Server 2019. אוסיף כאן הערה אישית: כרגע ה-WSL נותן ביצועים מחרידים בכל הקשור ל-I/O של קבצים גם ב-2016 וגם ב-Windows 10, כך שבשלב זה הייתי ממליץ לאלו שרוצים להריץ קונטיינרים מבוססי לינוקס – תריצו את זה על מכונת לינוקס.
  • עוד על קונטיינרים – מיקרוסופט "מיישרת קו" עם השוק והיא תשלב את Kubernetes בתוך ה-Windows Server 2019 (כך שאם הלכתם על משהו שאינו תואם ל-Kubernetes – מומלץ לחשוב על "אחורה פנה")
  • פרויקט "הונולולו" – הממשק הגרפי החדש של מיקרוסופט ל-2019 שנותן לכם לא רק לנהל את השרת החדש, אלא גם להתממשק ל-Azure וליצור Hybrid Cloud.

עתה, הרשו לי לשתף אתכם במחשבותיי לגבי המערכת החדשה.

הקמתי את המערכת הזו ושיחקתי איתה פה אצלי ב-LAB הביתי שלי ואני חייב לציין שהתחושה שלי ש-Windows 2019 החדש יותר מזכיר משהו כמו WIndows Server 2016.1. יש שיפורים – אך הם אינם כאלו גדולים. מיקרוסופט כמובן תתנגד למה שציינתי ולראייה המחיר – Windows Server 2019 יהיה יותר יקר (במובן של CAL) מ-WIndows Server 2016 והסיבה לכך פשוטה: מיקרוסופט רוצים שפחות תתקינו את זה על הברזלים אצלכם ויותר תשתמשו בשרותי ה-Azure שלכם.

וכאן בגירסה זו של Windows Server, שרותי ה-Azure מודבקים על ימין ועל שמאל. רוצה DR? עם אז'ור. קלאסטרים, מיגרציה וכו'? עם Azure. זו כמובן זכותה של מיקרוסופט אבל זה די מאכזב לראות שמיקרוסופט שוב נוקטת בשיטות הישנות של כריכת שרות בשרות. אולי כדאי להזכיר למחלקה המשפטית של מיקרוסופט את השם "נילי קרוס"? (מי שהיתה נציבת ההגבלים העסקיים באיחוד האירופאי וקנסה את מיקרוסופט במיליארדי דולרים!). מן הראוי היה שמיקרוסופט תפתח איזה API לאפשר לשאר יצרני העננים הציבוריים (גוגל, אמזון) להתממשק ולאפשר לתחרות לעבוד.

לסיכום: Windows Server 2019 הוא בהחלט מוצר שמראה שמיקרוסופט דוחפת בכל הכח גם לעבודה של Multi Platform (לינוקס, Windows, קונטיינרים "טבעיים" וכו'), את עניין ה-Hyper Converge ואני מאמין שגם תהיה התממשקות מאוד הדוקה ל-Azure Stack לטובת חברות שמעוניינות להריץ את הכל פנימית על הברזלים המקומיים (עקב מגבלות חוקיות ורגולטריות). אלו בהחלט דברים מעולים, אך לעניות דעתי חוסר הפתיחות כלפי ספקי עננים מתחרים קצת פוגם בדברים.
גירסת ה-ISO זמינה במסגרת תוכנית Windows Insider וה-ISO יפעל עד חודש יולי. למנויים ל-LTSC תהיה גירסה של Windows Server 2019 בעוד מס' שבועות.

על מעבר לעננים, אירוח אתרים ועוד כמה דברים

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

נתחיל בתחום האירוח אתרים. עד היום חברות שונות בארץ ששוכרות מקומית מכונות וירטואליות/שרתים לשם אירוח האתרים מהסיבה הפשוטה של Latency ו-SEO (לנקודת ה-SEO לדעתי אין שום אחיזה בכל מה שנוגע ל-Latency ואני יכול להעיד שיש לי כמה מילות מפתח במקום ראשון בגוגל והשרת הוירטואלי שלי נמצא בכלל ב-Amazon Lightsail בוירג'יניה!). עד היום היה ניתן לארח את האתר שלכם בחו"ל ולהשתמש בשרות CDN כמו של Incapsula שלהם יש שרתי EDGE פה בישראל. החל מעתה, גם למתחרה הגדול שלהם (Cloudflare) יש נקודת EDGE פה בישראל כך שאפשר בהחלט להשיג Latency מאוד נמוך גם מבלי לשכור מכונות בארץ ובכך ניתן לחסוך בעלויות השכרה.

מכאן נעבור לעננים ציבוריים ולחברות בינוניות עד גדולות (במובן האמריקאי/אירופאי, פחות במובן הישראלי). בשנים האחרונות, עם כניסת העננים הציבוריים יותר ויותר לקידמת הבמה, חברות בסדר הגודל שהזכרתי לעיל "השתעשעו" (במובן של PoC, העברת מספר מכונות לענן ציבורי כלשהו לצרכי טסטים ו"טבילת אצבעות" וכו'). חברות רבות קיבלו קרדיטים מספקי הענן הציבורי (בסכומים הנעים מעשרות עד מאות אלפי דולרים). חברות רבות השתמשו באותם קרדיטים כדי להעביר תשתיות כלשהן לענן ובאותו זמן לפי כל החברות המודדות מכירות שרתים, מתגים, סטורג' וכו' (חברות כמו IDC, מורגן סטנלי, גרטנר ואחרים) הוציאו דוחות שכמות הציודים ל-DC/שרתים שנמכרת מאותם יצרנים הולכת וקטנה והטרנד הזה נמשך כבר יותר מ-5 שנים, אולם לקראת סוף 2016 האחוזים עלו במעט ואילו ב-2017 האחוזים עלו בצורה יפה (7% בהשוואה ל-2016) לפי הדו"ח של חברת Canalys שהופיע ב-The Register כאשר Cisco מכרה יותר מאשר Dell/EMC (ו-Dell/EMC מכרה יותר מ-HPE). דו"ח של חברת Morgan Stanley ציין פחות או יותר את אותם דברים בחודש שעבר.

אבל (וזה "אבל" גדול) – יש כאן גם טוויסט…

חברת ששמעו, התעניינו או הקימו PoC (או אולי עברו) לפתרונות HC (כלומר Hyperconverge) ראו שפתאום הם לא חייבים לרכוש את הסטורג'ים היקרים (מאוד) או סוויצ'ים סופר יקרים שעושים המון דברים. פתרונות Hyperconverge כמו ה-VSAN של VMWare, או Nutanix או SimpliVity או OpenStack (או RHV של רד-האט) נותנים גם ביצועים יפה וגם שרידות מרשימה – והכל רץ על שרתים סטנדרטיים כשהכל בעצם רץ כ-(Software defined (storage/network. ולפי 2 הדוחות, חברות מגלות יותר ויותר עניין בפתרונות כאלו מאשר הפתרונות הקאלסיים של ברזלים קניינים ויעודיים.

משהו נוסף שמוזכר בדוחות אחרים (לצערי אין לי כאן קישורים כי רובם בתשלום) זו מצד אחד הפתיחות שהיום הרבה יותר גדולה כלפי PAAS ו-SAAS, אך מצד שני, יש נסיגה כלשהי מ-IAAS. אני מכיר חברות שפרסמו מאמרים כמה IAAS יהיה יותר זול אצל ספקי ענן ציבורי אבל בסופו של יום אם נסתכל על הטרנד של השנתיים האחרונות, יותר ויותר חברות מעדיפות את ה-Infrastructure להשאיר אצלם למעט דברים מסויימים שעדיף שיהיו בענן (אתרי אינטרנט, שרותים מסויימים שעדיף לתת דרך הענן וכו') אבל השאר (שאינו SAAS/PAAS צד ג') – מקומית ב-DC שלהם.

קונסולידציה – השלב השני שלא מבצעים

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

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

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

ניקח דוגמא: לפנינו 4 ארונות 42U, הם עמוסים ב-40 שרתי 1U בכל ארון (כן, אני משער שבמציאות כמות השרתים פר ארון היא מופחתת הואיל וחלק מהשרתים הם 2U, בחלקם יושבים מדפים של סטורג', סוויצ'ים וכו'). אני מאמין שבכל שרת יש 2 מעבדים שכל אחד מהם הוא 4 או 6 ליבות.

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

  • כמות החשמל שמנוצלת פר ארון היא בערך 12 קילוואט שעה.
  • סביר להניח שפרוסים 40 רשיונות VMWARE Enterprise PLUS רק בארון הזה.

אז איך ניתן לפתור את בעיות הרשיונות או קיצוץ תקציב ה-Datacenter?

התשובה ל-2 בעיות אלו קשורה לפתרון קונסולידציה. קחו לדוגמא ארון עם 40 שרתים – את אותו ארון ניתן להעיף ממנו 34-36 שרתים החוצה וזאת מבלי שצריך לוותר על מכונות VM אחת! נכפיל ב-4 ארונות ונקבל שאנחנו יכולים להגיע למצב שבארון אחד נאחסן 24 שרתים ונקבל את אותם ביצועים וממצב של שימוש של כמעט 50 קוט"ש, נוכל לצמצם זאת ל-5 קוט"ש לערך, חסכון של 90% בחשמל!

גם מבחינת רשיונות VMWare נוכל לקצץ מ-160 רשיונות ל.. 24 רשיונות, יותר מ-75% חסכון מבלי לוותר על שום פונקציונאליות!.

איך? אני לא אפרט כאן יותר מדי (בכל זאת, צריך פרנסה, אתם יודעים…) אולם הדבר אינו כרוך ברכישת שרתים חדשים (בד"כ) אלא בשדרוגים שצריך לבצע, שינויי רשת ועוד כמה וכמה שינויים. בניגוד למחשבים שקונים להנהלה, גם שרתים בני 2-4 שנים ניתן להוציא מהם יותר וזאת ברכישה חד פעמית של מס' חלקים (אל דאגה, קונים מהספק החביב עליכם). מדובר אמנם בהוצאה מכובדת (יחסית, תלוי לגודל החברה) אך כפי שציינתי – מדובר במשהו חד פעמי. אחרי השדרוג, ניתן להשאיר מס' מסויים של שרתים כבויים שישארו לצרכי טסטים את השאר ניתן למסור/למכור/לגרוט (לפי מדיניות החברה – אתם מוזמנים ליצור עימי קשר בנושא אם אתם רוצים להיפטר מהם)

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

[stextbox id='info' caption='גילוי נאות']פוסט זה מדבר על שרות בתשלום שניתן ללקוחות[/stextbox]

חושבים למכור שרתים? הנה כמה נקודות למחשבה

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

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

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

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

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

  • מתגים אופטיים
  • מערכות Storage קנייניות
  • ציוד יעודי – כמו ציוד וידאו (מקודדים, פורסים, מיקסרים וכו' וכו'), Infiniband ועוד.

ציודים כאלו, בדרך כלל לא תקבלו עליהם מחיר גבוה (5 ספרות בשקלים ומעלה) בארץ. לסוחרים לא ממש קל למכור ציוד כזה. תמיד יהיו חברות שיחפשו לרכוש לדוגמא "מדף" של Storage אבל יהיו הרבה פחות מקרים שחברות ירצו לרכוש "ראשים". אף חברה בד"כ לא רוכשת פתרון סטורג' מלא משומש שאין לו אחריות והיחידים שמוכנים לרכוש כאלו הם דווקא אנשים שהם "פריקים" לדבר כמו אלו שמריצים LAB רציני אצלם. מצד שני, יש מצב שדרך eBay אם תמכרו את הציוד בחלקים כ-bids תקבלו מחיר טוב (רק כדאי לוודא שאתם כותבים תנאי שהרוכש בעל פידבק חיובי עם מס' מינימום מסויים של פידבק חיובי כדי שלא תיפלו על נוכל).

ציוד שלא כדאי למכור
יש דברים שלא כדאי למכור כ"חבילה". הדוגמא הבולטת ביותר היא זכרון: אם נניח אתם מוכרים 5 שרתים ובכל אחד מהם יש 128/256/384/512 ג'יגהבייט זכרון, עדיף להוציא את הזכרון ולהשאיר את השרת עם 16 או 32 ג'יגהבייט של הזכרון ולמכור אותו כמו שהוא. הסיבה לכך שזכרון עד היום עולה ביוקר, בין אם מדובר ב-DDR3 או DDR4. זכרונות הם אינם דברים שמתקלקלים כל כך מהר וזה שהשתמשתם בהם הרבה לא פוגע באיכות שלהם גם אחרי 5 שנים. לכן אם אתם רוצים למכור אותם, הציצו ב-eBay לראות בכמה מוכרים ואז תחשבו בהתאם כמה אתם מעוניינים לבקש.

דיסקים קשיחים: ההמלצה שלי היא לא למכור דיסקים קשיחים. אינכם יודעים מי הרוכש הסופי ומה הוא יעשה עם המידע שיש על הדיסקים. עדיף לגרוט ואם אתם מתעקשים למכור – בצעו Low Level Format לכל דיסק ו/או מחיקה רצינית.

מחירים לשרתים: כדאי מראש לא להשלות את עצמכם. אתם לא הולכים לקבל מחיר גבוה על השרתים גם אם השרת בן 3 שנים. שרתים כמו Dell R610/R710 או X3650/X3550 דגמי M2/M3 של IBM, או HP DL360/DL380 דור G6, G7 – תקבלו בין 1000 ל-1500 שקל מסוחר שמבין ומתעסק ברכישה מלקוחות. בין 1500 ל-2500 תקבלו על דגמים כמו R620/R720 של Dell או X3650/X3550 M4 של IBM/לנובו או DL360/DL380 דור G8 של HP. שימו לב – המחירים שציינתי הם למכונות עם מעבדים עד 4 ליבות (או 6 ליבות בדגמי Xeon L) ממשפחת Westmere-EP, עם 32-64 ג'יגהבייט זכרון וללא דיסקים או כמות דיסקים מכניים מועטה (דיסק או 2) משומשים. מעבדים עם 6/8 ליבות (לא Threads) ויותר זכרון נותנים לשרת יותר שווי אבל אז אני ממליץ לקרוא לעיל על זכרונות. שרתים יותר חדשים כמו ThinkServe או X3650/X3550 M5 של לנובו, או R630/R730 של Dell או G9 של HPE שווים תוספת של עוד 2000-2500 שקל.

מתגים: סיסקו, HP, ג'וניפר ואחרים ישנים – כל עוד מדובר במתגים מנוהלים עם תמיכה בשכבה 2 ו-3 – בד"כ תקבלו עליהם בין 700-1500 שקל אם מדובר במתגים של 1 ג'יגהביט. מתגים של 10 ג'יגהביט תקבלו בין 2000-3000 שקל (ואולי יותר, תלוי אם התמיכה היא רק לסיב אופטי או גם ל-DAC וכו').

ציודים נוספים: כרטיסי RAID או HBA, כרטיסי ניהול/רשיונות ניהול (ILO/IMM/IDRAC) – לא תקבלו עליהם הרבה (בין 50 ל-100 שקל) ולכן זהו שיקול שלכם אם לתמחר את זה בנפרד או יחד עם השרת.

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

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

על קונטיינרים וחומרה

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

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

עולם הקונטיינרים משנה מספר דברים חשובים:

  • אפשר להקים הרבה פחות מכונות VM כדי לתת את אותו שרות.
  • קונטיינרים צריכים 30-70% פחות משאבים בהשוואה להרצת אותה אפליקציה שרצה ב-VM
  • מבחינת Scalability – קונטיינרים עושים את העבודה בצורה יותר טובה בהשוואה ל-Scaling של מכונות VM, והגדילה הרבה הרבה יותר מהירה בהתאם לעומסים.

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

אם נסתכל על חברות ענקיות כמו פייסבוק וגוגל, נראה שבהתחלה השרתים שלהם היו שרתים מאוד צנועים, והם פשוט הכניסו המון שרתים על מנת לבצע Scale Out עם מעבדי Xeon. לאחרונה, אותן חברות החלו לעבור לארכיטקטורות מתחרות, בגוגל לדוגמא עברו למעבדי Power של IBM ומעבדי ARM חדשים ו-Facebook גם מכניסים מעבדי ARM. זה לא ללקוחות שלהם, זה בשביל להריץ את הקונטיינרים שלהם.

לכל אחד מהארכיקטורות האחרות יש יתרונות על פני מעבדי ה-Xeon (גם החדשים) של אינטל:

  • למעבדי ARM יש את היתרון הגדול של כמות ליבות גדולה וצריכת חשמל נמוכה, מצב אידיאלי כאשר כל קונטיינר אינו צריך עוצמת מעבד רצינית ולפיכך ניתן להריץ יותר קונטיינרים פר מכונה פיזית מבלי לצרוך כמות חשמל כה גדולה. כך לדוגמא מערכת Apollo 10 של HPE תוכל בקרוב לקבל מעבדי ARM בגירסה יעודית. חברת Qualcomm לדוגמא יצרה מעבד שנקרא Centriq ויצרני שרתים מובילים שמחים לאמץ ולמכור שרתים עם פתרון זה.
  • למעבדי Power יש הרבה יותר כח מכל מעבד Xeon שיש לאינטל. אלו המעבדים שמפעילים את ה-MainFrame למיניהם ו-IBM מוכרת לדוגמא שורת מכונות שמריצות לינוקס בצורה טבעית עם אחריות ושרות מלאים (עם Red Hat 7.4) וכל מכונה יכולה להריץ הרבה יותר קונטיינרים בהשוואה למכונה מבוססת Xeon (תלוי כמובן במפרט).
    יתרון נוסף של מעבדי Power9 של IBM – זה שניתן להריץ קונטיינרים באופן טבעי ישירות על ה-Main Frame, ולקבל לא רק ביצועים טובים, אלא את השרידות הכי גבוהה שיש (זו המערכת היחידה שאתה יכול להוסיף זכרון, מעבדים כשהמערכת רצה).

נשאלת כמובן השאלה: מה עם תאימות בינארית? התשובה לכך היא די פשוטה: המערכת הפעלה שתרוץ בקונטיינרים כבר קיימת לקונטיינרים. מה שנשאר הוא לקמפל ספריות וקוד פנימי של החברה ובכך בעצם ליצור קבצים בינאריים לפלטפורמה שנבחרה וכך נוכל לבנות Images שהם אופטימליים (ללא שום המרות או אמולציות) לפלפורמה שנבחרה. לדוגמא – אם האפליקציות שהחברה כותבת הם ב-JAVA ורצים על Tomcat, אז ה-JDK קיים באתר של IBM ויש קונטיינר מוכן עם Tomcat ל-Power9. אותו הדבר קיים גם ל-ARM.

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

הסטטוס של ZFS החופשי

[stextbox id='info' caption='הערה לקוראים']למי שרק החל לעקוב אחרי בלוג זה, בעבר כתבתי כמה וכמה פוסטים על ZFS וניתן למצוא אותם כאן[/stextbox]

אנחנו בשנת 2018 ורציתי לתת סטטוס עדכונים לגבי ZFS על לינוקס, ומה קורה עם ZFS כשזה מגיע לחומרה חדשה כמו NVME SSD ועוד.

בחודש יולי שנה שעברה שוחררה גירסת 0.7.0 עם ערימות של תיקונים ופונקציונאליות חדשה שתוכלו לקרוא עליה כאן. חלק מהפונקציות ישמעו טריוויאליות לחלוטין אך צריך לזכור שכש-SUN שחררה את ZFS לפני 13 שנה, לקוד לא היה שום קשר ללינוקס, הכל היה בנוי ל-Solaris בלבד ובכל הקשור לתמיכה בחומרה, היתה תמיכה במה שסולאריס תמך, או בקיצור – למעט הפצות סולאריס פתוחות, הקוד לא רץ בצורה אופטימלית עם תמיכה טובה לאף מערכת לינוקס או BSD וכך כל צוות של מערכת הפעלה היה צריך לממש פונקציונאליות של ZFS עם תמיכת חומרה של אותה מערכת הפעלה. בלינוקס זה לקח זמן וסוף סוף בגירסה 0.7.0 יש תמיכת "ברזלים" טובה. כך לדוגמא, אם יש לך מערך של 6 דיסקים, הגדרת 5 דיסקים ל-RAIDZ כלשהו והגדרת דיסק כ-hot-spare והתקלקל דיסק, המערכת אוטומטית משתמשת בדיסק הנוסף שהוגדר hot-spare מבלי שאף אחד ירגיש במשהו.

פונקציונאליות נוספות מעניינות:

  • הקץ לשרשור פקודות בשליחת/קבלת snapshots! שימוש בפרמטר c- וה-snapshot יהיה דחוס בשליחה ובקבלה.
  • תמיכה מלאה בפונקציות SSE2 ואחרים של המעבדים, כך ששימוש בדחיסה יעשה עם הפונקציות הללו במקום הפונקציות הרגילות כך שהפעילות תהיה הרבה יותר מהירה.
  • Compressed ARC – זה אחת הפונקציות שממש אהבתי! אם לדוגמא ניקח מכונה ממוצעת שנריץ עליה ZFS, אז בברירת המחדל ZFS ישתמש לשם Cache (כ-ARC) במחצית הזכרון (זה כמובן ניתן לשנות), כך שאם במכונה יש לדוגמא 32 ג'יגהבייט זכרון, ה-ARC ישתמש ב-16 ג'יגהבייט. עם Compressed ARC, ה-ZFS כביכול "מכפיל" את ה-ARC להיות 32 ג'יגהבייט בכך שהוא דוחס את ה-ARC ופורס דינמית תוך כדי שהוא משתמש בליבות המכונה והמהירות היא מדהימה – הדחיסה/פריסה עובדים במהירות של 1-2 ג'יגהבייט לשניה פר ליבה (תלוי כמה ליבות יש). פתאום הביצועים יותר טובים 🙂
  • המשכיות send/recieve. שלחת snapshot ועצרת באמצע או שהיתה לך תקלת תקשורת. מעתה אפשר להמשיך את הסשן במקום להתחיל מחדש. מעולה למצב שהתקשורת בין DC ל-DC היא לא משהו עקב … חברת תקשורת מסויימת.
  • הקפאת "קרצוף" (scrub). סיטואציה שאישית אני סבלתי ממנה: אני מכין ללקוח הדגמת PoC אצלי בבית, רק שבדיוק ה-scrub נזכר "שבת היום" – והוא מתחיל לבצע "קרצוף" והביצועים נוחתים ב-80%. מעתה ניתן להקפיא את ה"קרצוף" ובסיום העבודה לחדש אותו.
  • קריפטוגרפיה יותר רצינית. עכשיו יש תמיכה ב-SHA-512, Skein, Edon-R כ-Checksum על כל בלוק וכו' (קחו בחשבון שדבר כזה מומלץ להפעלה אם יש לכם מעבדי Xeon V3 ומעלה)
  • "אני המחליט" – כחלק מתהליך ה"ריפוי עצמי" של ZFS, מעתה ZFS יכול להחליט אוטומטית מתי דיסק גרוע, להשבית אותו ולבצע rebuild לדיסק אחר. (בשלב הבא הבא הוא יצווה עליך להוציא שליח שיביא דיסק חדש 🙂 )
  • הסוף לשימוש ב-sudoers עבור דברים טריוויאליים – פקודות zpool, zfs וכו' שאינן משנות דברים ניתן מעתה לעשות ע"י משתמש רגיל ובכך להדק יותר את האבטחה.
  • ויש עוד פונקציות חדשות, כנסו ללינק לעיל.

מאז גירסה 0.7.0 תוקנה המון וכיום יש 0.7.5. גירסה 0.7.6 תצא בקרוב עם שיפור מהירות ה-ARC ועוד מספר תיקונים (ניתן לראות כאן) ומבחינת יציבות – המערכת הרבה יותר יציבה ממה שהיתה בגירסאות 0.6, כך שאני ממליץ לאלו שיש להם מערכת ZFS – לשדרג (או לחכות ל-0.7.6 ולקבל מהירות יותר גבוהה אחרי תיקוני ה-ARC miss).

עתה אני רוצה להתייחס לציוד המודרני שקיים כיום במחשבים ובלוחות אם. כיום בעזרת השקעה בינונית אפשר לקנות SSD NVME בחיבור M.2 כמו הסמסונג 960 EVO או PRO ולקבל ביצועי קריאה של 2.5 ג'יגהבייט וכתיבה של 1.5 ג'יגהבייט לשניה. האם כדאי עם מערכות כאלו לפרמט ולהתקין אותן ישירות עם ZFS עוד מה-Boot? (כאן לדוגמא הוראות מאוד מפורטות לאובונטו 17.10).

התשובה שלי לכך היא פשוטה: זה תלוי במשתמש. ZFS היא לא עוד מערכת של File System, היא הרבה הרבה יותר מזה. נכון, משתמש רגיל לא ישתמש ב-90% מהאפשרויות ש-ZFS נותן (ומה לעשות, בשביל להכיר טוב ZFS צריך להשקיע זמן), אבל דברים כמו snapshots לפני שדרוג, ביצוע snapshot אוטומטי כל רבע שעה או דברים כאלו (זה לא ממש עולה לך, snapshot ריק תופס 0 מקום), וכל העניין של "לחיות את ZFS" מצריך שינוי מחשבה מסוים ואם בעל המכונה/שרת מוכן לכך, אז בהחלט – כדאי ללכת על ZFS.

יחד עם זאת, אם המשתמש רוצה רק ביצועים ולא מחפש ללמוד דברים חדשים, אז אין שום רע בלהשתמש במערכת כמו XFS, EXT4 או BTRFS. במערכות הללו יש כבר תמיכה לציודי אחסון חדישים ולא צריך לשחק יותר מדי עם המערכת כדי לקבל אותם.

לסיכום: ZFS ממזמן נמצא במצב פרודקשן כשזה מגיע למערכות של אורקל, FreeBSD (לגבי FreeBSD ו-ZFS.. מומלץ לא לנסות להריץ על מעבדי Xeon-SP החדשים.. אלא אם בא לכם לתלוש שערות כשהמכונה בעומס. רק אומר..). עכשיו גם גירסת הלינוקס של ZFS יכולה לתת פתרונות מעולים הן כ-iSCSI, CIFS, NFS. יחד עם זאת, חשוב לזכור: בשביל ש-ZFS יתן ביצועים מעולים, הוא גם צריך חומרה מעולה, עם PCIe 3.0, עם UEFI טוב, עם SSD של Enterprise עם גיבוי קבל (לפחות אחד כזה) או Optane של אינטל, ועם המון RAM (שמשמש ב-ZFS כ-Cache ראשי). עוד משהו חשוב: להקים ZFS לוקח חצי-שעה עד שעה הקמה ראשונית. להגדיר ZFS עבור עבודות שונות כולל בחינות ביצועים – יכול לקחת ימים. אין כאן הוקוס פוקוס וכדאי לקחת זאת בחשבון.

דעה: על רכישת CoreOS ע"י רד-האט

[stextbox id='info' caption='הערה']הדברים הנכתבים כאן הינם דעתי האישית, אינני כותב מטעם Red Hat[/stextbox]

בימים האחרונים פורסמו באתרי טכנולוגיה שונים החדשות כי חברת רד-האט רכשה את חברת CoreOS. חברת CoreOS היתה מתחרה של רד-האט בכל הקשור למערכת לניהול Kubernetes (בשם Tectonic), ניהול Registry לקונטיינרים (Quay), וכמו כן את Container Linux (מערכת הפעלה מצומצמת להפעלת קונטיינרים) וכמובן את etcd שהוצאה כקוד פתוח ורבים (כולל רד-האט) משתמשים בו.

רד-האט (Red Hat) כידוע, היא החברה הכי גדולה בהפצת לינוקס ובמערכות מבוססות קוד פתוח ומטבע הדברים, כשהיא רוכשת חברות קטנות אחרות, יהיו כאלו שידאגו מה יהיה עם המוצרים שהם רכשו, מה עם תחרות וכו' וכו'. בפוסט זה אנסה להסביר מה הולך לקרות לדעתי בהתבסס על רכישות קודמות של רד-האט (כמו Qumranet, InkTank, Gluster ואחרים).

בניגוד לחברות מסחריות אחרות שקונות חברות טכנולוגיה שונות ואחרי שנה שנתיים קוברות את המוצרים שנרכשו, ברד-האט עובדים בצורה שקופה לחלוטין. אם ניקח לדוגמא את 3 החברות שהזכרתי לעיל, בחברת רד-האט עדיין ממשיכים לפתח את המוצרים בצורה פתוחה לחלוטין ובד"כ באתר GitHub, כך שכל אחד יכול להוריד גירסה ואם הוא מעוניין – לעשות Fork. כמובן שהמוצר המסחרי בסופו של דבר שונה במעט מהמוצר ב-GitHub (אם תסתכלו בכל המוצרים שרד-האט מוציאה ב-GitHub, אף אחד מהם אינו כולל סמלים של רד-האט עצמה, עקב עניינים של סימנים רשומים וכו') בכך שהקוד למוצר המסחרי כולל גם טלאים ותיקונים (שנמצאים ב-Master לאחר מכן) וכוללים תיעוד רציני למוצר.

אז לעניות דעתי הדברים הבאים הולכים להתרחש. כל השינויים לא הולכים לקרות מחר, אלא סביר להניח שלקראת סוף השנה או החל משנה הבאה:

  • אחד הדברים הראשונים שלדעתי הולכים להשתנות הוא דווקא בצד של רד-האט והוא מוצר ה-Atomic Host. אינני חושב ש-Atomic Host ימחק, אבל יכול להיות שיהיו שינויים שיגיעו מ-Container Linux של CoreOS.
  • בכל מה שקשור ל-Registry, אני בספק אם יהיו שינויים רציניים אם בכלל במוצרים של רד-האט. ה-Registry הנוכחי שקיים ב-OpenShift לא ממש שונה למיטב זכרוני ממה שקיים ב-Quay, אבל יכול להיות שיהיו שינויים מעטים.
  • לגבי Tectonic – כאן זו שאלת המיליון דולר. רד-האט מייעדת את OpenShift ללקוחות גדולים, אלו שמוכנים לשלם כמה עשרות אלפי דולרים על מערכת OpenShift Enterprise (ועוד 2000-3000$ פר Node, ויש עוד כמה תשלומים על כל מיני חלקים) ורד-האט כבר הפיקה לקחים מהעבר לא לעצבן את הלקוחות הגדולים בשבירת תאימות אחורה. אני מאמין שבשנה שנתיים הקרובות יהיו 2 מוצרים: יהיה Tectonic שכולל שינויים (והמרה/תמיכה בפורמט קודם) להיות תואם לפורמט של OpenShift והוא ייועד לתחום ה-SMB (כלומר Small/Medium Business) ותהיה מערכת ה-OpenShift Enterprise שתוכל להמיר מערכת Tectonic ל-OpenShift – לאלו שגודלים ורוצים לעבור ל-OpenShift Enterprise.
  • לגבי etcd – השינויים שיהיו הם מול ה-Upstream, כלומר מה ש-CoreOS קובעים (פחות או יותר) יכנס ל-OpenShift.
  • לגבי RKT – יכול להיות שיקחו חלקים ממנו לצרכי שיפור Docker Container Engine (אני בספק) אבל אישית אני לא רואה את זה ממשיך כמוצר מסחרי.
  • לגבי השאר – כל פרויקט יעבור בחינה אם הוא מתאים לשילוב בדברים קיימים או שהוא ישאר ב-github.

רבים ישאלו: מדוע בעצם רד-האט רכשה את CoreOS? הרי יש להם מוצר כמו OpenShift הן בגירסת Online (שכל אחד יכול להיות מנוי ולהקים קונטיינרים מבלי להרים מקומית מאומה) והן גירסת Enterprise, אז מה להם ול-CoreOS? התשובה היא פשוטה: גודל שוק ולקוחות. השוק יותר ויותר מתרכז סביב פתרונות גדולים, בין אם מדובר בפתרונות ענן של ספקי הענן הציבורי, פתרון Kubernetes ישיר (גירסת הקוד הפתוח) או פתרון ניהול קונטיינרים מבוסס Kubernetes עם "פנים" ל-Enterprise. תמיד יהיו פתרונות כמו DC/OS, Rancher ואחרים שיכולים להתאים לכל מיני סקטורים, אבל ה-Enterprise דורש דברים אחרים ש-Kubernetes עצמו לא נותן לא מבחינת אבטחה, לא מבחינת רגולציה, עמידה בסטנדרטים משפטיים ועוד, והדבר הכי קרוב שיש עבור Enterprise כולל הדרישות הגבוהות שלהם (ולאלו שמוכנים לשלם) זה OpenShift.

אז מה יעשו אלו שכבר הטמיעו מערכות מבוססות CoreOS? אני מאמין שבמשך השנה-שנה וחצי קרובות הם ימשיכו לקבל שרות מ-CoreOS בהתחלה ולאחר מכן מ-רד-האט (לקוחות ששילמו יקבלו מייל ישיר מ-CoreOS עם פרטי יצירת קשר).