Sentry tự host hay BYOC trên Hetzner: thực ra bạn phải chạy những gì
Mình đếm những gì Sentry tự host 26.10.0 kéo về và khởi động, rồi đặt cạnh một node được quản lý trong Hetzner project của bạn. Cả hai giữ dữ liệu trên server của bạn; công việc thì khác.
Andrew Babo5 phút đọc
Trong bài này

Sentry tự host và một node được quản lý trong chính Hetzner project của bạn đều giữ dữ liệu lỗi trên server bạn kiểm soát. Khác nhau là bạn phải chạy bao nhiêu thứ. Sentry 26.10.0 khai báo 53 service và kéo về 2,74 GB image, còn một node Belvador chạy ba service do Belvador cập nhật giúp bạn.
Mình đo phía Sentry từ các file release và registry image ngày 26/10/2026. Lần này mình không cài nó, nên bài không có thời gian cài hay số đo RAM khi hệ thống nhàn rỗi.
Mình đã đếm những gì#
Sentry tự host được phát hành dưới dạng một project Docker Compose trong repo getsentry/self-hosted. Mình lấy docker-compose.yml và .env ở tag 26.10.0, phát hành ngày 16/10, rồi xác định mọi image được tham chiếu. Sau đó mình truy vấn registry để lấy manifest linux/amd64 của từng image và cộng dung lượng các layer đã nén.
Có hai image được build trong lúc cài là sentry và clickhouse. Mình đếm theo base image dùng để build chúng.
Bản cài, tính bằng con số#
.env mặc định đặt profile feature-complete, khởi động cả 53 service từ 17 image khác nhau. Tổng các image là 2,74 GB đã nén. Profile errors-only giảm xuống 28 service và 2,02 GB, nhưng vẫn chạy Kafka, ClickHouse, PostgreSQL, Valkey (tương thích Redis) và các worker của Sentry.

Dung lượng nén còn thấp hơn dung lượng đĩa thật. Image được lưu ở dạng đã giải nén, và database cùng log của Kafka còn lớn dần lên trên đó.
Hướng dẫn tự host của Sentry yêu cầu 4 nhân CPU, 16 GB RAM cộng 16 GB swap và 20 GB đĩa trống, khuyến nghị 32 GB RAM. Trên bảng giá của Hetzner ngày 26/10, máy cost-optimized CX43 với 8 vCPU và 16 GB có giá 16,49 € mỗi tháng, chưa gồm VAT.
Nâng cấp là một lộ trình, không phải một bước#
Sentry ra bản tự host mỗi tháng và không vá các bản cũ. Release notes của họ liệt kê các hard stop: những phiên bản bạn bắt buộc phải cài trên đường đi, để các migration của database chạy đúng thứ tự. Ngày 26/10, danh sách kết thúc bằng 25.5.1, 26.5.0 và 26.7.0, và có bảy phiên bản bị đánh dấu "avoid".
Vậy một server nâng cấp lần cuối vào tháng 10/2025, ở bản 25.10.0, cần ba lần nâng cấp để lên 26.10.0. Mỗi lần đều dừng service và chạy migration, tức là có downtime.

Không có gì bất thường với một phần mềm cỡ này. Nhưng đó là việc vận hành liên tục, và phải có người chịu trách nhiệm.
Phía bên kia: một node được quản lý#
Một node Belvador chạy ba service dưới dạng package hệ thống, không dùng Docker: ClickHouse, chính node và một agent. Belvador tạo node bên trong Hetzner project của bạn. Agent kiểm tra bản release có chữ ký mỗi 15 phút, sao lưu trước rồi mới cập nhật, và rollback nếu bản mới không khởi động được. Sao lưu chạy hằng ngày, có mã hoá, và có một lần thử khôi phục mỗi tuần.
Để dễ hình dung: node production của chính Belvador là một máy CAX11 với 2 vCPU Arm và 4 GB RAM. Báo cáo health lúc 00:43 UTC ngày 26/10 cho thấy dùng 15% bộ nhớ và 18% đĩa. Đó là một lần đọc từ một node đang phục vụ vài app nhỏ, không phải một bài test tải.

Chọn bên nào cũng phải bỏ lại thứ gì đó#
Sentry tự host cho bạn gần như toàn bộ Sentry, gồm tracing, session replay và profiling. Seer và các tính năng AI khác thì không có, vì chúng là mã nguồn đóng, và code được phát hành theo Functional Source License.
Một node Belvador cho bạn ít hơn nhiều. Có theo dõi lỗi, cron và uptime, SLO, cùng trace và log OpenTelemetry. Không có replay, profiling hay kho tích hợp, và node chỉ chạy trên Hetzner Cloud. Bạn sở hữu Hetzner project và thấy được server, nhưng phần mềm node được quản lý qua app, không qua SSH.
Chọn Sentry tự host nếu bạn cần bộ tính năng của nó và có người vận hành. Chọn node được quản lý nếu bạn muốn dữ liệu nằm trên server của mình mà không phải chạy một stack 53 service. Trong cả hai trường hợp, nơi lưu dữ liệu mới chỉ là một nửa câu hỏi; nửa còn lại là nơi nhà cung cấp AI xử lý một lỗi.
Belvador nằm ở đâu#
Trang BYOC trên Hetzner giải thích thứ gì chạy ở đâu và ai đọc được nó. So sánh với Sentry tự host đặt hai bên cạnh nhau, kèm nguồn. Trước khi chuyển, checklist chuyển SDK liệt kê những gì cần thử khi đổi DSN.
Đọc tiếp#
Thuộc bài hướng dẫn: Thay thế Sentry cho ứng dụng do AI xây dựng: kiểm gì trước khi chuyển
Bài liên quan
Mọi bài viết
Sản phẩm
Thay thế Sentry cho ứng dụng do AI xây dựng: kiểm gì trước khi chuyển
Mình đặt SDK trình duyệt của Sentry và Belvador lên cùng một trang rồi ghi lại mọi thứ mỗi bên gửi. Với app do AI agent viết, mặc định, nơi lưu và bằng chứng lỗi đã tới quan trọng hơn giá.
Andrew Babo7 phút đọc

Sản phẩm
Chuyển SDK Sentry: checklist thử từng giả định
Đổi DSN là phần dễ. Mình chạy SDK Node.js chính thức của Sentry với hai cấu hình, liệt kê từng item nó gửi, và xem một backend tương thích Sentry làm gì với mỗi item.
Andrew Babo6 phút đọc
Đọc tiếp trong tài liệu
Xem lỗi production của chính bạn như thế này
Belvador chạy trên máy chủ Hetzner của chính bạn: lỗi, cron, uptime và trace — dữ liệu vẫn là của bạn.