Merangkai prinsip SRE menjadi satu arsitektur: hierarki SLI/SLO/error budget sebagai sistem pengukuran, toil budget untuk kapasitas engineering, blameless postmortem sebagai siklus perbaikan, serta service level engineering, capacity planning, dan reliability-as-code sebagai tulang punggung operasional

Setelah di episode 1 kita memahami asal-usul dan filosofi SRE, sekarang saatnya merangkainya menjadi arsitektur — bagaimana prinsip-prinsip itu saling terhubung dan diterapkan dalam satu sistem yang utuh. Episode 1 memberi kalian "mengapa", episode 2 memberi "bagaimana semuanya nyambung".
SRE sering disalahpahami sebagai kumpulan tips terpisah: "pasang Prometheus", "buat dashboard", "adakan game day". Padahal kekuatan SRE justru terletak pada keterhubungannya: setiap praktik adalah mekanisme yang memberi makan praktik lain. SLO menentukan alert; alert memicu incident; postmortem menghasilkan perbaikan; perbaikan mengurangi toil; toil yang berkurang memberi ruang engineering; dan engineering membangun reliability-as-code yang membuat seluruh siklus otomatis.
Ketiganya bukan tiga hal terpisah, melainkan satu hierarki:
availability, latency, atau error rate.100% - SLO. Dengan SLO 99,9%, error budget adalah 0,1% dari periode tersebut.Inilah yang membuat SRE berbeda dari pendekatan "uptime 99,999% demi gengsi": SLO adalah keputusan bisnis yang disepakati, dan error budget adalah ruang aman untuk bergerak.
Toil adalah pekerjaan manual, berulang, dan tanpa nilai jangka panjang. Aturan emasnya: maksimal 50% waktu SRE boleh untuk toil. Jika toil melebihi itu, kualitas operasi menurun — tidak ada waktu untuk membangun tooling, dan toil semakin menumpuk (lingkaran setan). Prinsip ini dipakai juga untuk mengukur kesehatan tim: toil budget adalah alarm pertama bahwa tim SRE sedang tenggelam dalam pekerjaan manual.
Postmortem adalah penutup siklus: setiap insiden menghasilkan daftar aksi, setiap aksi dicek keterlaksanaannya, dan hasilnya masuk kembali ke SLO. Tanpa postmortem yang jujur, insiden terulang; tanpa penutup siklus, perbaikan menguap begitu panas mereda.
Arsitektur SRE dimulai dari memetakan layanan dan ownership: siapa yang bertanggung jawab atas service apa, apa dependensinya, dan di mana batas tanggung jawabnya. Di sinilah konsep service level menjadi kerangka: setiap service kritis harus punya owner yang jelas dan SLO yang terdefinisi.
Capacity planning membaca data dari sistem pengukuran (metrics) untuk menjawab pertanyaan: kapan kita kehabisan resource? Ini bukan menebak, melainkan ekstrapolasi dari tren penggunaan terhadap waktu. Arsitekturnya:
top -bn1 | head -12
df -h /
free -hPerintah ini hanya contoh: di episode 8 kita akan melakukannya secara proper dengan metrik Prometheus dan forecasting.
Prinsip SRE baru bernilai saat menjadi artefak yang bisa direview, di-version, dan diotomasi. Reliability-as-code berarti SLO, alert, dashboard, dan runbook disimpan dalam git sebagai kode, bukan sebagai dokumen lepas atau konfigurasi di UI. Contoh bentuknya:
| Artefak | Bentuk | Tool |
|---|---|---|
| SLO | YAML/declarative | pyrra, sloth, OpenSLO |
| Alert | PromQL + konfigurasi | Prometheus, Grafana |
| Dashboard | JSON/YAML | Grafana provisioning |
| Runbook | Markdown | repo dokumentasi |
| Infrastruktur | HCL/YAML | Terraform, Pulumi |
Tip
Ingat prinsip dasar kode: selalu ada satu source of truth. Jika alert dibuat lewat UI Prometheus, siapa pun yang menambah server tidak akan pernah tahu alert itu ada. Dengan reliability-as-code, review, audit, dan rollback menjadi mungkin — topik yang kita bedah menyeluruh di episode 14.
Bila dirangkai, arsitektur SRE adalah loop yang terus berputar:
Note
Perhatikan bahwa siklus ini tidak pernah berhenti. Tim SRE yang sehat bukan tim yang "selesai membangun dashboard", melainkan tim yang menjalankan loop ini terus-menerus — menaikkan target saat sistem makin matang, dan menurunkan toil agar ruang engineering bertambah.
Pada episode 2 ini, kalian telah melihat bagaimana prinsip SRE terangkai menjadi arsitektur yang utuh.
Inti yang harus dibawa pulang:
Di episode 3 selanjutnya, kita mulai masuk ke praktik paling dasar sekaligus paling penting: SLO, SLI & SLA — mendefinisikan SLI (availability, latency, error rate), menentukan target SLO yang rasional, membedakan SLO dari SLA, dan mempraktikkan SLO untuk satu service. Sampai jumpa di episode 3!