מתוארת לעתים קרובות כ"מערכת ההפעלה של הענן", Kubernetes היא פלטפורמת קוד פתוח לניהול אשכולות של יישומים ושירותים. פותחה על ידי מהנדסי Google Joe Beda, Brendan Burns ו-Craig McLuckie בשנת 2014 ומקור פתוח זמן קצר לאחר מכן, Kubernetes הפכה במהרה לאקוסיסטם משגשג ומולד בענן בפני עצמו. כיום, Kubernetes - שפירושו "הגאי" או "טייס" ביוונית עתיקה - מנוהלת על ידי Cloud Native Computing Foundation (CNCF), זרוע של קרן לינוקס.
Kubernetes היה הפרויקט הראשון בוגר ה-CNCF, והוא הפך לאחד מפרויקטי הקוד הפתוח הצומחים ביותר בהיסטוריה. ל-Kubernetes יש כעת יותר מ-2,300 תורמים, והוא אומץ באופן נרחב על ידי חברות קטנות וגדולות, כולל מחצית מ-Fortune 100.
ראשית, הנה כמה מונחי מפתח הקשורים ל-Kubernetes. יש רשימה ממצה יותר זמינה בדף Kubernetes Standardized Glossary. אתה יכול גם למנף את Kubernetes Cheat Sheet, המכיל רשימה של פקודות ודגלים של kubectl הנפוצים.
האם קבוצה של מכונות המכונה בנפרד צמתים המשמשת להפעלת יישומים מכולים המנוהלים על ידי Kubernetes.
היא מכונה וירטואלית או פיזית. אשכול מורכב מצומת מאסטר ומספר צמתים עובדים.
היא תמונה המכילה תוכנה והתלות שלה.
האם מיכל בודד או קבוצה של קונטיינרים הפועלים באשכול Kubernetes שלך.
הוא אובייקט שמנהל יישומים משוכפלים המיוצגים על ידי פודים. תרמילים נפרסים על הצמתים של אשכול.
מבטיח שמספר מוגדר של העתקים של תרמילים פועלים בו-זמנית.
מתאר כיצד לגשת ליישומים המיוצגים על ידי קבוצה של תרמילים. שירותים מתארים בדרך כלל יציאות ומאזני עומסים, וניתן להשתמש בהם כדי לשלוט בגישה פנימית וחיצונית לאשכול.
KubeCon הוא הכנס השנתי למפתחים ומשתמשים של Kubernetes. מאז ה-KubeCon הראשון ב-2015 עם 500 משתתפים, KubeCon גדלה והפכה לאירוע חשוב עבור קהילת ילידי הענן. בשנת 2019, מהדורת סן דייגו, קליפורניה של KubeCon משכה 12,000 מפתחים ומהנדסי אמינות אתרים שחגגו את מערכת הקוד הפתוח שפורחת סביב פלטפורמת תזמור הענן Kubernetes.
ככל שמפתחים פורסים יותר ויותר תוכנות עבור מערך מגוון של סביבות מחשוב עם עננים שונים, סביבות בדיקה, מחשבים ניידים, מכשירים, מערכות הפעלה ופלטפורמות, הנושא של הפעלת התוכנה בצורה אמינה היא בעלת חשיבות עליונה. כאן נכנסים קונטיינרים: הם מאגדים יישום עם כל סביבת זמן הריצה שלו. במובן זה, קונטיינרים הם סוג של וירטואליזציה מכיוון שהם מספקים "בועה" שבה האפליקציה יכולה לפעול על ידי הכללת הספריות, התלות ומערכות ההפעלה הנכונות. אבל קונטיינרים קטנים יותר ממכונות וירטואליות מכיוון שהם מכילים רק את המשאבים שהאפליקציה צריכה, ותו לא.
בעוד שמכולות Linux קיימות מאז 2008, נדרשה הופעתן של קונטיינרים של Docker ב-2013 כדי להפוך אותם למפורסמים. באופן דומה, פיצוץ העניין בפריסת אפליקציות מכולות - יישומים שהכילו את כל מה שהם צריכים כדי להפעיל - יצר בסופו של דבר בעיה חדשה: ניהול אלפי מכולות. Kubernetes מתזמר אוטומטית את מחזור החיים של המכולה, ומפיץ את הקונטיינרים על פני תשתית האירוח. Kubernetes מגדיל או מטה את המשאבים, בהתאם לביקוש. הוא מספק, מתזמן, מוחק ומנטר את תקינות המכולות.
מרכיבי המפתח של Kubernetes הם אשכולות, צמתים ומישור הבקרה. אשכולות מכילים צמתים. כל צומת מורכב מקבוצה של לפחות מכונת עובד אחת. הצמתים מארחים תרמילים המכילים אלמנטים של היישום שנפרס. מישור הבקרה מנהל צמתים ותרמילים באשכול, לרוב על פני מחשבים רבים, לזמינות גבוהה.
מישור הבקרה מכיל את הדברים הבאים:
מרכיבי הצומת כוללים:
עם קונטיינרים, אתה יכול להיות בטוח שהיישומים שלך מצורפים עם כל מה שהם צריכים כדי להפעיל. אבל כשאתה מוסיף קונטיינרים - שלעתים קרובות מכילים שירותי מיקרו - אתה יכול לנהל ולהפיץ אותם באופן אוטומטי באמצעות Kubernetes.
עם Kubernetes, ארגונים יכולים:
קנה מידה אוטומטי | חייג פריסות למעלה או למטה, בהתאם לביקוש. |
גלה שירותים | מצא שירותי מכולות באמצעות כתובת ה-DNS או ה-IP. |
איזון עומסים | ייצוב הפריסה על ידי הפצת תעבורת רשת. |
נהל אחסון | בחר אחסון מקומי או ענן. |
גרסאות שליטה | בחר את סוגי הקונטיינרים שברצונך להפעיל, ואילו מהם להחליף באמצעות תמונה או משאבי קונטיינר חדשים. |
שמור על אבטחה | עדכן באופן מאובטח סיסמאות, אסימוני OAuth ומפתחות SSH הקשורים לתמונות מיכל ספציפיות. |
בעוד ש-Kubernetes ניתנת להרכבה גבוהה ויכולה לתמוך בכל סוג של יישום, זה יכול להיות קשה להבנה ולשימוש. Kubernetes הוא לא תמיד הפתרון הנכון לעומס עבודה נתון, כפי שמספר חברי CNCF הגיבו עליו. זו הסיבה שהמערכת האקולוגית של Kubernetes מכילה מספר כלים מקוריים בענן שארגונים יצרו כדי לפתור בעיות ספציפיות של עומס עבודה.
Kubernetes פורס קונטיינרים, לא קוד מקור, ואינו בונה יישומים. עבור רישום, תוכנת ביניים, ניטור, תצורה, CI/CD ופעילויות ייצור רבות אחרות, תזדקק לכלים נוספים. עם זאת, Kubernetes ניתנת להרחבה, והוכחה כמיומנת במגוון רחב של מקרי שימוש ממטוסי סילון ועד למידת מכונה. למעשה, ספקי ענן כולל Oracle, Google, Amazon Web Services ואחרים השתמשו ביכולת ההרחבה של Kubernetes לבניית Kubernetes מנוהלים, שהם שירותים שמפחיתים את המורכבות ומגדילים את פרודוקטיביות המפתחים.
תשתית הענן שלנו Container Engine for Kubernetes הוא שירות מנוהל ידידותי למפתחים שבו אתה יכול להשתמש כדי לפרוס את היישומים המכילים שלך לענן. השתמש ב-Container Engine for Kubernetes כאשר צוות הפיתוח שלך רוצה לבנות, לפרוס ולנהל באופן מהימן יישומים מקוריים בענן. אתה מציין את משאבי המחשוב שהאפליקציות שלך דורשות, ו-Container Engine for Kubernetes מספק אותם בתוך שכירות קיימת של Cloud Infrastructure.
אמנם אינך צריך להשתמש בשירות Kubernetes מנוהל, אך מנוע ה-Cloud Infrastructure Container for Kubernetes הוא דרך קלה להפעיל אשכולות זמינים במיוחד עם השליטה, האבטחה והביצועים הניתנים לחיזוי של Oracle Cloud Infrastructure. Container Engine for Kubernetes תומך הן במכונות מתכת חשופות והן במכונות וירטואליות כצמתים, והוא מאושר כתואם על ידי CNCF. אתה גם מקבל את כל עדכוני Kubernetes ונשאר תואם למערכת האקולוגית של CNCF ללא כל עבודה נוספת מצידך.
Oracle היא חברה פלטינה ב-Cloud Native Computing Foundation (CNCF), קהילת קוד פתוח התומכת בכמה עשרות פרויקטי פיתוח תוכנה המאורגנים לפי רמת בגרות. פרויקט הגמר (Kubernetes, Prometheus, Envoy, CoreDNS, containerd, Fluentd, Jaeger, Vitess, TUF, ו- Helm) כולם הוכחו כבעלי ערך רב עבור היבטים של פיתוח מקורי בענן.
ל-Kubernetes יש מערכת אקולוגית גדולה של פרויקטים תומכים שצמחו סביבה. הנוף יכול להיות מרתיע, וחיפוש אחר תשובות לשאלות פשוטות יכול להוביל אותך לבור ארנב. אבל הצעדים הראשונים בדרך זו הם פשוטים, ומשם אתה יכול לחקור מושגים מתקדמים לפי הצרכים שלך. למד איך ל:
מפתחים אשר להוטים להתחיל את פרויקט Kubernetes הראשון שלהם יכולים לבדוק את שלנו פורטל מפתחים שבו הם יכולים ללמוד כיצד לבנות את אפליקציית Arm הראשונה שלהם ב-Kubernetes או לפרוס אשכול Kubernetes באמצעות מעטפת ענן.