Giám sát của riêng bạn: Uptime Kuma
Cách thiết lập kiểm tra khả năng truy cập cho website và dịch vụ của bạn với thông báo trên Telegram hoặc Discord, và cấu hình để nó chỉ đánh thức bạn khi thực sự quan trọng.
Cập nhật 23 tháng 8, 2026
Bảng điều khiển của máy bạn hiển thị đồ thị CPU, lưu lượng và bộ nhớ, nhưng nó không hề biết website của bạn có phản hồi hay cơ sở dữ liệu còn sống hay không. Để làm điều đó, bạn cần một trình giám sát riêng. Uptime Kuma là lựa chọn đơn giản nhất: một container, một giao diện web, hàng chục phương thức thông báo.
Cài đặt
services:
uptime-kuma:
image: louislam/uptime-kuma:1
container_name: uptime-kuma
restart: unless-stopped
volumes:
- ./data:/app/data
ports:
- "127.0.0.1:3001:3001"
docker compose up -d
Cổng được gắn vào giao diện cục bộ là có chủ đích: không nên để bảng giám sát lộ ra bên ngoài. Hãy mở nó qua một web server có chứng chỉ và mật khẩu, hoặc qua SSH tunnel:
ssh -L 3001:127.0.0.1:3001 root@<machine-address>
Sau đó truy cập http://localhost:3001 trong trình duyệt; người dùng đầu tiên sẽ trở thành quản trị viên.
Nên giám sát những gì
Hãy bắt đầu từ ít thôi, nếu không bạn sẽ chết chìm trong tiếng ồn:
- Kiểm tra HTTP trang chủ của mỗi site — mã phản hồi và thời gian.
- Kiểm tra HTTP một API quan trọng kèm kiểm tra từ khóa trong phản hồi. Một trang có thể trả về 200 mà vẫn hiển thị lỗi.
- Cổng TCP của cơ sở dữ liệu hoặc máy chủ game.
- Ngày hết hạn chứng chỉ — Kuma sẽ cảnh báo bạn N ngày trước khi hết hạn.
- Kiểm tra Push cho các tác vụ theo lịch: sau khi chạy thành công, script sẽ gọi đến một địa chỉ duy nhất, và nếu không gọi, bạn sẽ nhận được cảnh báo. Kết hợp tốt với tác vụ theo lịch.
Khoảng thời gian 60 giây gần như luôn là đủ. Số lần thử lại — 2-3, nếu không chỉ một gói mạng bị mất sẽ tạo ra cảnh báo sai.
Đừng đặt giám sát site trên cùng máy nơi site đó chạy. Nếu máy đó sập, trình giám sát cũng sập theo, và bạn sẽ không bao giờ biết. Với các site bên ngoài, hãy giữ Kuma trên một máy riêng, còn trên máy này — chỉ kiểm tra các dịch vụ nội bộ.
Thông báo
Hãy thiết lập một bot Telegram hoặc một webhook Discord và thêm nó vào phần thông báo. Đừng dùng kênh email: các kết nối ra ngoài của máy tới cổng 25, 465 và 587 bị đóng cho đến khi được mở theo yêu cầu, và email từ Kuma sẽ đơn giản là không gửi đi được — xem Mail server.
Những thói quen hữu ích:
- Tách kênh riêng cho "down" và "chứng chỉ sắp hết hạn". Kênh đầu cần phản ứng ngay lập tức, kênh sau — trong vòng một tuần.
- Bật thông báo phục hồi. Không có chúng, bạn không thể biết sự cố đã kết thúc hay chưa.
- Gửi một tin nhắn thử trong lúc thiết lập. Một nửa các vấn đề là do token sai, và bạn chỉ phát hiện điều đó trong một sự cố thật.
Tài nguyên và bảo trì
Container chiếm 150-250 MB bộ nhớ và chạy thoải mái trên VDS-1. Cơ sở dữ liệu lớn dần theo lịch sử kiểm tra: hãy đặt thời gian lưu giữ là 90-180 ngày trong phần cài đặt, nếu không trong một năm tệp sẽ phình lên đến hàng gigabyte — xem dung lượng đĩa.
Thư mục ./data chứa toàn bộ trạng thái của dịch vụ. Hãy đưa nó vào bản sao lưu: khôi phục ba chục phép kiểm tra bằng tay thì chẳng thú vị chút nào.
Những lỗi thường gặp
- Kiểm tra bằng địa chỉ IP thay vì tên miền. Chứng chỉ và virtual host không được kiểm tra, và sự cố DNS sẽ không bị phát hiện.
- Ngưỡng quá nhạy. Cảnh báo mỗi khi vượt 2 giây nghĩa là mọi người sẽ ngừng đọc thông báo.
- Để bảng điều khiển lộ ra ngoài mà không có mật khẩu. Nó hiển thị toàn bộ hạ tầng của bạn: địa chỉ, cổng, tên dịch vụ.