מאמרים

פלטפורמת CI/CD ולוגים מלאה על EKS — Jenkins ו־ELK

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

מה יש בפלטפורמה

איך זה בנוי

תשתית כקוד

‏Terraform מקים את ה־VPC, תת־הרשתות, קלאסטר ה־EKS, הרשאות ה־IAM, את Jenkins ואת ה־load balancers. אותו קוד מריץ סביבה חדשה מאפס, וזה ההבדל בין פלטפורמה לבין שרת שמישהו הקים פעם.

פריסה

‏Helm פורס את Jenkins, ו־Terraform מפעיל את Helm — כך שאין שלב ידני באמצע. מחסנית ELK נפרסת במניפסטים של Kubernetes לתוך namespace נפרד.

הפרדת namespace

שני namespaces: jenkins ו־elk. ההפרדה נשמעת טריוויאלית עד שצריך להגביל הרשאות, לקבוע מכסות משאבים, או למחוק סביבה שלמה בלי לפגוע בשנייה.

צינור הלוגים

‏Jenkins שולח לוגים דרך תוסף Logstash אל Logstash שרץ בתוך הקלאסטר, משם ל־Elasticsearch, ו־Kibana מציג אותם. התוצאה: במקום לפתוח build אחרי build בממשק של Jenkins, מחפשים טקסט חופשי על פני כל הבניות.

מה למדתי מזה

הקוד

הקוד המלא ומדריך הפריסה נמצאים ב־GitHub(הפרויקט k8-jenkins-kibana-project), כולל README עם שלבי ההרצה.

גרסה קצרה יותר פורסמה לראשונהב־LinkedIn.

המשך קריאה

רוצים את אותו הדבר בענן שלכם?

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