1. Vì sao backup thủ công luôn thất bại?
Trong thực tế:
Backup chạy khi “nhớ”
Script chạy khi “rảnh”
Lỗi xảy ra khi “không ai để ý”
Kết quả:
Backup tồn tại trên giấy, không tồn tại trong vận hành.
📌 Tự động hóa và giám sát là điều kiện sống còn của backup.
2. Cron và Systemd Timer là gì trong backup?
2.1. Cron – cơ chế truyền thống
Cron:
Chạy theo lịch cố định
Đơn giản, phổ biến
Có mặt trên mọi Linux
📌 Cron là nền tảng, nhưng thiếu khả năng giám sát trạng thái.
2.2. Systemd Timer – thế hệ mới
Systemd Timer:
Gắn với service
Có log, trạng thái
Biết task có chạy hay không
📌 Systemd Timer phù hợp hơn cho backup quan trọng.
3. Khi nào dùng Cron, khi nào dùng Systemd Timer?
| Tình huống | Cron | Systemd Timer |
|---|---|---|
| Script đơn giản | ✔ | ✔ |
| Backup quan trọng | △ | ✔✔ |
| Cần retry / status | ✖ | ✔ |
| Cần audit log | ✖ | ✔ |
📌 Backup càng quan trọng → càng nên dùng Systemd Timer.
4. Thiết kế job backup đúng cách
Một job backup chuẩn phải:
Có log riêng
Có exit code rõ ràng
Không chạy chồng
Có timeout
📌 “Chạy được” chưa đủ, phải biết nó chạy thế nào.
5. Giám sát backup – phần hay bị bỏ quên nhất
Một backup không được giám sát thì:
Có thể đã dừng từ lâu
Có thể lỗi nhưng không ai biết
Có thể tạo file rỗng
Backup không giám sát = backup mù.
6. Các mức giám sát backup
6.1. Mức 1 – Kiểm tra job có chạy không
Log tồn tại
Timestamp cập nhật
6.2. Mức 2 – Kiểm tra job có thành công không
Exit code
Kết quả script
6.3. Mức 3 – Kiểm tra backup có giá trị không
File không rỗng
Dung lượng hợp lý
Có thể restore
📌 Mức 3 mới là giám sát thực sự có ý nghĩa.
7. Cảnh báo khi backup lỗi
Cảnh báo cần:
Đến đúng người
Đến đúng thời điểm
Không bị bỏ qua
Hình thức:
Email
Chat
Monitoring system
📌 Backup lỗi mà không ai biết = không có backup.
8. Chống chạy chồng và lỗi ngầm
Cần xử lý:
Job chạy quá lâu
Job treo
Job bị kill
Giải pháp:
Lock file
Timeout
Kill job cũ
9. Sai lầm phổ biến
Chỉ dùng cron, không log
Không kiểm tra exit code
Không giám sát dung lượng backup
Tin rằng “cron chạy là được”
10. Checklist triển khai cron / timer cho backup
BẮT BUỘC
Log riêng
Exit code
Lock chống trùng
Giám sát chạy
RẤT NÊN
Systemd Timer
Alert khi lỗi
Kiểm tra dung lượng
11. Liên hệ với hệ thống thực tế
Trong hệ thống:
Nhiều server
Nhiều job backup
Nhiều dữ liệu quan trọng
Không có giám sát:
Không biết server nào đã mất backup
Không biết backup nào đã hỏng
Backup không thất bại khi chạy sai,
mà thất bại khi lỗi xảy ra nhưng không ai biết.
Cron và Systemd Timer giúp backup chạy đều,
giám sát giúp backup có ý nghĩa.
- Đăng nhập để gửi ý kiến