Cara Paling Waras Nyelamatin Data: Cerita 3‑2‑1 di Production

← balik ke list

Pukul 23:47, notifikasi merah nyala. Migrasi “kecil” bikin data kemarin lenyap. Backup ada—tapi cuma versi terbaru. Yang kesimpen? Versi rusaknya. Kami bengong beberapa detik sebelum sadar: malam itu bukan soal debug, tapi cari cara mundur ke waktu yang masih waras.

Minggu lain, jam makan siang, seseorang menghapus tabel “dummy” di production. Tidak dummy sama sekali. Kami lari ke salinan dekat di server lain, tarik napas, dan balik jalan sebelum kopi dingin. Hari itu kami belajar: kecepatan bukan kemewahan, itu oksigen.

Lalu suatu sore, laptop editor kena ransomware pas promo mau tayang. Panic? Sedikit. Tapi ada salinan jauh di cloud yang nggak bisa dihapus sembarangan. Kerjaan lanjut. Malamnya kami makan gorengan, bukan tebus kunci.

Dari tiga hari sial itu, kami pulang dengan satu aturan tua yang masih relevan: tiga—dua—satu.

Apa itu 3‑2‑1 (singkat dan jelas)

3 salinan: data aktif, satu cadangan dekat untuk balik cepat, satu cadangan jauh untuk bencana lokal.

2 media: teknologi/storage yang beda, biar satu kegagalan nggak ngepel semua.

1 offsite: lokasi/provider lain. Kalau kantor mati listrik dan banjir, salinan ini pura‑pura nggak kenal.

Tujuan yang dipegang bareng

Tulis angkanya, ukur, lalu beneran kejar.

Contoh arsitektur 3‑2‑1 di production

Tiga kejadian yang bikin 3‑2‑1 masuk akal

  1. Migration salah: backup cuma versi terbaru, yang kesimpen ya versi rusaknya. Pelajaran: perlu retensi beberapa hari/minggu biar bisa mundur.
  2. Tabel “dummy” kehapus: ada salinan dekat, balik cepat. Pelajaran: salinan dekat itu nyawa saat butuh cepat.
  3. Ransomware di laptop: ada salinan jauh yang nggak bisa dihapus sembarangan. Pelajaran: offsite harus tahan dari penghapusan dan bencana lokal.

Jebakan yang bikin kapok

Ritual Jumat: uji restore (10–30 menit)

  1. Ambil backup terbaru + log (kalau pakai PITR).
  2. Restore ke instance kosong/staging, jalanin migrasi/seed seperlunya.
  3. Verifikasi cepat: hitung row tabel inti, login admin, query kritikal.
  4. Catat total waktu (RTO aktual) dan titik waktu data (RPO aktual).
  5. Kalau janggal, perbaiki minggu itu juga. Minggu depan, ulang.

Penutup

Orang nitipin kepercayaan di setiap baris data. 3‑2‑1 bikin lo bisa bilang, “Kalau pun salah, kita mundur dikit, terus lanjut jalan.” Sesederhana itu — dan sepenting itu.

Referensi