הפצות לינוקס לחברות (2016)

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

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

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

בעולם ה-Windows אף אחד לא מתקין לעצמו Windows Server 2012 R2 כתחנת עבודה. בלינוקס לעומת זאת, באופן עקרוני כל הפצת לינוקס יכולה לשמש הן לת"ע והן לשרת. אם תיקחו לדוגמא הפצה כמו CentOS 7.2 ותבחרו את הרכיבים הנכונים, לא תהיה שום בעיה להריץ אותה על כל שרת כ-שרת או על לאפטופ כמכונת דסקטופ רגילה. יחד עם זאת – ישנם הפצות שמיועדות יותר ל-Workstation, ויש ל-Server.

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

מבחינת ת"ע, הבחירות שקיימות היום לשוק ה-Corporate הן ההפצות הבאות:

  • רד-האט 7.2 ותואמיו (CentOS, Oracle Linux)
  • אובונטו
  • SuSE Linux Enterprise Desktop (או בקצרה: SLED)

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

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

מבחינת הבדלים בין הפצות – רד-האט ותואמיו, ו-SLED עובדים על עקרון פשוט: מה שיש בהפצה מבחינת אפליקציות, שרותים, ספריות וכו' – זה מה שיש, זה מה שמקבל באופן רשמי תמיכה. מחר תצא גירסת Ruby חדשה, PHP חדשה או ספריות חדשות? הן לא חלק מהחבילה והן לא נתמכות במסגרת חוזה התמיכה של החברה מול יצרן ההפצה. הדבר שבראש וראשונה מודגש בהפצות לינוקס האלו היא שמירת תאימות ויציבות, גם במחיר ויתור על פונקציונאליות חדשה. כשאתה משתמש בהפצה כזו, אתה יכול להיות שקט מבחינת תמיכה. ברד-האט לדוגמא, כל גירסת Major של הפצה נתמכת 10 שנים (וכך אגב, גם ההפצות התואמות לרד-האט). בתוך תקופה זו היצרן משחרר עדכונים תקופתיים, אך עדכונים אלו שומרים על 100% תאימות בינארית, כלומר אין בעיה לדוגמא לעבור מרד-האט 6.1 ל-6.8 במכה אחת, התאימות תישאר במלואה.

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

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

  • אם ההתקנה תבוצע עבור הרצה של אפליקציות מסחריות שמגיעות עם קבצים בינאריים בלבד כקוד סגור (SolidWorks, סימולציות רפואיות, סימולציות מדעיות, שימוש בכרטיסי Tesla או כרטיסי PCie קנייניים לשימושים ספצייפיים, לא כרטיסי GPU רגילים וכו') – מומלץ לבחור הפצה כמו Red Hat או SLED או אורקל לינוקס. אלו הפצות שנמכרות בתשלום. אם אין כסף לרכישת הפצה, אפשר להשתמש ב-CentOS, רק כדאי לקחת בחשבון שיצרני התוכנה הנ"ל לא ששים לתת תמיכה ל-CentOS (פוליטיקה). אובונטו במקרים רבים עם אפליקציות כאלו מקבל "כתף קרה" – תשאלו את IBM לדוגמא.
  • אם ההתקנה תבוצע עבור פיתוח אפליקציות בקוד פתוח תוך שימוש בקוד פתוח אחר כאשר אין הסתמכות על אפליקציות בינאריות סגורות – כאן אפשר לבחור את SLED, CentOS או אובונטו LTS. אלו הפצות שקל מאוד להרחיב אותן בעזרת מאגרים (Repositories) חיצוניים נוספים על מנת לקבל גרסאות חדשות של אפליקציות ודברים שלא מגיעים עם ה-ISO הרשמי.
  • אם ההתקנה מיועדת לאנשי לינוקס ותיקים שלא מצריכים תמיכה – אני ממליץ פשוט לתת להם לבחור ISO ושהם יתקינו בעצמם מה שהם רוצים. אנשי לינוקס מקצועיים מסתדרים בד"כ בעצמם עם הבעיות בתחנה שלהם 🙂

כשזה מגיע לשרתים – ההפצות המומלצות שונות במעט מת"ע:

  • Red Hat Server Edition
  • SuSe Linux Enterprise Server (בקצרה: SLES)
  • Ubuntu LTS
  • CentOS 7.2 Server Edition (גירסת DVD ISO)
  • Oracle Linux

מכיוון ששרתים נחשבים הרבה יותר "חשובים" מדסקטופ/ת"ע, חשוב לבחור בהפצה הנכונה וגם במי שנותן לחברה תמיכה. אפשר בארץ לדוגמא לרכוש רשיון ל-Red Hat ואת התמיכה המוצעת, אך גם חברת SuSE ישראל וגם אורקל ישראל מוכרים שרותי תמיכה לרד-האט (ל-SuSE יש גם כלי מסחרי לניהול עדכונים שנקרא SuSE Manager הן ל-SLES, SLED, CentOS, Red Hat שנמכר ונתמך פה בארץ). הפצות כמו Red Hat ו-SLES מגיעות עם תמיכה מסחרית כך שההנהלה יכולה להיות שקטה שאם תקרה תקלה, יהיה מי שיענה, גם באמצע הלילה (ובמקרה של SuSE – בעברית). אני מודע לכך שחברות מעדיפות לוותר על רכישת רשיון (במיוחד כשיש צוות IT עם ידע בלינוקס), אבל לפעמים יש צורך ברכישת רשיונות כשצריך להריץ אפליקציות בינאריות והיצרן מתנה תמיכה רק אם בשרת מותקנת הפצת לינוקס מסחרית עם רשיון תקף.

לכן, חשוב לבחור איזו הפצת לינוקס להתקין בשרתים וחשוב לבחור הפצה שיצרני חומרה תומכים בה באופן רשמי. הפצות אלו הן Red Hat (הגרסאות התואמות יכולות להריץ דרייברים שנכתבו עבור רד-האט במידת הצורך), SLES. אובונטו, שוב, מקבל הרבה פחות תמיכה ו-Certficiation מיצרנים, גם בגירסת LTS, במיוחד כשמדובר בציודים כמו NVMe שהפצת גירסת ה-Server של אובונטו לא תומכת בצורה טובה, לדוגמא.

כשמדובר במכונות וירטואליות, כל ההפצות נתמכות, אם כי, שוב, רד-האט ותואמיו לוקחים את זה צעד קדימה וכל הכלים כדי להתממשק עם ה-Host כבר נמצאים ב-ISO, בין אם מדובר ב-ESXi או Hyper-V ווירטואליזציות אחרות. הכל תלוי ב-Policy של החברה.

כשמגיעים לבחירת הפצת לינוקס, לא חשוב איזו הפצה החלטתם לרכוש, חשוב לדעת ממי לרכוש. בארץ יש לא מעט License Pushers שסגרו עסקאות עם הפצות לינוקס שונות והם מוכרים רשיונות. כשזה מגיע לתמיכה לעומת זאת .. או שתקבל תמיכה מהודים, או שתקבל איש לינוקס הכי זול שהם מצאו כדי שיגיע אליך ולא בטוח שהוא יוכל לתמוך בך. לכן חשוב לבחור חברה שנותנת לך תמיכה בעברית עם אנשים שיש להם ידע עשיר בלינוקס בהתאם ל-SLA שאתה בוחר ושיש לה נציגות רשמית, לא נציגות של מפיץ. ל- Red Hat, SuSE ואורקל יש כאלו בארץ. ראיתי לצערי מספיק מקרים שחברות התפתו להתקין שרתי לינוקס מחברה שמוכרת שרותי Windows ואז יום אחד אותו ספק הפסיק לתמוך בלינוקס שהם התקינו ללקוח כי .. איש הלינוקס של אותה חברה המשיך הלאה בחייו, לכן כשזה מגיע לרשיונות וחוזי תמיכה – קחו מחברות שלינוקס זו הפעילות העיקרית שלהן.

והערה לסיום: ראיתי לא מעט חברות שעוברות ללינוקס או עוברות לגירסת לינוקס אחרת והדבר נעשה ע"י חברה חיצונית. בלא מעט מקרים לא נלקח יעוץ עצמאי ובלתי תלותי לגבי המעבר והח"מ ראה מספיק מקרים של פרויקטים שנעשו עם המון דברים לא נכונים ו/או מיותרים ו/או חסרים, החל מדברים פשוטים כמו Volume Management ועד תצורת אשכולות שכלל אינה לוקחת בחשבון את מה שרץ מתחתיה כדי לקבל יתרונות נוספים. המלצתי האישית – קחו יעוץ עצמאי ובלתי תלותי (לא מישהו מטעם מי שיבנה את הפרויקט) שיתן "מבט שני" בפרויקט ומה הולכים לעשות. זה יעלה כמה מאות דולרים/שקלים (תלוי ביועץ) – וזה שווה את זה. היעוץ הזה יכול במקרים רבים לחסוך הרבה יותר מהעלות של היעוץ. מבלי לאמר שמות, אני יכול לציין לדוגמא חברה ממשלתית שהשקיעו מאות אלפי דולרים במערכת שרתים ואפליקציות והם צריכים בקרוב לשלם יותר מ-$50,000 תחזוקה שנתית – ולפי בדיקה שערכתי, כל המערכת הזו לא עברה בחיים ניצול של יותר מ-2.5 אחוזים, שרתים שלא היה להם יותר מ-1% שימוש ומערכי דיסקים שאינם מפורמטים אפילו ואיש אינו חושב להרחיב את המערכת. למה? כי מישהו שמע הצעה אחת של חברה והחליט לשפוך כסף.

Comments

comments

כתיבת תגובה

האימייל לא יוצג באתר. שדות החובה מסומנים *