על "חטיפת" עובדים על ידי המתחרים

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

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

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

גוגל, מיקרוסופט, אמזון, פייסבוק, ועוד חברות רבות אחרות עושות בדיוק את אותו דבר. הם "מטרגטים" עובדים מסויימים שהם בודקים מכל מיני מקורות שיש להם ידע מסויים ואז הם יוצרים קשר ומציעים הצעות מפתות. אתה מקבל משכורת של 30K בחודש? הנה 40K או 50K בחודש (לדוגמא), ואגב – עובדים רגילים שפונים לאמזון וכו' דווקא במקרים רבים לא מקבלים הצעות כה מפוצצות. רק ה"נוצצים" שבהם מקבלים הצעות מפתות. לא מאמינים? פנו לאמזון ולאחר הראיון בקשו הצעת שכר והשוו למה שקיבלתם – בשביל הספורט 🙂

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

אתחיל מהצד של העובדים: כפרילאנסר שעושה עבודות אצל לקוחות, במקרים רבים יש זמנים "מתים" במהלך העבודה שהשרתים עושים דברים מסוימים ונוצר "זמן מת" של 10-20 דקות ויוצא שבזמנים אלו נוצר סמול-טוק ביני לבין עובדי החברה, ונוצרת מעין שיחה שבמקרים רבים מובילה לכך שהעובד סקרן לגבי דברים כמו פרילאנס וגם עבדכם הנאמן מתעניין במה שהעובד עושה, ואולי זה יפליא מעסיקים רבים – אבל עובדים רבים לא בדיוק מרוצים ממקום עבודתם, חלקם לא מרוצה מהיחס אליהם, לחלקם לא מקשיבים מבחינת רעיונות והצעות, חלקם ממורמרים במקום עבודתם ולולא המינוס והמיסים והחובות והצורך לפרנס משפחה – הם מזמן היו אורזים דברים ומחפשים מקומות אחרים, ולאחרונה גם שמעתי חששות ממפתחים שונים מכך שחברות רוצות לייבא עובדים מחו"ל במשכורת זולה יותר והחשש מובן – אם אותו עובד מקבל 25-30K משכורת ברוטו והעובד ההודי ידרוש 10-15K, מדוע שימשיכו להעסיק אותו?

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

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

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

  • להקשיב: כפי שציינתי לעיל – בהרבה מקרים יש ניתוק בין ההנהלה לעובדים. החוכמה אינה מצויה תמיד אצל ההנהלה ולפעמים עובד או עובדים יכולים לגרום לחברה לחשוב פעמיים מלעשות צעד מסוים שרק בעתיד יתברר כצעד שגוי. פגישות אישיות ודלת פתוחה לעובדים (ללא צורך לתאם עם המנהל/האחראי שממונה על העובד) תוך דגש של "ישיבה בלתי רשמית" שבה ניתן לאמר הכל – יכולה לסייע לקבל פידבק אמיתי.
  • נתינת מענקים נקודתיים: עובד מסוים שכנע את ההנהלה לא לעשות צעד והרעיון התברר כמוצלח? כתבו לו צ'ק מענק. צוות מסוים הצליח לבצע דברים עוד לפני הזמן שנקבע? תנו לצוות מענק, תראו להם שאכפת לכם מהם והמאמץ שהם משקיעים.
  • "דיאטת ריצה לפיטורין": הנה משהו שחוזר בחברות רבות. הרבעון האחרון לא הכניס מספיק או שהחברה לא עמדה ביעדים שנמסרו למשקיעים? מיד רצים "להתייעל" ומקצצים נמרצות במצבת העובדים. אם ניקח לדוגמא צוות של 10 מפתחים שעובדים עד 7-8 בערב ונפטר 4-5 מהם, תקבלו 0% התייעלות ודברים שלא יסתיימו בזמן ולא ניתן להתחמק מכך. רוצים לקצץ? התאמצו לחפש דרכים אחרות לקצץ. עובד שחושש למקום עבודתו הוא עובד שיקפוץ בהזדמנות הראשונה לכל הצעה אחרת, גם אם ההצעה נותנת בדיוק את אותה משכורת ותנאים, ואם חושבים לקצץ בשכר – שההנהלה תתן דוגמא בסקטור הניהולי בקיצוץ שכר.
  • השקיעו בעובדים: הזמינו הרצאות והדרכות על נושאים טכנולוגיים וטכנולוגיות, בצעו רישום כחברה ללימודי Online ותנו לעובדים ללמוד דברים חדשים, גם אם אתם לא מכניסים אותם מחר בבוקר לתשתיות שלכם. תנו לעובד הרגשה שאשכרה משקיעים בו (ולא, ה"השקעה" של HR היא בדיחה עצובה), שלא הולכים לפטר מהיום למחר ושיש לו דלת פתוחה לשטוח את טענותיו. אם אתם מבינים שעובד בצרה פיננסית ואתם יכולים – הציעו לעובד הלוואה או מפרעה (מומלץ גם לפרסם הצעות כאלו בתוך החברה). הוא לא ישכח לכם את זה.
  • העלאות שכר: אין לי מספיק שערות בראש (ואני לא מקריח) מהסיפורים ששמעתי מכל מיני שכירים על ההעלות השכר העלובות שקיבלו. אולי כדאי לחשוב על העלאות טיפה יותר גדולות?

בסופו של יום, עובדים הם לא רובוטים. עבודה בשכר גבוה זה דבר טוב אך זהו אינו התנאי היחידי. גם אם עובד יקבל 50-60K משכורת בחודש והוא מרגיש ממורמר בעבודה, יכול להיות שהוא יסכים לעבור לחברה יותר "משפחתית" תמורת משכורת נמוכה יותר ועובד שמקבל את ה-25-30K בחודש וכיף לו בעבודה – אולי יסרב לעבור למתחרה שמציע 40K.

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

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

ה-LAB הבא פרק 6: כדאי לארח בחוות שרתים?

הפוסטים בסידרת ה-LAB הבא מקבלים כמות צופים נכבדה ובחלק מהמקרים יש תגובות מחוץ לבלוג. 2 תגובות מסוג שונה היו טלפונים שקיבלתי מ-2 חברות אינטרנט גדולות בארץ לארח שרתים. "בשביל מה לך הרעש והפסקות חשמל? בוא תארח אצלנו" הציעו הנציגים..

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

בשביל לענות על השאלה הזו, צריך לדעת מה אתה בעצם עושה עם השרתים והעלות של החשמל. נצא מתוך הנחה שאירוח 1U בחוות שרתים ידועה עולה 400 ש"ח + מעמ בערך.

נניח ויש לך שרת אחד, נניח שאתה מריץ עליו ESXI + VCSA/VCENTER, השאר מכונות VM שלך. הדבר הכי חשוב לדעת: אלו מעבדים וכמה אתה מאמץ את המעבדים – את זה תוכל לדעת מתוך הגרפים של ה-vCenter שלך. אם אתה משתמש במעבדים דגם L של Xeon – אז צריכת החשמל שלך תהיה בערך כמו של PC במאמץ דרגה בינונית (כלומר 40-50% CPU עמוס), כלומר סביר להניח שחשבון החשמל שלך יהיה בערך 100-150 שקל תוספת. מעבדים דגם E ודגם X צורכים פי 2 חשמל (כמעט) ולכן חשבון החשמל שלך, סביר להניח שבמאמץ דרג בינונית – ההפרש עם השרת יגיע בסביבות ה-300-400 שקל, ואז אם יש לך רק שרת אחד, עדיף אולי לאכסן אותן בחוות שרתים.

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

