Dữ liệu người dùng được lưu trữ trên hai cụm lưu trữ OpenStack Swift khá lớn (> 1 PB). Đặt chúng là Cụm A và Cụm B .
Ngoài ra, có một số PoP cần tương tác với dữ liệu đó. Các máy chủ trong các PoP này không có đĩa một cách hiệu quả, có nghĩa là không có dữ liệu người dùng nào được lưu trữ trên chúng hoặc từng được tải xuống chúng. PoP có thể được nhóm lại thành các khu vực chung trên thế giới (ví dụ Bắc Mỹ , Nam Phi , Trung Âu và cộng sự).
Một số PoP nằm cách các điểm cuối Swift của bất kỳ cụm nào khá xa, giới thiệu độ trễ không mong muốn. Để giảm thiểu điều này, tôi muốn thiết lập một máy chủ cổng bộ đệm trong mỗi khu vực, nơi sẽ lưu trữ các yêu cầu r / w đến cụm gần nhất.
Hiện tại, các máy khách trong bất kỳ PoP nào truy cập dữ liệu người dùng bằng hệ thống tệp ảo nhanh được gắn vĩnh viễn , là mô-đun FUSE gắn Swift Storage Storage dưới dạng một thiết bị khối (ít nhiều). Tuy nhiên, Svfs không ổn định ở nơi đầu tiên và trong tương lai, khách hàng nên truy cập vào các máy chủ bộ đệm thông qua NFS.
Đây là sơ đồ của một nhánh của kiến trúc mong muốn:
+------------------+ +------------------+ NFS +------------------+
| Cluster A | SVFS | Region 1 Cache +----------> R1 PoP a Client |
| +----------------> | | |
|Persistent Storage| |Ephemeral Storage+----+ |Generates R/W Load|
+-----------------++ +------------------+ | +------------------+
| |
| +------------------+ | NFS +------------------+
| SVFS | Region 2 Cache | +-----> R1 PoP b Client |
+-----------------> | | |
|Ephemeral Storage| |Generates R/W Load|
+------------------+ +------------------+
Tôi quen thuộc với những điều cơ bản của việc thiết lập NFS và svfs.
Câu hỏi đặt ra là : Làm cách nào tôi có thể thiết lập máy chủ bộ đệm để sử dụng tất cả các tài nguyên có sẵn (phân vùng bộ đệm được chỉ định, RAM) để lưu trữ bộ đệm một cách mạnh mẽ và càng nhiều dữ liệu càng tốt trước khi ghi vào điểm gắn kết của Svfs? Về cơ bản, nó đi xuống: Làm thế nào tôi có thể lưu trữ một thư mục trong linux?
Nếu có thể, nên đọc và ghi nên hợp nhất và kích thước khối trong các yêu cầu FUSE tối thiểu là 128k nếu có thể để tối đa hóa thông lượng và giảm thiểu độ trễ nếu bộ đệm cần ghi vào cụm.
Phụ lục 1 : Tôi đã chuyển đổi mô-đun gắn kết cụm từ svfs sang S3QL trên một số máy chủ. Bộ nhớ đệm của S3QL đã cải thiện hiệu suất một chút. Tôi sẽ cố gắng để có được một số dữ liệu hiệu suất cho đầy đủ.