Error Budget Là Gì?
Trong lĩnh vực Site Reliability Engineering (SRE), error budget (ngân sách lỗi) là mức độ thiếu tin cậy mà một dịch vụ được phép có mà vẫn đáp ứng được mục tiêu mức dịch vụ (SLO – Service Level Objective). Nếu bạn cam kết độ sẵn sàng 99,9%, nghĩa là bạn đang ngầm chấp nhận 0,1% thời gian gián đoạn — chính 0,1% đó là error budget của bạn. Công cụ tổng quát này quy đổi bất kỳ mục tiêu SLO và khoảng thời gian nào ra số phút downtime tối đa được phép, sau đó trừ đi phần downtime đã dùng để cho bạn biết còn lại bao nhiêu ngân sách.
Cách Sử Dụng
Nhập mục tiêu SLO dưới dạng phần trăm (ví dụ 99,9), chọn chu kỳ tính ngân sách (tuần, tháng, quý hoặc năm), rồi nhập số phút downtime đã xảy ra trong chu kỳ đó. Công cụ sẽ trả về tổng error budget, lượng downtime đã tiêu tốn và phần ngân sách còn lại — cả theo số phút lẫn phần trăm.
Giải Thích Công Thức
Trước tiên, chu kỳ được quy đổi sang phút: số_phút_chu_kỳ = số_ngày × 24 × 60. Error budget được tính bằng (1 − SLO) × số_phút_chu_kỳ, trong đó SLO biểu diễn dưới dạng phân số (99,9% → 0,999). Cuối cùng, ngân_sách_còn_lại = error_budget − downtime_đã_dùng. Giá trị còn lại âm có nghĩa là bạn đã tiêu hết ngân sách và vi phạm SLO.
$$B_{\text{rem}} = \left(1 - \frac{\text{SLO (\%)}}{100}\right) \cdot P - \text{Downtime (min)}$$ $$\text{where}\quad \left\{ \begin{aligned} P &= \text{Period (days)} \times 24 \times 60 \end{aligned} \right.$$
Ví Dụ Cụ Thể
Giả sử SLO của bạn là 99,9% trong một tháng 30 ngày. Chu kỳ tương đương \(30 \times 24 \times 60 = 43{,}200\) phút. Error budget là \((1 - 0{,}999) \times 43{,}200 = 43{,}2\) phút. Nếu bạn đã có 10 phút downtime, phần ngân sách còn lại là \(43{,}2 - 10 = 33{,}2\) phút, tức khoảng 76,85% tổng ngân sách.
Câu Hỏi Thường Gặp
SLO bao nhiêu là tốt? Điều này tùy thuộc vào từng dịch vụ. Mức 99,9% ("ba số chín") khá phổ biến cho các ứng dụng web; hạ tầng quan trọng có thể nhắm tới 99,99% hoặc cao hơn. SLO càng cao thì error budget càng nhỏ.
Ngân sách còn lại bị âm nghĩa là gì? Bạn đã vượt quá thời gian downtime cho phép và vi phạm SLO. Các đội SRE thường tạm dừng những đợt triển khai rủi ro cho đến khi ngân sách phục hồi.
Có tính cả bảo trì có kế hoạch không? Chỉ khi bạn coi các khung giờ bảo trì là downtime. Nhiều đội loại trừ phần bảo trì đã thông báo trước ra khỏi cách tính SLO.