כרגע 2 השרתים שרכשתי מראים את אותה צריכת חשמל, כך ש-2 השרתים שלי ביחד צורכים סה"כ כ-200 וואט (הגרף מייצג שרת אחד וזה הקו הכחול, הקו הכתום הוא הגבול העליון שהספק יכול לתת). לא בדיוק מרקיע שחקים מבחינת חשבון חשמל :). סביר להניח שהצריכה תהיה הרבה יותר גבוהה אם אכניס מעבדים מסידרת E או X, אבל אני מעדיף לקחת מעבדים יותר איטיים עם יותר שרתים מאשר מספר שרתים יותר קטן עם מעבדים יותר חזקים – כשה-Idle שלהם עוקף בקלילות את ה-100 וואט. (רוב המכונות שלי "רעבות" לזכרון, פחות למשאבי CPU), כך שטכנית אם אמשיך בצריכה הנוכחית, בחשבון דו חודשי יתווסף לי לתשלום 160 שקלים ומכיוון שצריכת החשמל של המכונות נמוכה, ולא יוצא הרבה חום, אני לא צריך להפעיל מזגן.

אז אם אתה קונה 4 שרתים עם מעבדי X או מעבדי E5-2670 ומעלה (סה"כ 8 מעבדים) – אז יכול להיות שצריכת החשמל שלך תהיה גבוהה. מחיר קילוואט שעה בארץ הוא 55.29 אגורות, חלק לפי הצריכה הממוצעת (כלומר אם אתה צורך נניח 200 וואט לשעה, אז התשלום יהיה 11.058 אגורות לשעה), תכפיל ב-720 שעות לחודש, תכפיל ב-2 – וזו תהיה תוספת המחיר שתצטרך לשלם (אם צריך מזגן או סטורג', סוויצ' (שבין כה לא לוקח הרבה חשמל), תחשב ותוסיף) – ואז תוכל לדעת אם שווה לאחסן בחווה או לא. כלל הזהב הוא: נסה חודשיים בבית, תראה את החשבון שמגיע, תראה את החישוב שלך ואז תחליט.

היכן זה ממש לא משתלם? אם כל מכונה שלך היא בגודל 2U, אז תצטרך לשלם 700-800 שקל לחודש, ובשום מקרה שום שרת למגיע לצריכת חשמל של 1400-1600 שקל (בהשוואה לחשבון חשמל שהוא דו חודשי).

לסיכום: הרעיון לאחסן בחווה שרתים של LAB ביתי נשמע רעיון מפתה: אין צורך בארון שרתים, אין רעש, אין צורך במזגן בשביל זה. אבל כשחושבים מראש על דברים כמו מעבדים עם צריכת חשמל נמוכה וארון זול (מומלץ עם דלת זכוכית ולא דלת מחוררת שמוציאה את כל הרעש ועם 2 מאווררים מלמעלה) – אז רעיון האירוח מתאדה לו כשחושבים על המחיר שתצטרכו לשלם. במקרים רבים תרצו לבנות לעצמכם אולי שרת שקט (נניח שרת סטורג') ואז תצטרכו מארז 3U או 4U – ואירוח מכונה זו בלבד תעלה לכם 1050-1200 שקל לחודש, ואצלכם בבית – כמעט כלום. לכן מומלץ להרים את הדברים בבית, להריץ למשך חודשיים ולראות כמה חשמל צרכתם (ברוב מערכות ה-IPMI כמו iDRAC, IMM, ILO ניתן לראות זאת) ואז להחליט.

ה-LAB הבא: על צריכת חשמל

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

בואו ניקח מחשב דסקטופ רגיל. אנחנו נמצא בו מעבד של AMD או אינטל עם צריכת חשמל של עד 65 או 90 וואט (ללא Overclocking) זה ה-TDP שהוא ממוצע. מעבד כמו אינטל i7-6700K בעומס יצרוך 116 וואט. בחלק מהמקרים שיש שם גם כרטיס גרפי יעודי למשחקים וכו', צריכת החשמל שלו תהיה בין 100-300 וואט (ה-300 במקרים של VEGA מ-AMD, במקרים של nVidia זה בד"כ מגיע גג בצריכה מקסימלית ל-250 וואט). שאר הציודים במחשב לא ממש צורכים הרבה. מאוורר (גם בפעילות מלאה) צורך 0.6 וואט ודיסק קשיח צורך בין 5-9 וואט.

כלומר ספק כח של 300-500 וואט יכול בהחלט להספיק ל-PC רגיל. (שוב, בלי Overclocking)

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

אם נסתכל על החלק שצורך את הכי הרבה חשמל, מדובר כמובן במעבדים. הבה ניקח מעבד פופולרי בשרתים כמו ה-Xeon E5-2620 V4 בזוג. אם תסתכלו על הדף הזה, תראו שהמקסימום צריכה של כל השרת מגיע ל-368 וואט. שוב, ספק 500 וואט יספיק פה לחלוטין.

כל העניין של חיבור תלת פאזי הוא מהסיבה שאנחנו רואים את זה בחוות שרתים. ארון 42U עם 20 שרתי 2U, או 40 שרתי 1U (או הרבה פחות אם השרת הוא עם U יותר גבוה) אז כן – צריכת החשמל עולה ועולה ואז באמת צריך חיבור תלת פאזי.

אבל בבית, מה בדיוק נקים? 2-4 שרתים? ברוב המקרים זה יהיה 2-3), זה יהיה כמו להפעיל 5 מחשבי PC בתצורת Desktop. נוסיף לכך את העניין שמדובר ב-LAB וברוב המקרים מה שנריץ לא יתפוס באופן קבוע את המעבדים בצריכת 100% אלא יותר לכיוון ה-20-40% כך שצריכת החשמל עצמה לא תהיה גבוהה.

בלוח החשמל שלנו יש לנו מתג ראשי שמקבל כמות מסויימת של אמפר (בחלק מהמקומות זה 24, בחלק 32 וכו' – צריך לשאול את חברת חשמל לגבי הבית שלך), והמתגים המשניים יכולים להעביר X אמפר לאותם נקודות להם מחוברת נקודת המשנה (בד"כ זה 10 או 16 אמפר, תלוי במתג המשני). כשמתכננים LAB, כדאי לחשב צריכה פר שרת (Amp = Watt/Volt) וכמובן יש לקחת בחשבון ציודים אחרים שמחוברים לאותו מתג משני, כך שאפשר בהחלט להגיע למצב שלא צריך להגיע לקניית הרחבה לחיבור תלת פאזי.

נקודה נוספת חשובה: סוג המעבד. מעבדים כמו Xxxxx (כמו X5670) ומעבדי E5 צורכים לא מעט וואט, אבל אפשר גם ללכת על מעבדי L עם מעטפת צריכת חשמל נמוכה (65 וואט). החסרון: המהירות נמוכה ב-1 ג'יגהרץ לערך ממעבד E5, כך שאם אתה מוכן לאיטיות קלה, תוכל לחסוך בחשמל.

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

כאב ראש: התקנת אפליקציות כבדות וממשקי משתמש בהווה

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

אחת הבעיות היותר מתסכלות בכל מיני אפליקציות כבדות – היא התקנה במערכות לינוקס (ואני לא מדבר על התקנת אפליקציות ב-DEB או RPM שבהם פקודת yum או apt עושה לך את העבודה). תרשו לי לתת 2 דוגמאות להקמת מערכת POC של אפליקציות כבדות כאלו.

נתחיל עם OpenStack. חברת קוקי יבואני נעליים (כן, שם מהסרטים) החליטה ש-Openstack זה יכול להיות אחלה פתרון בשבילם, אבל הם קודם רוצים ללמוד בכלל מה זה, ואם אפשר – שיקימו על VM את המערכת שהחבר'ה יוכלו להתרשם וקצת לשחק עם זה. בשום מקרה ה-VM לא הולך להיות שרת פרודקשן. במקרה כזה אם מישהו מחברת קוקי יצור איתי כפרילאנסר קשר לגבי זה, אשמח לדוגמא להפנות אותם לדף פרויקט ה-RDO כדי להקים את ה-OpenStack. כל איש סיסטם, גם אחד כזה שאין לו הרבה נסיון עם לינוקס יוכל לעקוב אחר ההוראות הכי פשוטות ולהקים מערכת. אחרי הכל, כל מה שאיש הסיסטם יצטרך לעשות זה להקים VM עם מערכת הפעלה CentOS 7, עם 32 ג'יגהבייט זכרון ועם 4 ליבות, לבצע SSH למערכת, לוודא ששם ה-hostname הוא אכן תקין ומופיע ב-DNS של החברה, ולהריץ את הפקודות. משם הכל יבוצע באופן אוטומטי ולבסוף גם יופיעו לו הוראות איך להתחבר למערכת.

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

ויש גם דוגמאות הפוכות: אותה חברת קוקי, נניח שהיא קראה בבלוג העסקי שלי על OpenShift והיא רוצה להקים אותו אצלה כדי "לשחק" עם הפלטפורמה. בחברה יש כבר נסיון עם קונטיינרים והם שוב פונים אליי, ואני אשמח להפנות אותם לדף הזה אם הם משתמשים במערכות Red Hat או לדף הזה אם הם משתמשים ב-CentOS וספציפית לחלק של הקונטיינרים עם Docker. הפקודה שם לא תעבוד כי מישהו שכח להוסיף פרמטר
(v /sys/fs/cgroup:/sys/fs/cgroup:rw-) ורק אחרי הוספת הפרמטר הקונטיינרים יעלו והמערכת תעבוד, אבל אחרי שהם יכנסו למערכת הם יראו שיש מספר "הפתעות" לא נעימות כמו:

  • אין Templates. למה? שאלה טובה. אפשר להשלים את זה כשעוקבים אחר ההוראות בדף הזה (ההוראות שם לא תמיד עובדות, יש צורך בידע ב-BASH) כדי להתגבר.
  • על מנת להקים קונטיינרים ולאכסן אותם – יש צורך ב-Container Registry. הפתעה! יש קונטיינר עם Registry אבל הקונטיינר של ה-OpenShift והוא "לא מדברים", בהצלחה עם השילוב ביניהם.

אז אולי יש דרך אחרת להקים OpenShift? כן, יש Installer כלשהו וזה זמין כאן אך מכיוון שרובנו עובדים עם CentOS ולא עם RedHat אז עדיף לך ללכת לקישור לדף העליון שמוזכר לגבי CentOS, רק שאל תבנה על כך יותר מדי, רד-האט הוציאו את ה-Installer הזה לפנסיה מוקדמת. פתרון חלופי ל-Installer? רעיון טוב, בינתיים אין משהו. יש כמובן את הדרך של ההתקנה עם Ansible, רק שהיא מצריכה ידע כלשהו ב-Ansible והיא דרך די מעולה… לגרום לך להוציא שערות מהאף (אם אתה לא מכיר Ansible). יש כמובן דוגמאות באינטרנט איך אתה יוצר קובץ הגדרות די מינימלי ומריץ אותו מול תיקיה מסויימת ב-openshift-ansible (שאותו אתה צריך לשכפל מה-GIT) עם קובץ מה-GIT בשם openshift-ansible/playbook/byo/config.yml רק ש.. הפתעה, הקובץ config.yml לא קיים, ואף אחד לא טרח לעדכן את זה וגם כשאתה מצליח למצוא פתרון חלופי (כאן) תקבל כמה שגיאות בהרצת ה-playbook (הנה הטיקט שלי על כך) כאן.

(אגב, מי שמחפש להקים על הלאפטופ שלו את OpenShift, יש את minishift שהוא באמת קל להתקנה ולחובבי Kubernetes יש את minikube – הכל רץ על Windows, Mac ולינוקס כל עוד מותקן לכם פתרון וירטואליזציה בלאפטופ, אם כי יש בעיה להקים את זה על ESXI, המערכת מקימה בתוכה VM פנימי עם NAT ואז אינך יכול לגשת לשם ממשק web או לאפליקציות שלך. שינוי מ-NAT ל-Bridge לא עוזר).

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

  1. לבנות ממשק Web או ממשק טרמינל עם ncurses (זוהי ספריה שמאפשרת לך ליצור "GUI" טקסטואלי, משהו שמזכיר בעבר הרחוק את Magic ב-DOS למי שזוכר) שאיתם ניתן לבנות ממשק ששואל את המשתמש קבוצת שאלות כל פעם.
  2. ממשק ה-Web/GUI אמור לבדוק את הפרמטרים מיידית. הכנסת שם FQDN לא נכון? כתובת לא נכונה? פורט לא נכון? תיקיה לא נכונה? המערכת אמורה מיידית לסמן שהפרמטר בשדה זה שגוי (בד"כ עם מסגרת מלבנית אדומה סביב אותו שדה) ולא לתת למשתמש להמשיך הלאה עד שזה יתוקן.
  3. אפשרות חביבה שקיימת ב-oVirt היא שמירת קובץ תשובות, כך שאפשר במסגרת ממשק ההתקנה לאפשר למשתמש להעלות קובץ תשובות קודם, כך שאם צריך להקים את המערכת בשרת אחר, הדברים יהיו קלים ומהירים בהרבה.
  4. התקנה אוטומטית דרך SALT או Ansible הכלולים בחבילה אמורה להוציא גם פלט קריא אנושית כך שגם מישהו שאינו מומחה אוטומציה יוכל להבין מה בדיוק התקלה ואולי יוכל לתקן אותה. אחרי הכל – אם מישהו נמצא במסגרת Trial, הוא לא תמיד זכאי לתמיכה.

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

ה-LAB הבא: פרק 5, בחירת File system ורשת (חלק ראשון)

בפרק הקודם הזכרתי את עניין קנית JBOD או הקמת שרת קבצים, חיבור ב- +SFP. הפעם נרחיב קצת יותר לגבי אותו חיבור, אבל נתחיל במשהו פשוט. להלן צילום מסך מתוך מכונת VM עם Windows 10 בשרתים שלי:

מה שאתם רואים זה הרצת תוכנת בדיקת מהירות דיסק בשם CrystalDiskMark 6 והתוצאות … לא נראות מי יודע מה, בלשון המעטה. דיסק SSD פשוט ב-400 שקל יתן ביצועים פי 5 מזה ואם תבדקו בתשתית שלכם בעבודה, הביצועים יהיו הרבה יותר גבוהים. (מדוע? כבר אסביר).

נכון להרגע, מכונת ה-ZFS שיש לי היא מכונה די צנועה:

  • מעבד I5 דור שלישי
  • 16 ג'יגהבייט זכרון
  • 4 דיסקים, 2 דיסקים של 2 טרה ו-2 דיסקים של 4 טרה, והם ב-Mirror. הדיסקים כולם של Western Digital מסידרת RED (לא RED PRO) – טעות שעשיתי…
  • 2 דיסקים SSD ממש ישנים בגודל 256 ג'יגה של SANDISK, הם משמשים ל-Cache ול-Log

בקיצור – מכונה מהסוג המאוד נמוך.

ובכל זאת, מה שאנחנו רואים פה, הוא שלמרות שהציוד בקצה המאוד נמוך, המכונה נותנת תוצאות מרשימות. 1 ג'יגהביט בקריאה וכתיבה Sequence, כלומר צוואר הבקבוק איננו מכונת ה-ZFS, אלא התקשורת בינה לשרתים, כלומר לא חשוב איזה מכונה תקנה או תקים, כל עוד היא מחוברת בתקשורת 1 ג'יגהביט, זה מה שתקבל. אפשר כמובן לעשות Teaming ל-2 או 4 חיבורי רשת (לא מומלץ, מקבלים לא מעט נפילות, תלוי בציוד, כבלים) ולקבל תוצאות יותר טובות, אבל עדיין בהשוואה להטמעת ESXI בחברה גדולה – התוצאות יהיו נמוכות יותר.

אז איך נגיע לביצועים טובים מבלי לקחת משכנתא?

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

האפשרויות שלפנינו הן (אם נצא מתוך הנחה שיש לנו 2 שרתים שמריצים VM/קונטיינרים ושרת קבצים יחיד או שרת עם JBOD):

  • קניית 3 כרטיסי רשת: כרטיס אחד עם זוג פורטים 10GB בחיבור RJ45 ו-2 כרטיסים עם פורט RJ45 במהירות 10 ג'יגה. הכרטיס עם זוג הכניסות ישב בשרת הקבצים ומשם נחבר כבל רשת CAT6 (או 6E) לכל שרת בכרטיס רשת 10GB החדש שרכשנו והתקננו.
  • אופציה נוספת היא רכישת 3 כרטיסי רשת כמו מקודם, רק שהפעם במקום RJ45 אנחנו נקנה כרטיסים שהם +SFP שתומכים ב-Copper (או TwinAx) ונבצע את אותם חיבורים. היתרון? כבלי +SFP הרבה יותר חזקים והחיבור הרבה יותר טוב מ-RJ45.
  • אפשרות נוספת היא כמו האופציה הקודמת, רק עם סיבים אופטיים. אפשר לקנות כרטיסים עם חיבור אופטי (או כרטיסי CNA שמתאימים לעבודה גם עם אופטי וגם עם כבלי Copper). בנוסף לכרטיס ולכבלים יש צורך לרכוש Transceivers על מנת לחבר את הסיבים אליהם ואז לחבר לכרטיס. יש צורך בידע כיצד להגדיר את החיבורי סיבים.
  • אפשרות נוספת וקצת יותר מורכבת היא Infiniband. יש לרכוש כבלים מיוחדים וכרטיסים יעודיים לכך, ויש צורך בידע כיצד להגדיר זאת למערכות הפעלה אחרות.

מבחינת מחירים, כל האופציות שנתתי כאן הם פחות או יותר אותו מחיר (בהבדלים של 100-250 שקל) ואני ממליץ לערוך קצת סקירות שוק ב-eBay לפני קניה.

אם יש לנו יותר מ-2 שרתים שיריצו VM/קונטיינרים, אז אפשר להוסיף לשרת הקבצים עוד כרטיס עם זוג פורטים או לרכוש מלכתחילה כרטיס מרובע פורטים. אם לעומת זאת ה-LAB שלך הוא רחב וכולל 8-10 שרתים פיזיים, כדאי בהחלט לחשוב על Switch לאותו סוג חיבור שאתה רוצה לעבוד איתו.

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

וכאן שוב נחזור לעניין ה-Storage ובמיוחד ל-File system: שום NAS מוכן שתקנו (למעט אלו של iXsystems) לא יתנו ביצועים כמו ש-ZFS נותן. ZFS משתמש ב-RAM וב-SSD בצורה מאוד חכמה ובשעה שפתרונות סטורג' "ביתיים" משתמשים ב-SSD לשם האצת כתיבה/קריאה, ZFS משתמש קודם כל ב-RAM, בשיטת הטרנזאקציות ולוגים ועוד (אפשר לקרוא על כך כאן) ולכן אם אתם רוצים להקים כמה שרתים ועליהם עשרות VM או קונטיינרים, ZFS מתאים לכך הרבה יותר, חוץ מהעובדה שהרבה יותר קל ליצור איתו Snapshots שכוללים לדוגמא את כל מכונות ה-VM או קונטיינרים או תיקיות מסויימות והמערכת יוצרת אוטומטית snapshots יעילים וקטנים לפי מה שמגדירים אותה (אצלי לדוגמא יש snapshots כל רבע שעה, כל שעה, כל יום, כל שבוע, כל חודש וכל רבעון, וכל מה שיש לי ב-ZFS זה דיסקים של 6 טרה, ותתפלאו, כל ה-snapshots לא תפסו הרבה מקום ויחסית קל מאוד לשחזר קובץ/קבצים או תיקיה/תיקיות בעזרת פקודות shell פשוטות מאוד).

בנוסף, מכיוון ש-ZFS עושה המון שימוש ב-RAM כ-Cache רמה ראשונה (רמה שניה, L2 מבוצעת על SSD) – כמה שיותר זכרון שתתנו לו, הביצועים יהיו יותר גבוהים ועם שרתים יד שניה המחירים לא כאלו גבוהים. אם לדוגמא שרתי R610 שרכשתי, אם אכניס להם זכרון שירוץ במהירות 1 ג'יגהרץ אך עם 192 ג'יגהבייט זכרון, עלות הזכרון כולו (12 מקלות של 16 ג'יגהבייט) תעלה לי … 2000 שקלים, שזה פחות או יותר המחיר של .. 32 ג'יגהבייט DDR4. אגב, על R710 (ה"אח" היותר גדול של R610 – אותו דור) אפשר להלביש 288 ג'יגהבייט זכרון מאפס (כלומר ללא המקלות הקודמים ב-3130 ש"ח (פלוס משלוח ומסים לארץ). שוב, לשם השוואה – 64 ג'יגה זכרון DDR4 עולה יותר מ-5000 שקל.

בפרק הבא נדבר על רשתות, VLAN, ציוד מומלץ וכו'.

ה-LAB הבא פרק 4 – בניית Storage חלק שני

בפוסט הקודם דיברתי על בניית Storage ל-LAB שלכם, ודיברתי יותר על תוכנה (OS וכו') מאשר חומרה. הפעם אשלים את הפערים לגבי חומרה.

טכנית, הפתרון הכי פשוט ל-LAB קטן זה לקחת שרת 1U, למלא אותו בדיסקים, להקים בשרת VM, ולייעד חלק מה-Datastore שיהיה שרת iSCSI/NFS/CIFS וכו'. זה לא יתן את הביצועים הכי טובים (בכל זאת, אתם לא יכולים למפות את הכרטיס RAID ל-VM כי המערכת משתמשת בו, אלא אם תפרידו פורטים של SAS מהכרטיס RAID הפנימי לטובת כרטיס RAID אחר) – אבל כשהתקציב מצומצם וצריך משהו פה ועכשיו – זה יכול להיות פתרון.

אבל יש עוד פתרונות.

אחד הפתרונות הפופולריים הוא קניה של JBOD (כלומר Just a Bunch Of Disks, יש גם הסברים אחרים ל-JBOD). בעקרון JBOD הוא דבר די "טיפש" שאינו מכיל מחשב X86 בתוכו אלא בקר יעודי שכל תפקידו הוא להתחבר לחיבורי המיני SAS ב-Backplane (חיבור עם כבל SFF 8087) ולהוציא אותם החוצה, כך שאם יש לך לדוגמא ב-JBOD כ-3 שורות של 4 דיסקים לדוגמא, תצטרך לחבר 3 כבלי SFF-8088 (בתמונה מימין) בין ה-JBOD לבין המכונה שתריץ ה-OS שיתן שרותי קבצים.

ישנם קופסאות עם JBOD עם כרטיסים יותר חכמים שמוציאים את כל תעבורת הדיסקים שלכם על SFF-8088 יחיד ויש עוד כניסה שמאפשרת שרשור מתמשך של קופסאות JBOD (כך ניתן לשרשר עד 1024 דיסקים SATA או SAS), כך שבסופו של דבר, שרת 1U שמריץ פתרון וירטואליזציה, כרטיס RAID עם כניסות חיצוניות שממופה ל-VM – ותוכלו להרים יופי של פתרון שרת קבצים.

ויש כמובן את הפתרון שהרבה יעדיפו – לרכוש מארז 2U גנרי לשרת כמו Chenbro, iStarUSA, NorcoTek ואחרים, להכניס שם לוח אם דסקטופ עם מעבד פשוט וכמות זכרון צנועה וכרטיס רשת, לדחוף דיסקים ולבנות שרת קבצים כמכונה יעודית או לרכוש פשוט שרת 2U יעודי יד שניה. החסרון ברכישת שרת יעודי יד שניה זה שאתה עלול למצוא את עצמך עם ביצועים מופחתים ב-50%, הואיל ושרתים רבים הם ישנים ועדיין עובדים עם SATA 2, כלומר מחצית מהמהירות של SATA-3. במקרים כאלו אם מחליטים לרכוש שרת כזה, קנו כרטיס RAID יעודי וחברו אותו ל-Backplane במקום כרטיס ה-RAID שנמצא בשרת, רק תוודאו שהוא תומך ב-SATA-3.

לסיכום: ה-LAB שלך יכול לתת ביצועים טובים או גרועים – תלוי בפתרון Storage שתבחר להקים/לרכוש. אם בחרת לדוגמא להכניס דיסקים מכניים 2.5 אינטש של לאפטופים (כי מצאת בזול) – יהיה מצב שה-VM יעלו לאט וכל פעולה שדורשת שימוש בדיסקים תהיה איטית בגלל שמהירות הדיסקים הזו היא איטית יחסית (5400 סיבובים לדקה מול 7200 בדיסק טוב). לעומת זאת, אם תבחר דיסקים קשיחים במהירות 7200 RPM ותוסיף דיסק או 2 SSD שישמשו כ-Cache, הביצועים שלך יהיו (יחסית) טובים. נכון, זה רק LAB ביתי, אבל חוק מרפי אומר שלפעמים כשאתה בדיוק צריך לבדוק משהו ועכשיו – ביצועים טובים מאוד יעזרו לך.

ה-LAB הבא פרק 3 – בניית Storage

בפרק השלישי אנחנו נדבר על Storage. אם יש משהו שאנחנו צריכים ל-LAB – זה Storage. זה יכול להיות משהו קטן וצנוע, וזה יכול להיות 4 שרתים ב-Cluster שמריצים CEPH עם כרטיסים של 10 ג'יגהביט או GlusterFS עם 3-4 שרתים שיתנו לנו מה שאנחנו צריכים. בקיצור – הטווח רחב.

אז לפני שנשלוף את כרטיס האשראי, נרוץ ל-eBay ולאמזון לרכוש ציוד – צריך לבדוק מה הצרכים שלכם. אם לדוגמא אתם רק רוצים לבנות איזה NAS קטן לארח קבצים (ISO, סרטים, סדרות, כמה VMDK קטנים וכו') אז כל מה שאתם צריכים זה לוח אם עם מעבד בינוני (מעבד i5 או i7 מלפני דור או 2), 8-32 ג'יגה זכרון, וכמובן – דיסקים קשיחים. לצרכים כמו שתיארתי לעיל, ערימת דיסקים קשיחים מכניים + כונן SSD יספיקו. אם לעומת זאת אתם רוצים להריץ את כל ה-VM/קונטיינרים שלכם דרך NFS או iSCSI, אז נצטרך משאבים יותר רציניים כמו SSD מכובד (סידרת ה-PRO של סמסונג היא בחירה מעולה, גם Crucial MX300 זו בחירה טובה). אם לעומת זאת אתם רוצים לחבר את כל המכונות (ויש לכם יותר מ-20 מכונות VM רצות) לאותו Storage בחיבור 10 ג'יגהביט (RJ45 או +SFP) – אני ממליץ על 2 כרטיסי Intel Optane 900P בגודל 280 ג'יגה בתצורת RAID-0 שישמשו כ-Cache.

שאלת השאלות כמובן היא – מה להתקין מבחינת OS? יש לכך כמה תשובות:

  • אם אתה לא אוהב לינוקס/שונא לינוקס/לא מכיר לינוקס/פוחד מלינוקס – אתה יכול להתקין את XPEnology של Synology. גירסה זו אינה מקבלת תמיכה רשמית (ולא תמיד היא עובדת על מעבדי AMD בלי לבצע כמה שינויים) – אבל אתה מקבל את מה ש-Synology מוכרים: יצירת RAID, ווליומים, הרמת קונטיינרים ומכונות וירטואליות, שיתוף קבצים ותיקיות, שימוש ב-SSD כ-Cache ועוד ועוד. למעוניינים לראות איך להתקין את זה, כאן הוידאו שמדגים ומסביר בקצרה.
  • אם אתה מחפש לבנות NAS יותר רציני (עם חיבור ל-Active Directory, עם iSCSI יותר רציני, עם ביצועים יותר גבוהים וכו') ואתה לא רוצה להתקרב ללינוקס – FreeNAS יכול להיות פתרון מעולה בשבילך. חשוב מאוד – מכיוון ש-FreeNAS מבוססת על FreeBSD ו-FreeBSD לא מתעדכן תדיר כמו פדורה ואובונטו, אז עדיף להשתמש בלוח אם ומעבד דור או 2 אחורה ולאו דווקא משהו חדש שיצא לפני כמה חודשים (אחרת המערכת אפילו לא תפעל).
  • אם לעומת זאת, אתה רוצה ביצועים מאוד גבוהים ואתה מכיר לינוקס טוב והסטורג' שלך הוא מכונה אחת, לך על ZFS שרץ על לינוקס. תקים מכונת אובונטו 16 LTS (הגירסה לשרת, לא לדסקטופ), תתקין עליה ZFS ותתחיל להגדיר דברים. לא מכיר ZFS טוב או בכלל ויש לך סבלנות? קנה את הספר הזה ותתחיל ללמוד אותו.
  • רוצה לא רק ביצועים ויציבות אלא גם שרידות חומרה? הקם 2 שרתים, תתקין עליהם ZFS ומעל זה הקם לך GlusterFS. לאחר הקמת ה-GlusterFS (הוא לא מצריך מעבד עם 16 ליבות ו-128 ג'יגה זכרון. מעבד עם 4 ליבות, ו-8 או 16 ג'יגה זכרון יספיקו) תוכל להקים שרותים כמו NFS, iSCSI ו-CIFS כדי לשתף. על מנת לקבל שרידות, יהיה צורך להתקין חבילות Corosync ו-PaceMaker שאיתן תוכלו להגדיר VIP. מומלץ להשתמש בגירסת GlusterFS 3.8 (ב-3.10 ו-3.12 יש בעיות שמטופלות בימים אלו). אה … המערכת תהיה Active/Active 🙂

אם אתם משתמשים ב-Storage שלכם למערכות VM/קונטיינרים/Open Stack וכו' – גיבוי יהיה חשוב לכם. במקרה כזה, קנו שרת יד שניה, מעאפן ככל שיהיה, הכניסו בו דיסקים ו-SSD, תתקינו איזו מערכת מההמלצות למעלה, ותייצאו ממנו SHARE ב-NFS (או CIFS) ותגבו לשם, ולמי ששואל – Veeam עובד עם זה מעולה, מנסיון.

אחרי שהקמתם את ה-Storage שלכם, דחפו למכונה (אם אין) כרטיס רשת עם 2 או 4 כניסות (חוץ מהכניסה שאתם משתמשים כרגע) ויצאו את ה-Share פר כניסה או פר זוג (Teaming וכו'). לשם כך תצטרכו מתג טוב שיודע לתמוך טוב ב-VLAN, Tagging, 802.11q ושאר ירקות. איזה? אין לי המלצות קונקרטיות, שאלו חברים 🙂

לסיכום: אם אתם מקימים LAB כדי ללמוד דברים חדשים על מנת לשפר את הקריירה והידע המקצועי שלכם, כדאי לכם מאוד להקים Storage מקומי ולא להשתמש באחסון המקומי בתוך השרתים. לכל חברה שתלכו שמכבדת את עצמה – יש פתרון Storage כלשהו ועדיף שתלמדו איך ליישם פתרונות עם Storage דרך כניסות רשת נפרדות, איך משתמשים ב-Multipath וכו' וכו'.

ה-LAB הבא פרק 2 – שרתים יד שניה

בפוסט הקודם שלי דיברתי על אלו שרתים אני רוצה. יצא לי בימים האחרונים להסתכל על כמה מכירות של שרתים יעודיים יד שניה ב-eBay ובארץ ואני הולך לרכוש 2 שרתים, והחלטתי לשתף כמה טיפים בבחירה, החלפת ציוד פנימי ועוד.

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

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

מדוע המאווררים האלו יוצרים רעש כזה חזק? מכמה סיבות. לשם הדוגמא, ניקח שרת של DELL, ה-R710. נתחיל עם צלעות הקירור (לחצו להגדלה).

אם תסתכלו מקרוב על צלעות הקירור, תראו שהם מאוד צפופים. לשם השוואה, אם תסתכלו על כל פתרון קירור עם צלעות וקירור אויר, תראו שהרווח בין הצלעות הרבה יותר גדול. הסיבה לצפיפות היא שישנם הרבה יותר צלעות, מה שעוזר לחום לעלות בהדרגה ולא במכה אחת. נוסיף לכך שבמקרה של שרתים רציניים יש צורך לקרר את הכל, החל מהדיסקים הקשיחים (גם SSD), נמשיך בזכרון, במעבד כמובן, ברכיבים השונים וכלה בכרטיסים שנמצאים בסוף השרת (במיוחד אם יש לכם GPU רעב לוואטים רבים). במאווררי מחשבים רגילים, עצם יצירת הרוח היא פונקציה מספקת כדי לקרר את הציוד. בשרתים לעומת זאת, המאווררים צריכים לרוץ במהירות של עד פי 4-5 (כלומר עד בערך 20,000-25,000 סיבובים לשניה – RPM). מדוע? כי המהירות הזו יוצרת לחץ סטטי של אוויר שנמדד ב-CFM (כלומר Cubit Foot/Minute). במילים אחרות, המאווררים יוצרים מעין "מנהרת רוח" שנכנסת מהחורים היכן שנמצאים הדיסקים (ולכן אפשר להרגיש לפעמים דיסקים "קפואים") והאוורור יוצא בתפזורת מהצד השני. כל הספקים גם מוסיפים פלסטיק בשרתים יעודיים שמחלק את האוורור בין 2 המעבדים בשרת כך שהאוורור יספק את הציוד ב-2 החלקים בשרת.

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

נקודה חשובה נוספת היא בבחירת המעבדים בשרת. אם חשקה נפשכם בהכנסת המעבדים הכי חזקים לשרת (כמו ה-E5 2699 V4), תצטרכו לקחת בחשבון חיים מחוץ למטוס בואינג 747 גם כשהשרת לא עושה מאומה. מעבד כזה לוקח 145 וואט, נכפיל ב-2 (2 מעבדים) והרי לנו מפלצת שצריך לקרר אותה כל רגע וכל שניה, כאן המאווררים לא ממש יוכלו "לנוח" ולרדת לרמה סבילה של רעש לבן. לכן – כדאי לבדוק מה ה-TDP (מעטפת צריכת חשמל) של כל מעבד. כמה שיותר נמוך, המאווררים יצטרכו פחות לעבוד ואתם תוכלו לחיות בבית בשקט. בד"כ מעבדים של 60 וואט הם אידיאליים אולם ניתן גם לקחת מעבדים עם TDP של 90 וואט.

עניין נוסף הוא הדיסקים בשרת. ברגע שאין לכם דיסקים בשרת, יכנס הרבה יותר אוויר (אין דיסקים שחוסמים חלק מכניסת האוויר) לשרת והוא יתקרר הרבה יותר מהר, מה שיוריד את מהירות המאווררים ויתן שקט, ולכן אם אתם לדוגמא חובבי VMWare, השתמשו ב-Disk On Key (או בכרטיס SD שישב בשרת) כציוד ל-Boot ללא כמות גדולה של דיסקים (אפשר להכניס SSD או 2 ב-RAID-0 שישמשו כ-Read Cache עבור ה-vSphere) והקימו לכם שרת גדול (4U) עם דיסקים מכניים ו-SSD שישמשו כ-Storage שאותו תשתפו כ-NFS, CIFS, iSCSI לשאר השרתים (ואם יש לכם תקציב, הקימו עוד אחד כזה עם דיסקים יותר איטיים שישמשו לגיבוי). זיכרו: לא חייבים דיסקים בכל שרת ואפשר לעשות BOOT מ-PXE (תכירו את iPXE שנותן הרבה יותר מ-PXE רגיל).

אם אתם רוצים לחסוך בצריכת חשמל וגם לקבל שקט, תצטרכו לבנות לכם שרתים וכאן מומלץ לעבוד עם מארזים בגודל 4U (או 3U, תלוי בצרכים). במארזים כאלו ניתן להכניס 2 מאווררים שקטים של 120 מ"מ, 2 מאווררים מאחורה (בתצורת PULL כדי שישאבו את האויר מהמכונה ויוציאו אותו החוצה) ופתרון קירור רגיל מבוסס אויר למעבד שתבחרו. כל המאווררים לא לוקחים צריכת חשמל רצינית (בערך 0.6 וואט פר מאוורר) כך שהמכונה אולי תהיה גדולה, אבל צריכת החשמל שלה תהיה נמוכה משמעותית מצריכת חשמל של שרת יעודי רגיל.

בפרק הבא: על הקמת NAS טוב.

ה-LAB הבא שלי

מי שקורא את הבלוג הזה בוודאי קרא בעבר על ה-LAB שלי. למען האמת, עד היום היו לי בערך 3 LABS שהורכבו ממחשבים שונים, חלקם היו PC רגילים עם מפרט נמוך, בחלק מהזמן ה-LAB היה מורכב משרתים של HPE ובשנתיים האחרונות היה לי מיקס של מכונות החל ממיני PC ו-Raspberry Pi ועד צמד שרתים עם 8 מעבדי Xeon בכל מכונה (הושאל ע"י לקוח לטסטים עבורו).

אחד הדברים שאני מתכנן לבצע בשנת 2018 זה להקים LAB חדש מאפס, לעשות קונסולידציה (לוותר על הנתב שלי ולאחד את זה עם דברים אחרים), לעבור לפלטפורמה אחידה ואם יהיו פרויקטים רווחיים – להקים Storage חדש (כמובן שמבוסס ZFS) ושכל המכונות יהיו במבנה שרתים (1U, 2U).

אבל לפני שעושים את הדברים האלו, חשוב לדעתי לבדוק מהי הסביבה שכל זה ישב. אם מאן דהוא שוכר/רכש בית של 2 קומות ומעלה עם חיבור חשמל גדול ועתיר אמפרים/וואט, אז הוא יכול לרכוש לעצמו כמה שרתי מותג יד שניה, NAS כמו Synology, להוסיף נתב, להקים את הכל בארון 20U/40U, לאחסן את זה בממ"ד, להקים כמה נקודות AP בבית, אולי להוסיף מזגן (במקרה הצורך, בהתאם לטמפרטורות) ולסגור עניין. משם עושים את כל ההגדרות דרך SSH/RDP/דפדפן מבלי לסבול מהרעש של המכונות.

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

אז מה הולך להיות לי ב-LAB הבא: (התכנון כמובן אינו סופי ודברים עוד ישתנו)

  • מבחינת מעבדים – כל המכונות (למעט נתב) יהיו מבוססים Ryzen 7-1700. הסיבה? מעטפת חשמלית נמוכה (65W) יחד עם 8 ליבות ו-16 נימים. לינוקס רץ על זה מעולה, וגם vSphere 6.5U1 תומך ב-Ryzen.
  • מבחינת שרתים – 3 מכונות, 64 ג'יגה זכרון, דיסק SSD של 250 ג'יגה פר ESXI (לשימוש כ-Cache). יהיו 2 שרתי vSphere כ-Cluster שיופעלו מ-Disk on Key ועוד מכונה שתריץ לינוקס "על הברזל" כדי להריץ עליה דברים שמצריכים וירטואליזציה כמו VirtualBox (פרויקטים כמו MiniKube, MiniShift ועוד)
  • מבחינת תקשורת – יש לי כל מיני רעיונות בראש. התקשורת המרכזית תהיה על 1 ג'יגהביט אך התקשורת בין ה-ZFS למכונות הוירטואליות תהיה ב-10 ג'יגהביט. מבחינת מכונה שתשמש כנתב אני כנראה אבנה זאת מ:
    • קופסא 2U (או 3U) עם לוח רגיל ומעבד i3-7100T (מעטפת 35W) או לוח עם מעבד ATOM C3XXX. למי ששואל מדוע צריך מעבד כזה – 2 חיבורי VPN, אפליקציה כמו Suricata או כל פתרון IPS/IDS, ניתוב 10G, והמעבד נצרך במלואו.
    • 2 כרטיסי רשת – 1 עם 4 פורטים של ג'יגה והשני 4 פורטים של 10 ג'יגה +SFP כך שאוכל לחסוך רכישת נתב +10G SFP (כן, יש יד שניה זולים כמו של Quanta, תצרוכת החשמל שלהם בשמיים).
  • מבחינת Storage – בהתאם לתקציב ורווח, אני אקנה מארז 2U ל-12 דיסקים 3.5", פלוס 2 דיסקים SSD + מקל M.2 PCIE שישמש ל-SLOG ו-ZFS שנותן את כל השרותים שירוץ על אובונטו LTS או פדורה.
  • הכל ישב בארון 20U עם 2 דלתות ואולי מאוורר פנימי, בהתאם לצורך.

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

מעבדי השנה

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

כשזה מגיע למעבדי X86-64, שנת 2017 בהחלט תירשם כשנת מפנה, הן עבור AMD והן עבור אינטל. 2 החברות הוציאו משפחות מעבדים שונות השנה והצרכן – רק הרוויח מכך (פחות או יותר, על כך בהמשך).

נתחיל עם AMD:

חברת AMD הוציאה השנה מעבדים המבוססים ארכיטקטורה חדשה שלהם, ה-ZEN. לפני ZEN, חברת AMD הוציאה מעבדים הכוללים מעבד גרפי (ובקיצור: APU) שביצועיהם לא ממש הרשימו אך המחירים שלהם היו מאוד נמוכים. עם ZEN המעבדים של AMD קיבלו תפנית רצינית ולראשונה AMD הציגה משפחת מעבדים בשנת 2017 החל מ-Ryzen 3 ועד Ryzen-7 שהצליחו להתחרות בכבוד במעבדים של אינטל בכל מה שקשור לעבודה בריבוי משימות. AMD לא הצליחה להגיע לביצועים יותר גבוהים ממעבדי אינטל בכל הקשור למשימות שמשתמשות בליבה אחת (Single Threading) אך AMD העמידה אתגר מעניין לצרכנים: שלם פחות, קבל יותר ליבות ממה שאינטל נותנת לך. התוצאה? הסתערות המונית של צרכנים שהחליטו לנצל את המחירים היותר נמוכים ע"מ לשדרג את המכונות שלהם.

גם בתחום השרתים AMD השתמשתה בפלטפורמת ה-ZEN שלהם וגם כאן, לראשונה לאחר 5 שנים, AMD הוציאה משפחת מעבדים לשרתים (ה-EPYC) עם מחירים מאוד מפתים וביצועים מעולים ברוב המטלות – בהשוואה למעבדי דור 4 ו-5 של אינטל. גם כאן, לראשונה, לאינטל יש תחרות וחברות גדולות מאוד כמו מיקרוסופט ו-Ali Baba החליטו לרכוש הרבה מאוד מעבדים לעננים הציבוריים שלהם מ-AMD.

ואז.. צצה ההפתעה של AMD, הפתעה ש-AMD בעצמה לא תכננה..

אם תשאלו כל יצרן מעבדים, לוקח בין שנתיים ל-3 שנים ליצור מעבד. ב-AMD לעומת זאת מספר מהנדסים החליטו לפתח להם פרויקט צד קטן. הם לקחו את תכנון מעבדי EPYC, לקחו את ה-Chipset מסידרה X370 שיועד ל-Ryzen והם החליטו "לשחק" קצת…

  • הם העיפו את כל מה שקשור לניהול המערכת מה-EPYC.
  • הם בנו את ה-X370 מחדש כך שיתמוך בתושבת העצומה של המעבד החדש
  • הם הפעילו תמיכה בעד 1 טרהבייט זכרון ECC
  • הם שינו את תמיכת הזכרון ל-QDR
  • הם ביטלו 2 חתיכות סיליקון מהתוכנית של ה-EPYC.

התוצאה? משפחת מעבדים חדשה, ה-Threadripper שנבנה ב-3 חודשים ובדגם בקצה הגבוה נותן לצרכן 16 ליבות, 32 נימים, 64 נתיבי PCIE, עד 1 טרהבייט זכרון ECC (כולל תמיכה בזכרון שאינו ECC), ובמחיר שרבים לא ציפו לו – 999$, הרבה פחות מהתחזיות שציפו למחיר של 1500-2000$. ההפתעה היותר גדולה (ש-AMD כלל לא דיברה עליה) התגלתה רק לפני מס' ימים: רבים הניחו ש-2 החתיכות סיליקון שאינם עובדים ב-Threadripper הם סתם סיליקון ללא טרנזיסטורים, אבל אז אחד המומחים לפריקה של מעבדים רכש מעבד Threadripper ופירק לו את הצורה והתוצאה שהתגלתה – שהסיליקונים הללו הם פשוט סיליקונים פגומים, כלומר אם AMD תרצה מחר להוציא מעבדים לדסקטופ עם 24 או 32 ליבות – הם פשוט יכולים להנמיך במעט את מהירות השעון, ולשנות מס' דברים קטנים במעבד – ויש להם דגמים חדשים.

AMD השנה תציג גם את מעבדי ה-Ravenridge, אלו המעבדים החדשים (סידרה 2500U) של AMD שמיועדים למחשבים ניידים. הם יהיו יותר חסכוניים בסוללה בכ-50% בהשוואה לדור קודם של AMD, הם יהיו מבוססי Ryzen עם 4 ליבות והם יכללו GPU מסידרת VEGA בתוך המעבד. התוצאות הראשונות שדלפו הראו שיש ל-AMD במה להתגאות. מחשבים ניידים מבוססי RavenRidge יצאו לקראת קניות חג המולד.

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

מכאן נעבור למתחרה הכחולה הגדולה: אינטל.

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

בתחילת השנה הגיעו מעבדי Kaby Lake לשוק, ולמען האמת – לא היו חידושים כה סוערים וגם במבחני הביצועים לא נרשמו התלהבויות. תוספת של 10% במקרה הטוב. אינטל נאלצה להשתמש בגימיקים כמו תמיכה ב-4K עם דפדפן Edge ב-Netflix, והוצאת מקלון SSD מסוג Optane שפועל רק עם Kaby Lake על מנת להאיץ דיסק קשיח (פתרון לא משהו, במיוחד שדיסק SSD בגודל 128 ג'יגהבייט יכול לבצע את אותה מטלה במחיר זהה רק עם יותר Cache).

בהמשך השנה אינטל הוציאו 2 משפחות מעבדים לדסקטופ: ה-Sky Lake X וה-Kaby Lake X. נתחיל ב-Kaby Lake X: עד היום, אף אחד לא מבין מדוע אינטל הוציאו חלק מהמעבדים הללו (כמו 7640X ו-7740X). הם נחותים מה-Kaby Lake בכך שיש להם פחות נתיבי PCIE ואין להם יחידת עיבוד גרפי פנימית, מה שמכריח את הצרכן לקנות GPU. מיטב הסוקרים לא מצאו תשובה מדוע אינטל הוציאו את אותם מעבדים. יחד עם זאת, אם הצרכן מוכן לחיות עם המגבלות, ישנם מעבדים בסידרה כמו 7800X עם 6 ליבות ו-7820X עם 8 ליבות.

במקביל אינטל, כפי שציינתי, הוציאו את ה-Sky Lake X, ועם מעבדים אלו (ולוח אם שמבוסס על Chipsets כמו X299 ו-Z270) אינטל לראשונה הוציאו סדרת מעבדים חדשה שמאפשרת לצרכן לרכוש מעבדים עם יותר מ-4 ליבות מבלי למכור כליה (ע.ע. 6950X ב-1700$). המעבדים הללו (שנקראים Core-i9) הגיעו עם מספר ליבות שנע בין 6 ליבות (7800X) וכלה ב-18 ליבות (7980XE) ואלו מעבדים שאינטל בהחלט יכולים להתגאות בהם בכך שהם נותנים ביצועים (כמעט) בכל סוג של מטלה. הבעיה היחידה שלהם – היא תמחור. במחיר של מעבד 10 ליבות כמו 7900X, אפשר לרכוש Threadripper שנותן הרבה יותר. בינתיים, בשלב זה אינטל לא מורידה מחירים.

חשבתם שגמרנו עם Kaby Lake? טעיתם. אינטל הציגה לאחרונה את ה-Kaby Lake Refresh. אלו מעבדים שמיועדים למחשבים ניידים בסידרה 8 של אינטל. החידוש העיקרי – אינטל החליטה לתת קצת יותר לצרכן והפעם יש 4 ליבות ו-8 נימים במקום 2 ליבות ו-4 נימים. מחשבים ניידים עם המעבדים הללו יוצאים בימים אלו.

כשזה מגיע לשרתים, אינטל החליטה להוציא את המעבדי Xeon-SP (שם קוד: Purley) ב-4 משפחות: ברונזה, כסף, זהב, ו-פלטיניום. כל אחד מהצבעים מתאים לצרכים שונים. אם הייתם רגילים לדוגמא ל-Xeon E5 עם 8 ליבות ו-2 מעבדים, הסתכלו על משפחת הברונזה. המעבדים הללו יקרים בהרבה מהמעבדים הקודמים מדור 4 ומבחינת ביצועים – הם נותנים ביצועים טובים אולם יש לא מעט מבחנים שבהם דווקא מעבדי EPYC מובילים.

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

אם הייתי נותן דירוג לחברות, הייתי נותן 9 ל-AMD ו-7.5 לאינטל. להלן הסיבות:

  • ל-AMD מגיע הציון 9 בשחרור המעבדים החדשים ובהוכחה לשוק שהם בהחלט רלוונטיים. הם הוכיחו את זה גם מבחינת תמחור שלראשונה מאפשר גם לאנשים עם תקציב קטן (בסביבות ה-500$) לרכוש מחשב עם ביצועים יפים ועם כמות נאה של ליבות. הנקודה שהורדתי היא בגלל ש-AMD לא ממש עבדו טוב מול יצרני הלוחות מה שהוביל לאנדרלמוסיה שלמה בכל הקשור לתמיכה בזכרונות וגם לא היתה מספיק עבודה מול יצרני תוכנות ומשחקים על מנת לבצע אופטימיזציה של התוכנות ומשחקים.
  • ל-אינטל אני נותן ציון 7.5: המעבדים שלהם מעולים, אך ישנם מספר בעיות:
    • התמחור שלהם במקרים רבים כלל אינו לוקח בחשבון את המתחרים הירוקים (AMD). מחיר של $2000 על מעבד 18 ליבות? מדוע?
    • ההגבלות שאינטל מטילה על המעבדים החדשים שוב מגחיכים את אינטל. תשלם $2000 על מעבד וכמות הזכרון המקסימלית היא 128 ג'יגהבייט, אין תמיכה ב-ECC, אין תמיכת RAS. כמו כן, מדוע להוציא מעבדים ללא יחידת GPU פנימית כשמדובר בקצה הנמוך של Kaby Lake X?
    • הקמפיין לשיווק ה-Xeon SP עם ההשוואות ל-AMD נראה כאילו הוא נכתב ע"י ילד בכיין ולא ע"י גוף מקצועי, במיוחד בכל הקשור להשוואות ולסלוגנים על המתחרים – וחבל.

לסיכום: שנת 2017 היא השנה שגם אינטל וגם AMD יצאו לקרב לשכנע אותך הצרכן שהגיע הזמן לשדרג את ה-PC שלך ו-2 החברות מציעות לך שורה של מעבדים שאחד מהם סביר להניח שיתאים לתקציבך. בשנה הבאה אנחנו נראה מאינטל את ה-Coffee Lake (המעבדים לקצה הנמוך לדסקטופ ששם יהיו יותר ליבות) וה-Ice Lake (שיחליפו את ה-Sky Lake X). מהצד של AMD אנחנו נראה יותר מעבדים למחשבים ניידים (RavenRidge) ומעבדים חדשים עם פלטפורמת Zen-2 המשופרת.

מי אמר שתחרות זה רע? 🙂

שנה טובה לכולם.