Postmortem: Docker görüntüsü bulunamadı
2023-12-17 tarihinde üretim Docker görüntüsünün kaybı nedeniyle Logto hizmet kesintisi olay raporu.
2023-12-17 tarihinde üretim Docker görüntüsünün kaybı nedeniyle Logto hizmet kesintisi olay raporu.
Logto üretim Docker görüntüsünün kaybı nedeniyle 2023-12-17 tarihinde bir hizmet kesintisi yaşadık.
| Zaman | Olay |
|---|---|
| Erken 2023-12-17 (Belirli zaman bilinmiyor) | Logto otomatik GitHub görüntü saklama iş akışı çalıştırıldı. logto ve logto-cloud üretim görüntüleri yanlışlıkla silindi. |
| 2023-12-17 03:56:00 UTC | Logto bulut hizmeti ve Logto çekirdek hizmeti kullanılamaz hale geldi. Olay izleme sistemimiz tarafından tespit edildi. |
| 2023-12-17 04:03:00 UTC | Olay nöbetçi mühendisimiz tarafından kabul edildi. |
| 2023-12-17 04:10:00 UTC | En son görüntüyle Logto bulut hizmeti ve Logto çekirdek hizmetinin yeni konuşlandırması tetiklendi. |
| 2023-12-17 04:15:00 UTC | Logto bulut hizmeti ve Logto çekirdek hizmeti kullanılabilir hale geldi. Olay otomatik olarak çözüldü. |
Logto hizmeti üretim görüntüleri, otomatik GitHub görüntü saklama iş akışımız tarafından silindi. Bulut hizmeti, görüntüyü GitHub Container Registry'den alamadı ve kullanılamaz hale geldi.

Otomatik GitHub görüntü saklama iş akışı üretim görüntülerini yanlışlıkla sildi. İş akışı, 3 günden eski olan tüm etiketlenmemiş eski görüntüleri silmek üzere tasarlanmıştı.
Üretim görüntülerini üretim görüntüleri olarak tanımlamak için prod etiketi ile etiketledik. Ne zaman bir üretim konuşlandırması tetiklense, prod etiketiyle yeni bir görüntü oluşturulup GitHub Container Registry'ye gönderilir. Yeni görüntü başarıyla oluşturulup gönderildikten sonra eski görüntüden prod etiketi kaldırılacaktır. Eski görüntü etiketlenmemiş hale gelecek ve otomatik GitHub görüntü saklama iş akışı tarafından silinecektir.
Logto hizmet görüntüsü birden fazla mimariyi destekleyecek şekilde inşa edilmiştir. Görüntü buildx ile oluşturuldu ve --platform bayrağı ile GitHub Container Registry'ye gönderildi. Tüm etiketler ana manifest listesinde uygulandı. prod etiketi de ana manifest listesine uygulandı. Çoklu mimari manifest listesinde yer alan tüm alt görüntüler etiketlenmemiş olarak kaldı.
Docker görüntüsünün etiket ve manifest liste yapısının dikkatli bir şekilde incelenmemesi nedeniyle, otomatik GitHub görüntü saklama iş akışını tüm etiketlenmemiş görüntüleri silmek üzere yapılandırdık. İş akışı, çoklu mimari manifest listesinde yer alan tüm alt görüntüleri sildi.
Bu olay Logto bulut hizmeti ve Logto çekirdek hizmetinin yaklaşık 18 dakika boyunca kullanılamaz hale gelmesine neden oldu. Son kullanıcılar Logto'ya giriş yapamadılar ve istemci uygulamalarına erişemediler. Logto bulut yönetim portalı da olay sırasında kullanılamaz hale geldi.
Otomatik GitHub görüntü saklama iş akışını durdurduk ve prod etiketi ile yeni bir görüntü GitHub Container Registry'ye dağıttık. Yeni görüntü Logto bulut hizmeti ve Logto çekirdek hizmeti tarafından başarıyla alındı. Hizmet yeniden kullanılabilir hale geldi.