Tôi muốn chia sẻ dữ liệu giữa nhiều phiên bản AWS theo cách hiệu suất cao, độ trễ thấp.Cấp quyền truy cập chỉ đọc cho tất cả các phiên bản (ngoại trừ một phiên bản có thể xử lý ghi) là được. Hai điểm về trường hợp sử dụng này:
- Các nút được gắn vào tập có thể đến và đi bất cứ lúc nào (bắt đầu, dừng, kết thúc, v.v.).
- Dữ liệu được chia sẻ bao gồm hàng nghìn tệp có thể nhỏ cần được liệt kê và kiểm tra siêu dữ liệu.
Vì vậy, ban đầu tôi đã thử EFS, nhưng nó khá chậm đối với các hoạt động cần liệt kê hoặc sửa đổi 100 hoặc 1000 tệp nhỏ.
Vì vậy, bây giờ tôi đang xem xét tính năng đa tệp đính kèm của EBS. Tuy nhiên, để ngăn ngừa hỏng dữ liệu, AWS khuyến nghị chỉ sử dụng hệ thống tệp phân cụm như GFS2 hoặc OCFS. Cả hai thứ này đều có vẻ phức tạp và khó định cấu hình, cũng như dễ vỡ đối với trường hợp sử dụng của một cụm nơi các nút có thể đến và đi bất cứ lúc nào. Ví dụ: GFS2 yêu cầu khởi động lại phần mềm cụm trên tất cả các nút nếu số lượng nút tăng từ hơn 2 xuống còn chính xác 2; hoặc, thêm một nút mới liên quan đến việc đăng nhập vào nút hiện tại, chạy một số lệnh và có thể phân phối lại tệp cấu hình đã cập nhật cho tất cả các nút khác. Nó chỉ có vẻ thực sự không linh hoạt cũng như rất nhiều chi phí bổ sung.
Nhưng nếu tôi chắc chắn rằng chỉ có 1 phiên bản thực hiện ghi vào đĩa (hoặc có thể mỗi phiên bản chỉ có thể ghi vào thư mục con của chính nó hoặc thậm chí phân vùng đĩa), thì tôi có thể sử dụng một hệ thống tệp thông thường như XFS cho ổ đĩa này và thoát khỏi nó không ? Hoặc sẽ có các sự cố hỏng dữ liệu tinh vi ngay cả khi quyền truy cập về mặt kỹ thuật là chỉ đọc hoặc quyền truy cập ghi bị hạn chế đối với các thư mục con hoặc phân vùng dành riêng cho phiên bản?
Hoặc có một giải pháp hoàn toàn khác mà tôi đang thiếu?