- Tự xây dựng hệ thống lưu trữ S3 riêng bằng laptop Framework và JBOD, vận hành dung lượng 10TB với chi phí thấp và hoạt động ổn định suốt 4 tháng mà không cần quản trị
- Dùng một chiếc laptop Framework cũ không có màn hình để cài ZFS và garage S3 rồi tận dụng làm máy chủ gia đình, hiện được dùng làm kho lưu trữ dung lượng lớn cho dự án theo dõi SDK của AppGoblin
- Sau 4 tháng hoàn toàn không đụng tới máy chủ, khi đăng nhập lại thì thấy 10TB đã được sử dụng và hệ thống đang chờ nâng cấp, nhưng sau khi khởi động lại mọi thứ vẫn hoạt động bình thường
- Quá trình nâng cấp garage S3 từ v1 lên v2 cũng hoàn tất suôn sẻ, cho thấy trải nghiệm vận hành ổn định
- Ban đầu có vấn đề với cấu hình ZFS không theo chuẩn khi kết nối laptop và JBOD qua USB, nhưng đã giải quyết bằng cách chuyển metadata vào bộ nhớ trong của laptop
Bối cảnh và động lực của dự án
- Quyết định tự host S3 từ 5 tháng trước
- Đang thực hiện công việc theo dõi SDK của 100.000 ứng dụng Android và iOS hàng đầu của AppGoblin
- Cần không gian lưu trữ lớn nhưng muốn tiết kiệm chi phí
- Chọn phương án tự host thay vì dùng cloud S3 hiện có
Cấu hình phần cứng
- Sử dụng laptop Framework
- Mua được một chiếc laptop Framework cũ không có màn hình với giá rẻ
- Vì là mẫu đời cũ nên phù hợp để dùng làm máy chủ tại nhà
- Tận dụng tính di động và mức tiêu thụ điện thấp của laptop
- Bổ sung JBOD (Just a Bunch of Disks)
- Mảng ổ đĩa ngoài để lưu trữ dung lượng lớn
- Kết nối với laptop qua USB
Ngăn xếp phần mềm
- Hệ thống tệp ZFS
- Cung cấp tính toàn vẹn dữ liệu và tính năng snapshot
- Cấu hình JBOD thành một pool ZFS
- garage S3
- Giải pháp lưu trữ phân tán tương thích S3, gọn nhẹ
- Dự án mã nguồn mở do Deuxfleurs phát triển
- Cung cấp khả năng tương thích với S3 API
Vận hành không quản trị trong 4 tháng
- Sau khi cài đặt, 4 tháng hoàn toàn không cần để tâm đến máy chủ
- Dù đi du lịch, làm việc và bận rộn với cuộc sống thường ngày, S3 vẫn được sử dụng liên tục
- Không cần phải nghĩ gì về máy chủ
- Những gì phát hiện sau khi đăng nhập lại
- Đã sử dụng hết 10TB dung lượng lưu trữ
- Hệ thống kiên nhẫn chờ được khởi động lại để nâng cấp
- Kết quả sau khi khởi động lại
- Khởi động lại trong tâm trạng đầy căng thẳng
- Mọi thứ hoạt động trở lại bình thường, đem lại cảm giác nhẹ nhõm
Nâng cấp garage S3
- Nâng cấp từ v1 lên v2
- Phát hiện bản nâng cấp major version đã chờ sẵn
- Quá trình nâng cấp diễn ra không gặp vấn đề gì
- Được đánh giá là một cuối tuần tuyệt vời
Cảnh báo kỹ thuật và cách xử lý
- Nhận thức về cấu hình ZFS không theo chuẩn
- Kết nối laptop và JBOD qua USB là một trường hợp sử dụng ZFS hơi khác chuẩn
- Đã nhận được cảnh báo về điều này từ cộng đồng Reddit
- Sự cố ban đầu phát sinh
- Khi garage thực hiện đọc và ghi với khối lượng lớn thì xảy ra vấn đề với ZFS
- Ở cấu hình ban đầu, metadata SQLite cũng được lưu trên JBOD/ZFS
- Cách giải quyết vấn đề
- Chuyển metadata sang bộ nhớ trong của laptop
- Sau đó vấn đề với ZFS được giải quyết và hệ thống hoạt động ổn định
3 bình luận
Việc dám thử tự host đã là rất đáng nể.
Dù mức giá chênh lệch khá nhiều, có vẻ như bo mạch chủ của Framework đã trở thành Raspberry Pi của thời hiện đại.
Ý kiến trên Hacker News