על גריטת שרתים ישנים ומה ניתן לעשות

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

כשאני מקבל פניות מחברות (לא מסוחרים שמוכרים יד שניה) שרוצות לגרוט/למכור את השרתים היותר ישנים שלהם, אני מקבל פניות שאני יכול להגדיר אותם ל-2 סוגים:

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

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

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

  • HP G9 לסוגיו
  • DELL X30 (ה-X מוחלף ב-400, 600, 700 וכו'. האות שבשם לא ממש משנה)

הדבר הראשון שצריך לבדוק הוא אלו מעבדים יש לכם (אפשר להסתכל ב-BIOS/UEFI). אם יש לכם Xeon V3 אז אתם יכולים לפנות ליצרן ולרכוש Kit שדרוג למעבדים, אפשר להכניס מעבדי Xeon V4 לשרת (יש צורך לעדכן את ה-BIOS/UEFI לפני כן, אם לא שדרגתם לאחרונה). הביצועים לא יהיו כמו שרת דור קדימה (G10, X50), אבל אתם תקבלו ביצועים שגבוהים בין 30-60% (ההפרש בביצועים הוא בגלל הזכרון, בשרתים כמו G10,X50 הזכרון הוא DDR4 במהירות יותר גבוהה ממה שיש לכם עם ה-DDR3).

הבעיה בעניין השדרוג קשורה לדרך שאתם רוצים לשדרג. אם אתם לדוגמא חושבים לפנות ליצרן, המחיר שיגבה מכם לא ממש זול. אם לדוגמא יש לכם שרתי X30 של DELL (שוב, ה-X מוחלף במספר 430,630,730 וכו'), תצטרכו לשלם בסביבות ה-800-6000 דולר (תלוי במעבד) כפי שאתם יכולים לראות כאן. אם לעומת זאת אתם קונים מסוחר יד שניה שמביא טכנאי שעושה לכם זאת, המחיר זול יותר. כך אתם מאריכים את חיי השרתים הללו בעוד כמה שנים.

מצד שני, חברות המוכרות שרתים חדשים מעוניינים כיום להיפטר מהמלאי עם מעבדי Xeon V4, אז יכול להיות מצב שרכישת שרת חדש תהיה זולה יותר (מה גם שהמדינה מכירה בשרתים החדשים כמלאי שיש לו פחת ל-3 שנים, כך שאתם מרוויחים בסופו של דבר יותר על רכישת שרת חדש).

שרתים ישנים יותר כמו:

  • HP G7 לסוגיו
  • IBM M3 לסוגיו
  • DELL X20 (שוב, תחליפו את ה-X ב-620,720,420 וכו', לא חשוב האות)

אלו שרתים שניתן ניתן לשדרג מעבדים אבל רק לאותה משפחה (כלומר Xeon V1, לרשימה הזו וגם אז, רק ה-E5-2XXX או E5-4XXX אם יש לכם שרתים עם 4 תושבות למעבדים), כך שאתם יכולים לדוגמא לעבור ממעבדים עם 4 ליבות, למעבדים עם 12 ליבות. השדרוג יוצא יותר זול מהדוגמאות לעיל, אבל הביצועים, למען האמת, לא יהיו כאלו גבוהים כי הם לא כוללים טכנולוגיות יותר מתקדמות שקיימות ב-Xeon V4 והזכרון מאוד איטי בהשוואה לשרתים הכוללים זכרון DDR4.

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

שרת NAS מהיר.

נדמיין לנו סיטואציה: יש לנו מחלקת פיתוח ויש לנו 2 שרתי ESXI שמיועדים לדברים שאינם פרודקשן. עם אותו שרת ישן אנחנו יכולים לספק שרותי NAS ל-2 שרתי ה-ESXI במהירות 10 ג'יגה.

כיצד? די פשוט:

בשרת הישן אנחנו נתקין בקר RAID די מודרני (LSI/AVAGO) ונחליף את כל הדיסקים לדיסקים SATA או NL-SAS (אנחנו לא רוצים להשקיע יותר מדי כסף, נכון? זה לא פרודקשן) ואנחנו נוסיף דיסק SSD (יחיד או זוג, תלוי בכם) שישמש כ-Cache מהיר. את ה-Back Plane של השרת אנחנו ננתק מבקר ה-RAID הפנימי ונחבר לבקר ה-RAID החדש.
כרטיס נוסף שנצטרך הוא כרטיס רשת QSFP (יש גם +SFP) של 10 ג'יגהביט עם 2 פורטים (אפשר להתקין 2 כרטיסים כאלו עם כניסה יחידה בכל אחד מהם, מכיוון שבשרת יש לנו רק PCIe 2.0) ובשרתים נתקין גם כרטיס רשת כזה.
מה עם סוויצ'? לא צריך. אנחנו מחברים כבל DAC בין ה-NAS לבין כל שרת ESXI.

מבחינת מערכת הפעלה, זה כבר תלוי בכם: אתם יכולים להתקין לכם Windows עם Storage Spaces, לינוקס רגיל ולהגדיר דברים ידנית, FreeNAS ויש עוד מספר פתרונות. אחרי ההתקנה של הפתרון אנחנו יכולים לבחור מה אנחנו רוצים לייצא החוצה (לא לשכוח להגדיר את ה-SSD כ-Cache במערכת שהקמנו) – בין אם זה NFS או iSCSI או CIFS ו"לשדך" את זה למערכת ה-ESXi (ה-CIFS הוא למקרים אם אתם משתמשים ב-Hyper-V לדוגמא).

והרי לנו שרת NAS שיכול לתת לנו פתרון שעוקף פתרונות NAS הרבה יותר טובים מפתרונות NAS זולים סגורים.

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

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

רכישת/מכירת שרתים יד שניה, פוסט המשך

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

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

מס' אנשים תלו (ותולים) תקוות שחברות אחרות ירכשו את השרתים שלהם, אך האמת הדי פשוטה היא שרוב החברות בארץ פשוט לא רוכשות שרתים יד שניה (למעט כמובן חברות סוחרים כמו All Trade ואחרים) מהסיבה הפשוטה: חידוש אחריות ל-3 שנים הכוללת הגעת טכנאי בזמן SLA  של 4 שעות – יהיה יקר בהרבה ממחיר רכישת השרת. כך לדוגמא, אם רכשתם שרת יד שניה ב-1500 שקל, עלות השרות שציינתי לעיל תעלה בסביבות 6000-10000 שקל, בשעה שרכישת שרת חדש עם הוספה של תמיכת SLA ל-4 שעות תעלה הרבה פחות בהשוואה לרכישת השרות לשרת יד שניה, כך שכל חברה שאפילו תחשוב על רכישת יד שניה ותרצה SLA כזה, תרד מרכישת שרת יד שניה.

מה לגבי ציודים שבשרתים? אז כך:

  • מקלות זכרון בגודל 1,2,4 ג'יגהבייט – אין להם בד"כ דרישה בשוק, כך שמי שרוצה למכור זכרונות ECC יכול לנסות את מזלו אולי ב-eBay. הדרישה בשוק בד"כ היא למקלות זכרון בגודל 8 ג'יגה ומעלה עם תיוג PC3 10300 או PC3 12800. גם עם מקלות אלו אין הרבה "בשר" מבחינת כסף להרוויח הואיל ורוב המוכרים (שוב, למעט חברות שזה מה שהן מציעות) פשוט לא נותנים שום אחריות לזכרונות, ולכן לדוגמא מקלות זכרון של 8 ג'יגה שווים בערך 20-40 שקל פר חתיכה (בסביבות ה-50-60 לזכרון PC3 10300 בהנחה שמדובר ב-DDR3 ECC).
  • דיסקים קשיחים – לא מומלץ לשום חברה שמעוניינת למכור את הציוד, למכור או לתת את הדיסקים הקשיחים עקב עניינים של אבטחת מידע. השרת מבחינתכם "מת"? העבירו את הדיסקים לגריטה. דיסקים SSD – לא מומלץ לרכוש יד שניה מכיוון שכמות הכתיבה עליהם מוגבלת ודיסקים SSD יד שניה בד"כ אינם כוללים בקרים מורכבים כך שסביר להניח שה-SSD ימות עוד לפני שתימלא לו שנה לאחר רכישה מיד שניה.
  • מעבדים – מאוד תלוי בדגם השרת. שרתים כמו Gen9 של HP (או R730 של Dell או M5 של לנובו) יכולים לקבל מעבדי Xeon E5 v4 כשדרוג במקום E5 v3 (כל מה שצריך זה לשדרג BIOS לגירסה האחרונה לפני החלפת מעבדים), ולכן גם כאן, מי שרוצה לרכוש שרת יד שניה, עדיף שירכוש את המעבד הכי "נמוך" שאפשר וישדרג ברכישת מעבדים ב-eBay. למוכרים – זו עיסקת חבילה ובקטע הזה לא תקבלו הרבה גם על הדגמים עם הכי הרבה ליבות.

מה לגבי מחירים? הפופולריים ביותר אלו הם שרתי 1U ו-2U מה-5 שנים האחרונות (אלו שלפני כן נמכרים במחירים של 3 ספרות). כך לדוגמא שרת Gen8 של HP עם 192 ג'יגהבייט זכרון ועם מעבדים בעלי 8 או 10 ליבות נמכרים במחירים של 1000-1500 שקל (ה-1500 זה אם יש דיסקים חדשים). Gen7 של HP נמכרים בסביבות ה-600-900 שקל עם 208 ג'יגהבייט זכרון לדוגמא, כך שכמו שאתם רואים – הרבה כסף אי אפשר לעשות מזה.

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

סוויצ'ים, UPS – גם כאן, המחירים נעים סביב ה-3 ספרות. UPS לדוגמא לא שווה הרבה אחרי 6-9 שנים של שימוש מכיוון שיש צורך להחליף סוללות פנימיות (והן יקרות!). סוויצ'ים לעומת זאת, חברות רבות נפטרות מהמתגים במהירות 1 ג'יגהביט לטובת מתגים במהירות 10 ג'יגה ומטה, כך שגם כאן המוכר לא יעשה מזה הרבה כסף והרוכשים הפרטיים יכולים אולי למצוא הזדמנויות טובות לשדרג LAB או להוסיף מתג לדברים/פרוייקטים צדדיים.

אז מדוע חברות כמו All Trade מוכרת במחירים כאלו גבוהים שרתים יד שניה? הסיבה פשוטה: הם חייבים להחזיק מלאי והם מוכרים שרות, כך שאם לדוגמא הם רכשו מלאי של 10 שרתי Gen8, הם יוכלו למכור רק 5-7 כאלו כי הם חייבים להחזיק שרתים אחרים כמלאי להחלפה בעת תקלות חרום כחלק מהשרות שהם מוכרים.

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

הקשחת שרתים במבט יותר עמוק

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

הדבר הראשון שצריך להבין לגבי ההקשחות זה שתלויות חיצוניות לא תמיד עוזרות או לא עוזרות הרבה. ה-Firewall שיש בחברה לדוגמא כמעט ולא רלוונטי לנושא. כן, הוא יכול לזהות שכתובת IP מסויימת מנסה להיכנס, דרך פורט מסוים, אבל ה-Firewall לא יודע ולא יכול לדעת אם הפורץ הצליח להיכנס, ואם הצליח, באיזה קבצים הוא נגע. בלינוקס יש דבר שנקרא access time לדוגמא שיכול לאמר איזה משתמש נגע באיזה קובץ ומתי, אבל אם הפורץ כבר יצא והמשתמש הלגטימי (עם אותו username) נכנס ועבר על הקבצים, אז הרבה פעולות פורנזיות לא יעזרו הרבה לדעת מי נכנס ובמה הוא נגע (מה עוד שבימינו פורצים רציניים משתמשים ב-VPN ושלל טריקים נוספים להחביא את זהותם כך שמאוד קשה לדעת מי בדיוק נכנס). ישנם כלים אחרים שעובדים עם חתימות שונות כדי לזהות כניסות דרך שיטות ידועות וזה עוזר, אבל שוב – לא תמיד זה יעזור ותיכף ארחיב על כך.

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

אחת העבודות היותר מורכבות לפני שמגיעים למימוש CIS Benchmark היא עניין החבילות תוכנה שמותקנות על השרת. התקנת גירסת CentOS 7 לדוגמא בתצורה מינימלית מתקינה בסביבות 300+ חבילות. זה שאני יכול לבטל שרותים זה נחמד, אבל פורץ רציני יכול להפעיל את השרותים מחדש ברגע שהוא נכנס, ולכן העבודה הראשונית היא "כיסוח" של החבילות המותקנות שאין צורך בהן ובמקרים מסויימים קימפול מחדש של חבילות מסויימות ויצירת חבילות חדשות יותר מצומצמות על מנת להקטין כמה שיותר את וקטור התקיפה, ביטול גישת אינטרנט להתקנת חבילות ועוד ועוד. רק לאחר מכן אפשר לעבור לשלב מימוש ה-CIS Benchmark.

עוד נקודה שרבים שוכחים היא פורטים 80 ו/או 443. בד"כ הם פתוחים לעולם, וכאן גם מתרכזת בעיה רצינית: קיימים לא מעט סקריפטים שיתנו מעין shell גם אם ל-user שמריץ את שרת ה-web אין בכלל גישת shell מכיוון שלמודולים שרצים תחת אותו שרת web יש אפשרות לבצע דברים שונים הקשורים ל-shell. דוגמא נפוצה עם PHP היא p0wny@shell ומשם אפשר לבצע נזקים רבים, ולכן צריך לקחת בחשבון מה רץ בשרת ה-web ומה רץ "מאחורה", והכי חשוב – בדיקת ההזנה של המידע המגיע מהאינטרנט אל שרת האפליקציות לדוגמא (זהו החלק שקשור לצוות הפיתוח או מי שמריץ pen-testing).

עוד נקודה חשובה היא היכולת לזהות פורנזית אם מישהו פרץ – במה הוא נוגע. נכון, סביר להניח שחברה רצינית תכניס פתרון IPS/IDS כלשהו, אבל פתרון כזה אינו מסייע אם הפורץ הצליח להיכנס ולפתרון ה-IDS/IPS אין מושג ירוק מה הפורץ עושה בשרת עצמו. אפשר כמובן לגלות עם ה-IPS/IDS אם הוא מעלה/מוריד קבצים לשרת שהוא פרץ, אבל מה אם הפורץ מחליט למחוק קבצים? לשם כך יש צורך בפתרון שהוא בעצם Host IDS (כלומר: HIDS) שיודע לזהות את הדברים ולרשום במה הוא נגע, איזה process הוא הפעיל ועוד ועוד. שילוב פתרון כזה אפשרי אבל מצד שני יכול גם להאיט את ביצועי השרת ולכן אם הלקוח רוצה בפתרון כזה, יש להיערך לכך מבחינת שרתים שנותנים שרות, היכן יאוחסן המידע מהניטור ועוד ועוד.

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

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

סטארטאפים ואבטחת מידע בענן

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

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

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

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

לא מעט אנשים שמתחילים סטארטאפים חושבים להם שאם יקימו את התשתית שלהם בענן, ספק הענן יגן עליהם בצורות כלשהן וזו כמובן טעות ענקית. לא חשוב מי ספק הענן, כמות ההגנה המסופקת ללקוח היא ברמה אפסית (אינני מדבר על הגנות בתוספת תשלום כמו נגד DDoS). אתה יכול להפעיל Multi Factor Authentication כדי למנוע כניסת אנשים לא מורשים לחשבון בענן, אבל זה לא אומר כלום לגבי ה-Instances שאתה משתמש. מהרגע שיש לך Instance חי ויש לו כתובת IP ציבורית, עשרות אלפי סקריפטים ינסו לחדור לשרת שלך בכל דרך. כל שרות שתפעיל באותו Instance ושאינו סגור לכתובת הציבורית (כמו שרבים נוטים להשאיר פורטים פתוחים לשרותי SQL/NOSQL, GUI, או SSH עם סיסמא (ללא מפתחות) – הסקריפטים ינסו להיכנס, ואם הם יצליחו, חלקם יעבירו את המידע חזרה מבלי לנגוע במידע בשרת וחלק אחר של סקריפטים פשוט "יגייסו" את המכונה להריץ BOT או תולעים או 1001 דברים מזיקים אחרים ויש כמובן גם סקריפטים שישמחו פשוט למחוק את המכונה.

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

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

להלן מספר נקודות בסיסיות שיכולות לסייע לסטארטאפ בתחילת דרכו:

  • אם מדובר במספר עובדים בסטארטאפ אחד שיושבים במשרד כלשהו, דאגו ל-VPN וחברו את ה-VPN כ-Site To Site לחשבון הענן שלכם. מי שרוצה להתחבר מהבית, יתכבד הבחור ויתחבר ל-VPN שלכם ומשם לתשתית.
  • עבודה עם סיסמאות לכניסה לשרתי לינוקס היא no no. השתמשו במפתחות בלבד והחליפו את קבצי ה-PEM שניתנו לכם ע"י שרות הענן שלכם במפתחות שלכם בחלוקה של פרטי/ציבורי (עדיף ליצור עבור כל מפתח מפתח, להכניס את החלק הציבורי לשרת ואת החלק הפרטי למכונה של המפתח כך שאפשר לדעת מי נכנס עם איזה מפתח), כך שמי שצריך להיכנס למכונה יהיה לו את החלק הפרטי של המפתח (החלק הציבורי נמצא בשרת). קבצי ה-PEM למיניהם קל "לדוג" אותם מכל מיני פורומים, אימיילים ושאר מקומות.
  • מקימים DB? ראשית יש להקשיח את ה-DB לפני שמכניסים אליו נתונים. אם זה mysql לדוגמא, יש להריץ קודם כל mysql_secure_install, ואם זה mongoDB יש למחוק משתמש דוגמא,  ובכל המקרים יש לוודא כניסה רק דרך IP מסוים פנימי.
  • משתמשים בשרותים שונים של ספק הענן? ודאו שאתם משתמשים בכתובות IP פנימיות בלבד. זה לא מצליח? יש לכם בעיה עם ה-VPC (במקרה של אמזון), כדאי לבדוק הגדרות.
  • שימוש ב-DB – לפני שכותבים נתונים ל-DB, כדאי "להמליח" דברים כמו סיסמאות ומידע חשוב (להלן לינק לוידאו המסביר איך לעשות זאת ב-MySQL לדוגמא), כך שמי שיצליח לגנוב את ה-DB, לא יוכל לעשות הרבה עם זה. אפשר כמובן לשפר את זה ולהשתמש בכל מיני שרותי Vault לשמור את המפתח להמלחה אך זה כבר עניין אחר.
  • גיבויים ל-S3 או כל מקום ששומר Object Storage – לאחר יצירת הגיבוי, יש להצפין אותו ורק אז להעלות אותו (כמובן שכדאי לוודא שהרשאות ה-S3 שלכם מוגדרות בצמצום).
  • לא לקחת כתובות IP ציבוריות עבור כל Instance (טריק שלצערי ראיתי פעמים רבות שנעשה בחברות שונות). אם אין אפשרות להקים ולהשתמש ב-VPN ויש צורך להתחבר ממקומות שונים עם IP שונה, מומלץ להשתמש בטריק שנקרא Linux Bastion, זו מכונת לינוקס קטנה שבה נשתמש כ"מקפצה" (להלן לינק למאמר שמסביר זאת) ולמכונה זו יש להגדיר Security Groups עם הכתובות שיכנסו אליה (חשוב: לא להוסיף כל פעם כתובות אלא לעדכן ב-SG).
  • תעודות SSL – אם המכונה פונה החוצה ואין לכם עדיין תעודות SSL מסודרות, אפשר להשתמש ב-Let's Encrypt כדי ליצור תעודות SSL תקינות זמניות (שניתנות להארכה בפקודה פשוטה) במקום להשתמש ב-Self Signed Certificates. באותה הזדמנות כדאי לבטל Ciphers ישנים ולאפשר אך ורק ל-TLS מהגירסא האחרונה להיכנס.

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

חושבים לשדרג ציוד? תתכוננו לעליית מחירים

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

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

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

ונחזור לטכנולוגיה.

כיום כל שרת, סוויצ', סטורג' מורכב (וחלקית מיוצר) בסין. בכל ציוד כזה יש עשרות, מאות ולפעמים אלפי רכיבים שנוצרים במדינות אחרות שאינן סין, אך אותם שבבים, לוחות, קבלים וכו' וכו' מגיעים אל סין אל אחת מהיצרניות המחשבים/שרתים/חומרה הגדולות (כמו Quanta, Pegasus, FoxConn, Lotes ואחרים) ושם הדברים מורכבים ברמות שונות (רוב ה-PCB באותם ציודים לדוגמא מודפס בסין ועליו מורכבים השבבים וכו'), נארז ונשלח לארה"ב או למדינות אחרות בהתאם לבקשת הלקוח.

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

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

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

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

חג שמח 🙂

ההבדל בין קוד פתוח למוצר מסחרי מבוסס קוד פתוח

לפני מספר חודשים פרסמתי בכמה מקומות סקירה מקוצרת על פרויקט של Red Hat שנקרא oVirt. הפרויקט הזה הוא בעצם ה"תשובה" של Red Hat לכל אלו שמחפשים מוצר וירטואליזציה כ-Hyper Converge. המערכת כוללת בפנים פתרון סטורג', רשת וכמובן Compute ויש בה עוד חלקים שלמוצרים מתחרים יש תשובות חלקיות.

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

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

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

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

הנקודה השניה החשובה היא כמאמר הפתגם "יותר משהעגל רוצה לינוק, הפרה רוצה להניק". כל יצרני השרתים מוכרים את המוצרים המסחריים מבוססי הקוד הפתוח כולל תמיכה מלאה 24/7, כלומר אם מחר תרצה לרכוש שרתים מ-HPE או DELL או LENOVO ותרצה לרכוש פתרון אחסון SDS, פתרון קונטיינרים כמו OpenShift המסחרי, פתרון סטורג' Scale Out כמו Ceph או Gluster או מוצר ענק כמו SAP HANA – הם ימכרו ויתמכו בך כולל SLA מלא ואז אינך תלוי באם חץ בן חמו זמין או אם יש מישהו אחר שיתן לך תמיכה. אתה מקבל תמיכה מלאה בדיוק כמו שאתה מקבל תמיכה לברזלים שלך. ליצרן יש תמיכת "גב אל גב" עם יצרן התוכנה. דוגמא פשוטה לחובבי מיקרוסופט ו-Azure – אם יש לך הפצת לינוקס מותקנת על VM ב-Azure ויש לך בעיה, אתה פונה לתמיכת Azure והם מנסים לפתור. לא מצליחים? יש להם קו ישיר ליצרן ההפצה שיעזור להם ולך לפתור את הבעיה.

לסיכום: כמו שאתה קונה מתגי תקשורת של Cisco, כמו שאתה קונה מערכת מורכבת כמו JIRA, כך גם עם מוצרים מסחריים מבוססי קוד פתוח. החברה שמוכרת לך את זה, בין אם יצרן התוכנה או יצרן הברזלים – אתה מקבל שרות מלא הכולל התקנה, הטמעה, תמיכה וכו' לפי SLA שנקבע בין הצדדים. זה ש-HP מעדיפים למכור סטורג' 3PAR שלהם או DELL מוכרים סטורג' כמו UNITY, לא אומר שזה הדבר היחיד שהם מוכרים. יש להם עוד מוצרים, אתה פשוט צריך לבקש את זה במסגרת ההזמנה ואין שום הבדל בתמיכה/התקנה/הטמעה בין אם קנית לדוגמא סטורג' קנייני או פתרון סטורג' SDS, בין אם קנית פתרון מבוסס קוד פתוח או פתרון סגור לחלוטין. יש כמובן את הפרויקטים בקוד פתוח שהם אינם מוצר מסחרי ואתה חוסך את הקניה איתם, אבל שם המסלול הוא שונה והוא יותר קשור בחברות ועצמאים פה בארץ שיכולים לתת לך שרות על כך, ולכן כדאי להבדיל בין הדברים.

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

עיריות, משרדי ממשלה, מועצות ורשויות מקומיות ואזוריות וכמובן חברות – כולן מוציאות אחת לזמן מה מכרזים שונים לשרותים שונים. אני אתייחס בפוסט זה למכרזים שמשווקים גדולים ניגשים אליהם – למכירת שרתים וציוד ל-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 ממקום אחר.

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

ישנן 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 שקל פר שרת לסוחר מבלי שלמוכר היה מושג כלשהו על מחירים.

הבאג הקריטי במעבדי אינטל – עדכונים

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

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

בפעם שעברה דיברתי על הנחתה בביצועים בין 5 ל-30%, וכאן יש לעדכן: זה תלוי במעבדים בשרתים. מעבדים עד 5 שנים אחורה. מעבדים כמו Xeon E3/E5/E7 V3 ומעלה יש בתוכם פונקציונאליות שעוזרת למגר את הנחתת הביצועים כך שלא תהיה הנחתה משמעותית בביצועים, אולי אחוזים בודדים.

במעבדים היותר ישנים (שרתים כמו DELL דור 11 ומטה, HPE דור 7 ומטה, לנובו/IBM דור M3 ומטה) עדיין יורגשו הנחתות בביצועים במקרים מסויימים. המקרה הכי נפוץ שמצאתי הוא שכשמריצים שרתים כאלו כ-Hypervisor (כמו Hyper-V או ESXi) ומריצים את המכונות דרך Datastore שעובד על דיסקים מקומיים. מכיוון שלשרתים אלו אין אפשרות להיות משודרגים למעבדים מדור 3 ו-4 (טוב, למעט SuperMicro ששם אתה יכול להחליף לוח אם, בנוסף למעבדים, ובנוסף גם זכרון..) – האפשרויות שישנם הינן:

  • להקים מכונת VM שמחוברת לבקר דיסקים ולהריץ עליה מערכת שרות קבצים NFS/iSCSI.
  • להקים פתרון כמו שתיארתי לעיל אבל בתצורה פיזית.
  • לקנות פתרון סטורג' כלשהו.

(אם אתם בין כה מתכננים לגרוט או למכור או להיפטר משרתים כאלו, צרו עימי קשר)

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

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

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

לסיכום: מכיוון שרוב החברות הגדולות כבר לא מחזיקות בשרתים ישנים – אז הבעיה אינה כל כך חמורה בכל הקשור ל-Meltdown. בנוגע ל-Spectre בגירסה הראשונה, העדכון לא מוריד ביצועים (והתיקונים לגירסה השניה יעשו הן ע"י יצרניות מערכות הפעלה והן ע"י יצרניות אפליקציות). עדיין נשארו בעיות בכל הקשור ל-Spectre על טלפונים מבוססי אנדרואיד ועדכונים יצאו ע"י יצרני הטלפונים (ואם יש לכם מכשירים ישנים, אולי כדאי להחליף להם ROM למשהו כמו LineageOS). מבחינת ספקי ענן – כולם משתמשים בציוד די חדיש וכולם מעדכנים את כל השרתים שלהם, יכול להיות שתקבלו הודעה מנומסת מהן לעשות Reboot ל-Instances שלכם. מבחינת מחשבי Desktop, לאפטופים – ההנחתה בביצועים כמעט ולא קיימת. מה שהכי חשוב – יש לעדכן את כל השרתים ולבצע לאחר מכן Reboot לאותם שרתים.