Pelanggan ialah perkhidmatan logistik yang memproses puluhan ribu pesanan sehari, mengalami lonjakan pada waktu malam dan semasa jualan, serta terikat dengan SLA yang ketat kepada rakan niaga. Infrastruktur berkembang tanpa perancangan: VPS yang berasingan, konfigurasi yang “berada di pelayan” dan pelancaran manual mengikut arahan wiki. Setiap keluaran bermakna pelancaran pada waktu malam dengan gangguan, dan setiap puncak membawa risiko kehilangan pesanan. Peristiwa yang mendorong mereka menghubungi kami ialah insiden semasa jualan pramusim Tahun Baharu, apabila platform tidak berfungsi selama empat jam dan perkhidmatan itu membayar pampasan kepada rakan kongsi.
Memindahkan platform kepada infrastruktur terurus tanpa menghentikan perniagaan:
infrastruktur sebagai kod, penghantaran automatik, kontena dan orkestrasi, kebolehcerapan serta pemulihan gangguan yang boleh dijangka. Pengasas menetapkan ukuran kejayaan: “pelancaran pada waktu kerja, tanpa gangguan dan tanpa orang yang mempunyai akses SSH”.
Kami mengikut urutan yang telah terbukti: kontena dan persekitaran boleh dihasilkan semula dahulu, automasi penghantaran selepas itu, dan hanya kemudian orkestrasi dengan penskalaan automatik.
- Mengaudit infrastruktur: memetakan perkhidmatan dan kebergantungan, mengukur profil beban puncak dan menyenaraikan operasi manual yang paling kerap menyebabkan kerosakan.
- Mengkontenakan perkhidmatan: menyeragamkan binaan, mengeluarkan konfigurasi daripada kod ke pemboleh ubah persekitaran dan mewujudkan persekitaran dev/stage/prod yang serupa.
- Menerangkan infrastruktur sebagai kod dalam Terraform: persekitaran dilancarkan daripada repositori, manakala perubahan manual dalam konsol penyedia awan dilarang.
- Membina saluran paip GitLab CI: ujian dan binaan imej berjalan secara automatik; stage dilancarkan serta-merta, prod dilancarkan dengan menekan butang selepas semakan, dan rollback memerlukan satu tindakan.
- Memindahkan platform ke Kubernetes dengan penskalaan automatik: ketika lonjakan petang dan jualan, platform menggunakan instans tambahan dan bukannya kerja manual kecemasan.
- Melaksanakan pemantauan dan amaran untuk isyarat utama — latensi, ralat, trafik dan kepenuhan — dengan giliran on-call dan eskalasi berjadual.
- Mengkonfigurasi sandaran dan pemulihan bencana: prosedur pemulihan didokumenkan dan gangguan dilatih di stage sambil mengukur MTTR sebenar.
Hasil projek yang paling bernilai bukan teknologi, tetapi perubahan tanggungjawab: infrastruktur tidak lagi bergantung pada “orang yang mempunyai akses SSH”. Setiap pelancaran boleh dihasilkan semula, setiap persekitaran boleh dipulihkan daripada kod, dan papan pemuka mengesan gangguan sebelum pelanggan pertama menulis kepada kami. Ini menukar masa henti daripada bencana kepada insiden rutin dengan panduan tindakan yang jelas serta masa pemulihan yang boleh diukur.
Ekonomi projek terdiri daripada tiga bahagian: penjimatan langsung kos infrastruktur sebanyak 32% melalui penskalaan automatik dan penghapusan kapasiti puncak yang sentiasa “dipanaskan”; jam kerja pasukan yang dijimatkan daripada pelancaran waktu malam; dan yang paling utama, hasil yang terpelihara semasa puncak yang kini berlalu tanpa insiden. Seorang pelanggan besar yang merupakan rangkaian kedai memperbaharui kontrak selepas jualan pertama menggunakan infrastruktur baharu.
| Metrik | Hasil |
|---|---|
| Pelancaran keluaran | 3–4 jam secara manual → 15 minit secara automatik |
| Kekerapan keluaran | 2–3 sebulan → Hampir setiap hari |
| Ketersediaan platform | 97.8% → 99.95% |
| Beban puncak | Risiko gangguan → Penskalaan automatik tanpa campur tangan manusia |
Metrik disalin daripada bahan asal kes. Tempoh dinyatakan di tempat ia direkodkan dalam sumber.
- pelancaran keluaran (sebelum ini 3–4 jam manual)
- 15 min
- ketersediaan platform (sebelum ini 97.8%)
- 99.95%
- pemulihan selepas gangguan (sebelum ini 2–4 jam)
- 20–30 min
- kos infrastruktur
- −32%
Had atas julat ditunjukkan (4 jam, 30 minit). Masa henti = 100% − ketersediaan.
- 01Commit
- 02Ujian
- 03Binaan imej
- 04Stageserta-merta
- 05Proddengan butang selepas semakan
Bidang pembangunan infrastruktur untuk kitaran seterusnya:
- Amalan FinOps — amaran untuk anomali kos dan ketelusan perbelanjaan mengikut pasukan.
- Pendekatan GitOps — keadaan produksi diterangkan dalam repositori dan perubahan dibuat hanya melalui pull request.
- Multi-region — replika perkhidmatan kritikal untuk menghadapi gangguan penyedia.
Dulu, keluaran bermakna malam, kopi dan doa. Sekarang hanya butang dan lima belas minit. Kami meraikan jualan pertama tanpa insiden bersama seluruh syarikat.
— Pengarah Teknikal Perkhidmatan Logistik