יום שלישי בבוקר, 3:47. ה-on-call מקבל התראה. ה-Postgres pod הופעל מחדש אחרי node failure, ועכשיו מסד הנתונים ריק לחלוטין. כל הנתונים של 24 השעות האחרונות - נעלמו. לא נגנבו, לא פגומים. פשוט אינם. זה לא בגלל פרצת אבטחה, לא בגלל bug בקוד, ולא בגלל שגיאת configuration של MongoDB. זה קרה כי מישהו הריץ Postgres כ-Deployment רגיל בלי PersistentVolume, וכשה-pod הוחלף - כל ה-data ירד איתו לשאול.
זה לא תרחיש תיאורטי. זה קורה בחברות real-world, בצוותים שיודעים מה הם עושים אבל לא הספיקו להבין את ה-storage model של Kubernetes. השיעור הזה יסביר בדיוק למה זה קרה ואיך להימנע מזה.