« לעמוד הראשי

מהדורות GitLab השונות – עושים סדר בדברים

GitLab vision החזון של גיטלאב

עדכון אחרון: 16/05/2017

כיום קיימות 5 מהדורות שונות של GitLab, וכולן תומכות בחזון "From Idea to Production" (באיור לעיל) שהוצג ע"י חברת GitLab לפני כמה חודשים, דהיינו שהמערכת יכולה לשמש כ- framework יחיד עבור פיתוח תוכנה, משלב הרעיון עד שלב ה- production.

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

כאמור – ישנן 5 אפשרויות, הכוללות גירסאות בתשלום, חינם, בענן או בהתקנה מקומית באתר הלקוח (on-premise).

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

  1. הגירסא החינמית מציעה מימוש בסיסי לרעיון "From Idea to Production" (כפי שיוסבר להלן).
  2. הגירסת הבסיסית בתשלום (Enterprise Starter) מציעה את המהדורה החינמית (מס' 1)  יחד עם יכולות נוספות
  3. גירסת ה- premium בתשלום (Enterprise Premium)  מציעה את כל מה שמגיע בגירסא הבסיסית בתשלום (מס' 2) יחד עם יכולות נוספות

וכעת אפרט עוד יותר.

גירסאות חינמיות

נתחיל עם הגירסאות החינמיות. יש שתיים כאלה.

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

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

2 אפשרויות לגירסא חינמית:

1. Community Edition להתקנה עצמית (on-premise)

אידאלי לאנשים פרטיים או לצוותים קטנים

היתרונות:

  • מערכת אחת שנותנת סביבה מלאה לפיתוח תוכנה, מהרעיון עד ה- production
  • אפשרות לנהל repositories פרטיים (להבדיל מ- GitHub שמציע פרטיים רק תמורת תשלום)
  • ללא הגבלת כמות משתמשים (להבדיל מ- BitBucket של Atlassian, שמוגבל ל 5 משתמשים בגירסא החינמית)

החסרונות:

  • ללא תמיכת יצרן וללא אפשרות לפתוח tickets מול היצרן בנוגע לשאלות ובעיות
  • יש צורך בידע להתקין את השרת (דרוש ידע ברמת admin ב- Linux. מומלץ גם ידע ב- Docker וב- containers)
  • מצריך הקצאת שרת (פיזי או וירטואלי)
  • ללא הפיצ'רים שכלולים בגירסאות בתשלום (ומפורטים כאן בהמשך המאמר)


2. גירסא חינמית בענן ציבורי (gitlab.com)

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

היתרונות:

  • אותם יתרונות בגירסא החינמית לעיל

החסרונות:

  • ללא תמיכת יצרן
  • אין מחויבות יצרן לזמינות (אין SLA רשמי)
  • הענן ציבורי ומאובטח במידת-מה, אך אין מחויבות יצרן לאבטחת מידע
  • אין מחויבות יצרן לביצועים
  • יש מגבלת space לפרוייקט (10GB)
  • חשוף למתקפות DDOS ומתקפות DNS (האחרונה המפורסמת היתה ב 21/10/16 ופגעה גם בזה וגם ב- GitHub.com ואתרים מפורסמים נוספים – אפשר לראות כאן)
  • שדרוגים נעשים אוטומטית ע"י היצרן ללא תיאום עם המשתמשים (לעתים ה- downtime הוא דווקא בימי ראשון בשעות הבוקר שעון ישראל הואיל וזה לא נחשב יום עבודה בחו"ל)

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

[chimpy_form forms="1"]

גרסאות בתשלום

הגרסאות בתשלום ניתנות להתקנה בשרתי החברה (מאחורי firewall) או על ענן פרטי מאובטח.

כאן יש 2 אפשרויות רישוי:

1. Enterprise Edition Starter

במחיר של 39$ לשנה למשתמש (או 3.25$ לחודש), הכוללת תמיכת יצרן עם זמן תגובה של עד יום עסקים, את היכולות בגירסת ה- Community החינמית לעיל, ובנוסף כוללת יכולות, וביניהן:

  • תמיכה מלאה בניהול יוזרים וקבוצות מול LDAP, Active Directory, Kerberos ו- Atlassian Crowd
  • Analytics מלא (Contribution Analytics)
  • Audit log
  • תמיכה בכמה issue boards שונים לאותו פרויקט (שימושי מאוד כדי לצפות ב- issues מכמה פרספקטיבות – למשל כאשר יש כמה צוותים שעובדים על אותו פרוייקט, ולכל אחד דרוש board נפרד)
  • חיפוש גלובלי בקוד (מה שמאפשר לזהות במהירות מופעים של קטעי קוד ספציפיים. זהו מעין 'גוגל' לקוד)
  • אינטגרציה עם Elastic Search לצורך חיפוש מהיר מאוד בקוד
  • אינטגרציה עם Jenkins
  • הרשאות ל- branches ע"פ usernames (למניעת push  ו- merge לא רצויים)
  • תמיכה בניהול קבצים בינאריים גדולים באמצעות git annex
  • יבוא פרוייקטים מ- gitlab.com
  • סוג משתמש חדש מסוג Auditor עם הרשאות read-only (חדש החל מגירסא 8.17)
  • חדש בגירסא 9.0: תמיכה ב- database load balancing (לטובת שיפור ביצועים ועוד)
  • חדש בגירסא 9.0:  ניהול milestones כחלק מה- Issue Board
  • חדש בגירסא 9.0: אפשרות לייצא issues
  • חדש בגירסא 9.1: תרשים burndown המציג את צפי סיום המשימות ביחס לתכנון
  • חדש בגירסא 9.1: כפתור חדש של  "focus mode" ב- Issue Board, המאפשר יותר שטח תצוגה ללוח המשימות

זוהי רשימה חלקית. רשימה מלאה יש באתר שלנו כאן.

 

2. Enterprise Edition Premium

במחיר של 199$ לשנה למשתמש, הכולל תמיכת יצרן עם זמן תגובה של עד 4 שעות + תמיכת יצרן 24/7 , יחד עם כל היכולות של גירסת Enterprise Starter (לעיל), ובנוסף יכולות נוספות, וביניהן:

  • תמיכה ב- GitLab Geo. זהו פתרון האצת ביצועים כאשר עובדים ב -2 אתרים (או יותר), אבל שרת ה-GitLab נמצא במקום יחיד. בעזרת Geo ניתן לעשות git clone מ- repository שהוא העתק מקומי, ולקבל קצב הורדה של תקשורת מקומית (רשת LAN). בקרוב יצא מאמר מפורט שלנו בנושא (לקבלת עדכון כשיצא יש להירשם כאן).
  • מנגנון נעילת קבצים (file locking) – נעילה אקסקלוסיבית של קבצים ע"מ למנוע בעיות מיזוג. רלבנטי במיוחד לקבצים בינאריים.
  • תמיכה ב- High Availability בעזרת load balancing. דהיינו להכפיל את המכונות ולתמוך בכמות משתמשים גדולה או בכמה אתרים. אפשר לבנות פתרון מסוג active\active יחד עם load-balancer. תמיכה של היצרן תינתן רק למי שקונה רשיון מסוג זה.
  • תמיכה בשדרוגים יחד איתם (בשיתוף מסך בלבד)
  • חדש בגירסא 9.0:  Deploy Boards המאפשרים לראות את פריסת התוצרים (deployment) – שימושי מאוד למשתמשי CI/CD
  • חדש בגירסא 9.0: תמיכה משופרת יותר ב- Disaster Recovery (דרך רכיב Geo שמוזכר לעיל)
  • חדש בגירסא 9.1: כלי Service Desk המאפשר ללקוחות /משתמשים לפתוח תקלות (או tickets) ישירות דרך האימייל, ולקשר אותן ל- issues במערכת
  • חדש בגירסא 9.1: Canary Deployments, המאפשר להפיץ תוצרים בצורה מדורגת (שימושי למשתמשי CI/CD שצריכים לפרוס תוצרים על הרבה מכונות, ורוצים לעשות זאת בצורה מדורגת)

 

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

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

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

 

אנחנו ב- ALMtoolbox:

  • הנציגים הרשמיים היחידים של GitLab בישראל.
  • יכולים לעזור לך לתכנן ולפרוס סביבת פיתוח בכל אחת מהאפשרויות הנ"ל.
  • מנוסים בהעברת פרויקטים ל- GitLab (מ- Git, GitHub, BitBucket , SVN, ClearCase , JIRA, Jenkins וכד')
  • מנוסים בהעברת פרויקטים מהענן (ובכיוון הפוך)
  • מנוסים בניהול מרוחק של שרתים, מרמת מערכת ההפעלה עד רמת האפליקציה, כולל אפשרות לזמינות גבוהה ול SLA
  • יכולים לעזור לבחור ענן פרטי
  • יכולים גם למכור רשיונות וגם לספק רשיונות בתנאי תשלום נוחים
  • מספקים הדרכות GitLab
  • מספקים תכנון והטמעת פתרונות מתקדמים ל- GitLab: גיבויים אוטומטיים;  התאוששות מאסון (DR) ; פתרונות High Availability ועוד
  • מתמחים בתהליכי פיתוח ובכלים תומכי ALM , DevOps ו- SCM כגון
    Git, Jenkins, GitLab, GitHub, JIRA, InstallShield, InstallBuilder, ClearCase, BitBucket, Slack, HipChat ומספקים פתרונות הכוללים שירותים מקצועיים, תמיכה, הדרכה, פיתוח מותאם ומכירת רשיונות.

ניתן לפנות אלינו ל- services@almtoolbox.com או טלפונית: 072-2405222

 

 

מידע נוסף: