בעיית שלושים הטאבים
בא לכם להקים VM. בוחרים גודל, מחברים דיסק, נותנים IP ציבורי, גמרנו. זה אמור להיות מסך אחד ותשעים שניות.
במקום זה אתם פותחים טאב לשירות ה-compute. אחר כך טאב ל-VPC, כי ה-VM צריך subnet. אחר כך טאב ל-security group, כי ה-subnet צריך כללים. אחר כך טאב ל-gateway, כי הכללים צריכים נתיב החוצה. אחר כך טאב ל-IAM policy, כי ה-role שלכם עדיין לא יכול לחבר דיסק. אחר כך טאב לתיעוד כדי להיזכר מה זה “availability domain” השבוע. עד שהמכונה עולה כבר פתוחים לכם שלושים טאבים וחצי הסמכה שאף אחד לא ביקש.
איך נבנה המבוך
אף אחד לא תכנן את זה. זה נצבר.
ענן משיק שירות אחד. הוא עובד. אחר כך הוא משיק עוד אחד, ועוד אחד, ואחרי עשור יש מאתיים כאלה, לכל אחד הקונסולה שלו, השמות שלו, דף התמחור שלו. שום דבר לא הוסר אף פעם, כי מישהו, איפשהו, תלוי בזה. אז שטח הפנים רק גדל.
השמות מתרבים יחד איתו. אותו רעיון בדיוק — “רשת שבה המכונות שלכם חיות” — הוא VPC פה, virtual network שם, ו-tenancy במקום אחר. Egress נמדד בשש דרכים שונות תלוי באיזה גבול החבילה חוצה. קריאת API “חינמית” היא חינמית עד שעושים עשרה מיליון כאלה. אתם מפסיקים לחשוב על המערכת שלכם ומתחילים לחשוב על הטקסונומיה של הספק, וזו עבודה אחרת וגרועה בהרבה.
והתמחור הולך לפי אותו היגיון. Reserved instances. Spot bids. Committed-use discounts. Savings plans שחופפים ל-reserved instances. אתם צריכים גיליון אלקטרוני, ואז אתם צריכים אדם שהתפקיד שלו הוא הגיליון.
העלות היא לא החשבון
העלות הברורה היא כסף. העלות האמיתית היא כל מה שמסביב.
- קליטה. מהנדס חדש לא יכול לשלוח קוד במשך ימים כי הפלטפורמה עצמה היא הדבר שהוא לומד, לא המוצר שלכם.
- טעויות. שלושים טאבים הם שלושים הזדמנויות להשאיר ברירת מחדל לא נכונה. רוב פרצות האבטחה בענן הן לא התקפות מתוחכמות — הן
0.0.0.0/0שמישהו השאיר על security group ב-18:00 ביום שישי. - אבטחה מתוך תשישות. כשהגדרה נכונה דורשת ארבע שעות של תיעוד, אנשים מפסיקים לקרוא את התיעוד. מורכבות היא לא ניטרלית. היא מייצרת תצורות שגויות באופן פעיל.
כל מסך שאתם חייבים לבקר בו הוא מקום לטעות. ההתפרשות הזו היא לא פיצ’ר שגדלתם לתוכו. זה מס שאתם משלמים לנצח.
מה עשינו במקום
Kaligon משיקה סט קטן ומכוון של פרימיטיבים, ושם עצרנו.
Compute. Block storage ואחסון אובייקטים תואם-S3. Networking — VPCs, subnets, firewalls, floating IPs. DNS. זה שטח הפנים. הוא מכסה את הרוב המוחלט של מה שצוותים באמת מריצים, והוא נכנס לכם בראש.
ברירות המחדל שפויות, אז אתם לא צריכים להרכיב את המסלול הבטוח מחלקים. VM חדש נוחת ברשת עובדת עם firewall שאינו פרוץ לרווחה. המילים אומרות מה שהן אומרות — firewall הוא firewall, volume הוא volume. Snapshots, גיבויים, קריאות API, שאילתות DNS, גישה לפאנל וכרטיסי תמיכה הם לא שורות בחשבון; הם פשוט כלולים, אז אין מה למדל.
התמחור הוא מחיר אחיד אחד לכל משאב. בלי reserved tiers, בלי spot bidding, בלי האלגברה של savings-plan. חיוב לפי שנייה שמתקרר חודשית, כך שמכונה שרצה הרבה זמן מתייצבת על מחיר קבוע שאתם יכולים להגיד בקול רם. אין גיליון אלקטרוני, כי אין מה לבצע עליו אופטימיזציה.
התוצאה משעממת במובן הכי טוב. אתם פותחים את הפאנל, יוצרים את הדבר, סוגרים את הטאב. טאב אחד. תראו את זה בדף התמחור — הקונפיגורטור הוא כל המודל המנטלי, על מסך אחד.
ענן אמור להיעלם אל הרקע בזמן שאתם בונים. שלנו משתדל מאוד להיות נשכח.