המהפכה בתחום השרתים וניהולם- קונטיינרים

המהפכה בתחום השרתים וניהולם- קונטיינרים

 

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

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

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

 

 הקונטיינרים עונים על 3 אתגרים:

חסכון בחומרה ובמורכבות תפעולית

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

תשתית אפליקטיבית אחידה

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

אוטומציה

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

 

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

 

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

Noga Balaban