Home lab không chỉ là nơi bạn thỏa sức biến hóa những ý tưởng công nghệ thành hiện thực mà còn là nền tảng vững chắc để xây dựng một bộ ứng dụng tự lưu trữ ấn tượng. Từ những dịch vụ thiết yếu giúp nâng cao chất lượng cuộc sống cho đến các tiện ích ít phổ biến nhưng vô cùng thiết thực, home lab mang lại nhiều giá trị. Tuy nhiên, nếu bạn là người thích thử nghiệm với máy chủ cá nhân như tôi, chắc chắn bạn sẽ gặp phải tình trạng máy trạm bị ngoại tuyến nhiều lần trong hành trình tự mày mò này.
Thực tế, lỗi của con người không phải là nguyên nhân duy nhất khiến home lab của bạn gặp sự cố. Dù là phần cứng trục trặc, mất điện hay lỗi ảnh hệ thống, có rất nhiều yếu tố có thể khiến các dịch vụ quý giá của bạn ngừng hoạt động. Là một người mà năng suất làm việc phụ thuộc vào các ứng dụng tự lưu trữ, việc thiết lập một trạm giám sát đã giúp tôi rất nhiều. Mặc dù có vô số lựa chọn trong hệ sinh thái giám sát home lab, Uptime Kuma vẫn là tiện ích yêu thích của tôi cho công việc này – và đây là tất cả những gì bạn cần biết về ứng dụng này để tích hợp nó vào hệ thống tự lưu trữ của bạn.
Uptime Kuma là gì và tại sao nên sử dụng?
Về cốt lõi, Uptime Kuma là một máy chủ giám sát có khả năng theo dõi máy chủ cá nhân (home server), các dịch vụ tự lưu trữ (self-hosted services) và máy ảo (virtual guests) để đảm bảo chúng luôn hoạt động. Ngoài việc theo dõi thời gian hoạt động (uptime) rõ ràng, Uptime Kuma còn có thể thu thập thống kê về thời gian phản hồi (response time) và ngày hết hạn chứng chỉ (certificate expiry) cho các dịch vụ yêu thích của bạn, thậm chí có thể tạo ra các biểu đồ ping gọn gàng với các chỉ số đã thu thập.
Tuy nhiên, tiện ích của nó còn tăng lên đáng kể khi bạn tính đến các tính năng cảnh báo mạnh mẽ được tích hợp sẵn. Thay vì chỉ đơn thuần hiển thị thời gian hoạt động của các ứng dụng, Uptime Kuma có thể tận dụng các bot token, khóa API và webhook để gửi cảnh báo đến Telegram, GoAlert, Discord và nhiều nền tảng khác, thông báo cho bạn trong trường hợp các dịch vụ của bạn bị ngoại tuyến.
Triển khai container Uptime Kuma
Sử dụng Docker container là cách đơn giản nhất để thiết lập và chạy Uptime Kuma. Mặc dù về mặt kỹ thuật, bạn có thể triển khai Uptime Kuma trên máy chủ tự lưu trữ chính của mình, tôi khuyên bạn nên sử dụng một mini-PC, Raspberry Pi hoặc NAS để lưu trữ ứng dụng này.
Nếu bạn chạy Uptime Kuma trên máy chính, bất kỳ thử nghiệm nào làm hỏng máy trạm cũng sẽ khiến máy chủ giám sát ngừng hoạt động. Vì bản thân container Uptime Kuma bị ngoại tuyến, bạn sẽ không nhận được bất kỳ thông báo nào về tình trạng nguy cấp của home lab. Thậm chí, bạn có thể tạo một container Uptime Kuma trên máy Windows 11 nếu bạn đang sử dụng WSL2 và Docker Desktop hoặc Podman Desktop.
Với những lưu ý trên, đây là các bước bạn cần thực hiện để triển khai máy chủ Uptime Kuma:
-
(Tùy chọn) Nếu bạn đang sử dụng hệ điều hành có giao diện đồ họa, hãy khởi chạy ứng dụng terminal.
Mở ứng dụng terminal trên Debian để triển khai Uptime Kuma
-
Chạy lệnh sau trong terminal và đợi Docker Engine kéo hình ảnh Uptime Kuma cũng như triển khai container.
sudo docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1
Chạy lệnh Docker để triển khai máy chủ Uptime Kuma
-
Nếu bạn định cấu hình Uptime Kuma trên máy chủ hiện tại, bạn có thể gõ http://localhost:3001 vào trình duyệt web yêu thích của mình.
Truy cập máy chủ Uptime Kuma qua trình duyệt web
-
Ngoài ra, bạn có thể thay thế chuỗi localhost bằng địa chỉ IP của máy chủ để truy cập container Uptime Kuma từ một thiết bị khác trong mạng gia đình của bạn.
Giao diện web Uptime Kuma sau khi truy cập bằng địa chỉ IP
Thêm dịch vụ vào Uptime Kuma
Khi máy chủ Uptime Kuma đã hoạt động, đã đến lúc thêm các dịch vụ bạn muốn giám sát vào giao diện web của nó.
-
Chọn Ngôn ngữ cho giao diện web trước khi nhập Tên và Mật khẩu cho người dùng Uptime Kuma.
Tạo tài khoản trên giao diện web Uptime Kuma
-
Nhấn nút Thêm Màn hình Mới (Add New Monitor) khi bạn truy cập Bảng điều khiển (Dashboard).
Thêm một màn hình giám sát mới trong Uptime Kuma
-
Chọn Tên Thân Thiện (Friendly Name – định danh) cho dịch vụ tự lưu trữ của bạn, nhập URL của nó và nhấn nút Lưu (Save).
Cấu hình cài đặt để thêm màn hình giám sát mới trong Uptime Kuma
Cấu hình cảnh báo thời gian thực trong Uptime Kuma
Khi bạn đã thêm toàn bộ các dịch vụ tự lưu trữ vào Uptime Kuma, bạn có thể thiết lập các cảnh báo tùy chỉnh để luôn nắm bắt được trạng thái của máy chủ cá nhân. Trong hướng dẫn này, tôi đã sử dụng máy chủ Discord làm ví dụ, nhưng quy trình tổng thể tương tự đối với hơn 90 ứng dụng thông báo được Uptime Kuma hỗ trợ.
-
Mở máy chủ Discord của bạn và nhấn vào biểu tượng Bánh răng (Cog) gần Kênh Văn bản (Text Channel) mà bạn muốn nhận cảnh báo từ Uptime Kuma.
Truy cập biểu tượng cài đặt cho nhóm Discord để cấu hình cảnh báo
-
Chuyển đến tab Tích hợp (Integrations) và nhấn tùy chọn Tạo Webhook (Create Webhook).
Tạo một webhook trong Discord để nhận thông báo Uptime Kuma
-
Sau khi Discord đã tạo một webhook mới, nhấn vào mũi tên thả xuống bên cạnh nó và nhấp vào Sao chép URL Webhook (Copy Webhook URL).
Sao chép URL webhook từ Discord để sử dụng trong Uptime Kuma
-
Quay lại Bảng điều khiển Uptime Kuma và chọn nút Chỉnh sửa (Edit) dưới dịch vụ bạn muốn cấu hình.
Nhấn nút chỉnh sửa dưới một dịch vụ trong Uptime Kuma để thiết lập cảnh báo
-
Nhấp vào Thiết lập Thông báo (Setup Notification) dưới mục Thông báo (Notifications).
Thiết lập thông báo trong Uptime Kuma cho dịch vụ được giám sát
-
Chọn Loại Thông báo (Notification Type), đặt Tên Thân Thiện (Friendly Name), dán URL Webhook và nhấn Lưu (Save).
Cấu hình thông báo cảnh báo trong Uptime Kuma
-
(Tùy chọn) Nhấn nút Kiểm tra (Test) để xác nhận liệu Uptime Kuma có thể gửi thông báo đến máy chủ Discord của bạn hay không.
Kiểm tra thông báo cảnh báo từ Uptime Kuma trên Discord
-
Bạn có thể sửa đổi các tùy chọn Thử lại (Retries) và Gửi lại Thông báo nếu Ngoại tuyến X lần liên tiếp (Resend Notification if Down X times consecutively) để thay đổi tần suất thông báo.
Chỉnh sửa cài đặt chung trong Uptime Kuma để tối ưu hóa cảnh báo
Xây dựng trung tâm giám sát mạnh mẽ với Uptime Kuma
Nếu bạn đã thực hiện đúng tất cả các bước, Uptime Kuma sẽ có thể theo dõi home lab của bạn và gửi cảnh báo ngay khi có sự cố. Cá nhân tôi tự lưu trữ Uptime Kuma trên Raspberry Pi vì ứng dụng này hầu như không tiêu tốn tài nguyên nào, ngay cả khi có rất nhiều dịch vụ và cảnh báo được thiết lập.
Nhận thông báo cảnh báo từ Uptime Kuma trên Discord
Trong trường hợp Uptime Kuma cảm thấy quá mức cần thiết cho thiết lập của bạn, bạn luôn có thể áp dụng phương pháp “người thân khó chịu” đáng tin cậy để nhận thông báo khi tường lửa, đám mây và các dịch vụ khác của bạn bị ngoại tuyến do các thử nghiệm home lab của bạn. Tuy nhiên, Uptime Kuma là một giải pháp chuyên nghiệp, hiệu quả và đáng tin cậy hơn nhiều để đảm bảo các dịch vụ công nghệ của bạn luôn trong tầm kiểm soát.