Các tính năng của Giải pháp Dell EMC Sẵn sàng cho Bộ lưu trữ HPC BeeGFS

Giới thiệu

Blog này thảo luận về các tính năng nổi bật của Giải pháp Sẵn sàng của Dell EMC cho Bộ lưu trữ HPC BeeGFS đã được công bố gần đây. Đây là blog thứ ba trong loạt bài về Giải pháp lưu trữ hiệu suất cao BeeGFS. Blog đầu tiên thông báo phát hành giải pháp. Blog thứ hai đã thảo luận về Khả năng mở rộng của các Giải pháp Sẵn sàng của Dell EMC cho Bộ lưu trữ HPC BeeGFS . Nó cung cấp thông tin chi tiết về cấu hình cơ sở, cấu hình có thể mở rộng linh hoạt và hiệu suất đọc/ghi tuần tự được đo thực tế của các cấu hình khác nhau chứng minh rằng khả năng mở rộng là tuyến tính đối với số lượng máy chủ trong giải pháp. Blog hiện tại sẽ làm nổi bật việc sử dụng “StorageBench”, điểm chuẩn nhắm mục tiêu lưu trữ tích hợp của BeeGFS.

BeeGFS là một hệ thống tệp nguồn mở có thể tải xuống từ www.beegfs.io. Nó là một hệ thống tệp song song phân phối dữ liệu trên nhiều mục tiêu lưu trữ. Đó là một bộ lưu trữ được xác định bằng phần mềm tách rời hệ thống tệp logic khỏi phần cứng lưu trữ bên dưới, cho phép người dùng xác định cách thức và vị trí lưu trữ dữ liệu. Phần mềm hệ thống tệp bao gồm các tính năng dành cho doanh nghiệp như Tính khả dụng cao, Thực thi hạn ngạch và Danh sách kiểm soát truy cập. Các tính năng chính của BeeGFS là tính dễ sử dụng, khả năng mở rộng và tính linh hoạt. Tính dễ sử dụng của nó bắt nguồn từ thực tế là tất cả các thành phần phía máy chủ đều là daemon của không gian người dùng, trong khi máy khách là một mô-đun hạt nhân không yêu cầu bất kỳ bản vá nào cho chính hạt nhân. Tất cả các thành phần BeeGFS có thể được cài đặt và cập nhật mà không cần khởi động lại máy chủ. Vì vậy, chúng tôi có thể thêm máy khách và máy chủ vào hệ thống hiện có mà không có bất kỳ thời gian chết nào. Bằng cách thêm máy chủ và thúc đẩy hiệu suất và dung lượng của hệ thống tệp có thể được mở rộng hơn nữa trong blog được liên kết tại đây. BeeGFS hỗ trợ nhiều bản phân phối Linux và được thiết kế để hoạt động với mọi hệ thống tệp cục bộ tuân thủ POSIX. BeeGFS cũng hỗ trợ chạy nhiều phiên bản của một dịch vụ nhất định trên cùng một máy chủ.

Giải pháp Sẵn sàng của Dell EMC dành cho Bộ lưu trữ HPC BeeGFS tận dụng tất cả các tính năng chính của hệ thống tệp BeeGFS và được thiết kế để mang lại Hiệu suất cao. Giải pháp sử dụng máy chủ PowerEdge R740xd để lưu trữ và cung cấp/xử lý siêu dữ liệu và dữ liệu. Mỗi máy chủ PowerEdge R740xd có ổ SSD Intel P4600 NVMe 24x 1,6 TB được coi là bước nhảy vọt thứ hai trong công nghệ ổ đĩa, SSD là bước đầu tiên. Trong môi trường HPC, khoảng trống thường có thể là một yếu tố hạn chế. Nó có thể quá nhỏ hoặc quá chậm. Giải pháp sẵn sàng của Dell EMC cho Bộ lưu trữ HPC BeeGFS được thiết kế để sử dụng làm giải pháp lưu trữ sơ bộ và phục vụ lưu trữ sơ bộ bằng hệ thống tệp BeeGFS.

BeeGFS bao gồm hai công cụ đo điểm chuẩn tích hợp có thể giúp mô tả hoặc đánh giá mạng hoặc bộ lưu trữ NetBench và StorageBenchtương ứng. Khi chế độ NetBench được bật, máy chủ sẽ loại bỏ các yêu cầu ghi nhận được thay vì ghi dữ liệu. Tương tự, trong trường hợp yêu cầu đọc, thay vì đọc từ hệ thống tệp bên dưới, chỉ bộ nhớ đệm sẽ được gửi tới máy khách. Chế độ NetBench được thiết kế để kiểm tra thông lượng phát trực tuyến của mạng độc lập với các ổ đĩa bên dưới. Mặt khác, StorageBench nhằm đo lường thông lượng phát trực tuyến của hệ thống tệp cơ bản độc lập với hiệu suất mạng. StorageBench là điểm chuẩn mục tiêu lưu trữ không sử dụng mạng. Lệnh storage-bench chỉ cần gửi yêu cầu đến các mục tiêu lưu trữ để bắt đầu ghi/đọc dữ liệu. Khi làm như vậy, chúng tôi loại bỏ tác động của mạng. Đầu ra chúng tôi nhận được từ băng ghế lưu trữ là hiệu suất tốt nhất mà hệ thống có thể đạt được nếu hiệu suất mạng là lý tưởng. Blog này minh họa cách StorageBench có thể được sử dụng để so sánh hiệu suất của các mục tiêu lưu trữ khác nhau và do đó xác định các mục tiêu bị lỗi hoặc bị định cấu hình sai.


StorageBench – Để so sánh hiệu suất của các cấu hình RAID khác nhau

StorageBench không sử dụng hệ thống tệp được gắn kết. Khi chúng tôi chạy StorageBench, chỉ có một mục tiêu cho mỗi tệp. Storagebench tạo một thư mục trên mọi mục tiêu lưu trữ trên hệ thống nơi các tệp kiểm tra được tạo bằng với số luồng kiểm tra. Dữ liệu được truyền trực tiếp tới đây để hiển thị thông lượng ở mức thấp có sẵn cho từng mục tiêu lưu trữ. Không có bất kỳ giao tiếp mạng nào, không thể mô phỏng phân loại tệp. Vì vậy, kết quả điểm chuẩn lưu trữ tương đối giống với IO của máy khách bị vô hiệu hóa tính năng phân loại. Khi điểm chuẩn thực tế được chạy, tệp sẽ được chia thành 4 mục tiêu lưu trữ nếu mẫu phân chia mặc định được áp dụng. 

Với mục đích thử nghiệm các mục tiêu lưu trữ khác nhau, các cấu hình vừa và nhỏ được mô tả trong blog về Khả năng mở rộng của Giải pháp lưu trữ Dell EMC BeeGFS  đã được sử dụng. Cả hai cấu hình đều có cùng số mục tiêu siêu dữ liệu được định cấu hình trong RAID 1. Chúng khác nhau về cấu hình RAID của mục tiêu lưu trữ. Trong khi thiết lập nhỏ có mục tiêu lưu trữ được định cấu hình trong RAID 0 trên 6 ổ đĩa, cấu hình trung bình có mục tiêu lưu trữ được định cấu hình trong RAID 10 trên 6 ổ đĩa. Các mục tiêu lưu trữ được định cấu hình trên thiết lập Vừa và Nhỏ được lập bảng bên dưới:

Bảng 1 Cấu hình giường thử nghiệm
Cấu hình Trung bình – RAID 10 cho mục tiêu lưu trữ Nhỏ – RAID 0 cho mục tiêu lưu trữ
Số mục tiêu siêu dữ liệu 6 6
Số phiên bản của dịch vụ siêu dữ liệu 6 6
Số lượng máy chủ lưu trữ 5 2
Số mục tiêu lưu trữ 22 10
Số lượng dịch vụ lưu trữ trên mỗi máy chủ 4 4
Số lượng dịch vụ lưu trữ trên mỗi vùng NUMA  2 2
Số mục tiêu trên mỗi phiên bản của dịch vụ lưu trữ  2 2

Lưu ý: Cấu hình trên của thiết lập phương tiện chỉ nhằm mục đích kiểm tra thông lượng của các mục tiêu lưu trữ được định cấu hình trong các cấu hình RAID khác nhau bằng công cụ StorageBench.


StorageBench Write Benchmark – Trên cấu hình nhỏ với Mục tiêu lưu trữ được định cấu hình trong RAID 0

Điểm chuẩn lưu trữ được bắt đầu và theo dõi bằng công cụ beegfs-ctl. Gói beegfs-utils cung cấp công cụ dòng lệnh beegfs-ctl có thể được sử dụng để chạy điểm chuẩn mục tiêu lưu trữ. Ví dụ sau bắt đầu điểm chuẩn ghi trên tất cả các mục tiêu của tất cả các máy chủ lưu trữ BeeGFS với kích thước khối IO là 512KB, sử dụng 16 luồng cho mỗi mục tiêu, mỗi luồng sẽ ghi 200Gb dữ liệu vào tệp của chính nó.

[root@stor1 ~]# beegfs-ctl –storagebench –alltargets –write –blocksize=512K –size=200G –threads=16
Điểm chuẩn bộ nhớ ghi đã được bắt đầu.
Bạn có thể truy vấn trạng thái bằng đối số –status của beegfs-ctl.
Trạng thái điểm chuẩn của máy chủ:
Đang chạy: 10

Đầu ra “Đang chạy: 10” cho biết có tổng cộng 10 mục tiêu lưu trữ được định cấu hình trong hệ thống.

Để truy vấn trạng thái/kết quả điểm chuẩn của tất cả các mục tiêu, có thể thực hiện lệnh sau:

[root@stor1 ~]# beegfs-ctl –storagebench –alltargets –status
Trạng thái điểm chuẩn của máy chủ:
Đã hoàn thành: 10
Ghi kết quả điểm chuẩn:
Thông lượng tối thiểu: 4692435 KiB/giây ID nút: stor1-numa0-2 [ID: 6], targetID: 50
Thông lượng tối đa: 5368537 KiB/s nodeID: meta-stor-numa1-2 [ID: 2], targetID: 48
Thông lượng trung bình: 4907091 KiB/s
Thông lượng tổng hợp: 49070915 KiB/s

Thêm tiết vào lệnh trên, hiển thị danh sách tất cả các mục tiêu và thông lượng tương ứng của chúng.

[root@meta-stor ~]# beegfs-ctl –storagebench –alltargets –status –verbose
Trạng thái điểm chuẩn của máy chủ:
Đã hoàn thành: 10
Viết kết quả điểm chuẩn:
Thông lượng tối thiểu: 4692435 KiB/giây ID nút: stor1-numa0-2 [ ID: 6], targetID: 6
Thông lượng tối đa: 5368537 KiB/s nodeID: meta-stor-numa1-2 [ID: 2], targetID: 2
Thông lượng trung bình: 4907091 KiB/s
Thông lượng tổng hợp: 49070915 KiB/s
Danh sách tất cả mục tiêu:
1 5368477 KiB/s nútID: meta-stor-numa1-1 [ID: 1]
2 5368537 KiB/s nútID: meta-stor-numa1-2 [ID: 2]
3 4706368 KiB/s nútID: stor1-numa0 -1 [ID: 3]
4 4896077 KiB/s nodeID: stor1-numa1-1 [ID: 4]
5 4872876 KiB/s nútID: stor1-numa1-2 [ID: 5]
6 4692435 KiB/s nútID: stor1-numa0-2 [ID: 6]
7 4879054 KiB/s nútID: stor2-numa1-2 [ID: 7 ]
8 4864737 KiB/s nútID: stor2-numa1-1 [ID: 8]
9 4696152 KiB/s nútID: stor2-numa0-1 [ID: 9]
10 4726202 KiB/s nútID: stor2-numa0-2 [ID: 10]

Suy luận từ đầu ra:

Thông lượng trung bình cho mỗi mục tiêu lưu trữ được định cấu hình trong RAID 0 là 5,02 GB/giây.  


StorageBench Write Benchmark – Trên cấu hình Trung bình với Mục tiêu lưu trữ được định cấu hình trong RAID 10

Ví dụ sau bắt đầu điểm chuẩn ghi trên tất cả các mục tiêu của tất cả các máy chủ lưu trữ BeeGFS với kích thước khối IO là 512KB, sử dụng 16 luồng cho mỗi mục tiêu, mỗi luồng sẽ ghi 200Gb dữ liệu vào tệp của chính nó.

[root@node001 ~]# beegfs-ctl –storagebench –alltargets –write –blocksize=512K –size=200G –threads=16
Điểm chuẩn ghi bộ nhớ đã được bắt đầu.
Bạn có thể truy vấn trạng thái bằng đối số –status của beegfs-ctl.
Trạng thái điểm chuẩn của máy chủ:
Đang chạy: 22

Thêm tiết vào lệnh trên, hiển thị danh sách tất cả các mục tiêu và thông lượng tương ứng của chúng.

[root@node001 ~]# beegfs-ctl –storagebench –alltargets –status –verbose
Trạng thái điểm chuẩn của máy chủ:
Đã hoàn thành: 22
Viết kết quả điểm chuẩn:
Thông lượng tối thiểu: 2705987 KiB/giây ID nút: node006-numa0-1 [ID: 19], targetID: 1
Thông lượng tối đa: 3364311 KiB/s nodeID: node001-numa1-1 [ID: 1], targetID: 1
Thông lượng trung bình: 3212845 KiB/s
Thông lượng tổng hợp: 70682603 KiB/s

Danh sách tất cả các mục tiêu:
1 3364311 KiB/s nodeID: node001-numa1-1 [ID: 1]
2 3361591 KiB/s nodeID: node001-numa1-2 [ID: 2]
3 3309530 KiB/s nodeID: node002-numa0- 1 [ID: 3]
4 3312840 KiB/giây nútID: nút002-numa0-2 [ID: 4]
5 3332095 KiB/giây nútID: nút002-numa1-1 [ID: 5]
6 3323319 KiB/giây nútID: nút002-numa1 -2 [ID: 6]
7 3313000 KiB/giây nútID: node003-numa0-1 [ID: 7]
8 3321214 KiB/giây nútID: node003-numa0-2 [ID: 8]
9 3335072 KiB/giây nútID: node003- số1-1 [ID: 9]
10 3339743 KiB/s nútID: node003-numa1-2 [ID: 10]
11 3302175 KiB/s nútID: node004-numa0-1 [ID: 11]
12 3309474 KiB/s nútID: node004-numa0-2 [ID: 12 ]
13 3329879 KiB/giây nodeID: node004-numa1-1 [ID: 13]
14 3328291 KiB/giây nodeID: node004-numa1-2 [ID: 14]
15 3306132 KiB/giây nodeID: node005-numa0-1 [ID: 15]
16 3307096 KiB/giây nodeID: node005-numa0-2 [ID: 16]
17 3318436 KiB/giây nodeID: node005-numa1-1 [ID: 17]
18 3329684 KiB/giây nodeID: node005-numa1-2 [ID : 18]
19 2705987 KiB/giây nodeID: node006-numa0-1 [ID: 19]
20 2716438 KiB/giây nodeID: node006-numa0-2 [ID: 20]
21 2707970 KiB/giây nodeID: node006-numa1-1 [ID: 21 ]
22 2708326 KiB/s nodeID: node006-numa1-2 [ID: 22]

Suy luận từ đầu ra:

Thông lượng trung bình cho mỗi mục tiêu lưu trữ là 3,29 GB/giây.

Từ đầu ra của các bài kiểm tra điểm chuẩn StorageBench được thực hiện trên hai thiết lập BeeGFS khác nhau, một với Mục tiêu lưu trữ được định cấu hình trong RAID 0 và một mục tiêu khác với Mục tiêu lưu trữ được định cấu hình trong RAID 10, rõ ràng là hiệu suất ghi tốt hơn với các mục tiêu lưu trữ được định cấu hình trong RAID 0 thay vì trong RAID 10. Khi lệnh dd được sử dụng để ghi tệp 10G với kích thước khối 1M và “ofrag=direct”, tốc độ trung bình là khoảng 5,1 GB/giây cho hệ thống nhỏ được định cấu hình trong RAID 0 trong khi thông lượng trung bình là khoảng 3,4 GB /s cho hệ thống trung bình được định cấu hình trong RAID 10, có thể so sánh với kết quả thu được bằng công cụ storagebench. 


StorageBench – Để xác định các mục tiêu lưu trữ bị lỗi hoặc bị định cấu hình sai

StorageBench đã được chạy trên cấu hình trung bình được mô tả trong blog thông báo để tìm hiểu xem có bất kỳ mục tiêu lưu trữ nào bị cấu hình sai hoặc bị lỗi trong hệ thống hay không.

[root@node001 ~]# beegfs-ctl –storagebench –alltargets –status –verbose
Trạng thái điểm chuẩn của máy chủ:
Đã hoàn thành: 33
Đọc kết quả điểm chuẩn:
Thông lượng tối thiểu: 2830479 KiB/giây ID nút: node003-numa1-2 [ID: 14], targetID: 14
​​Thông lượng tối đa: 3025500 KiB/s nodeID: node005-numa0-1 [ID: 22], targetID: 22
Thông lượng trung bình: 2917836 KiB/s
Thông lượng tổng hợp: 96288596 KiB/s
Danh sách tất cả các mục tiêu:
1 2950039 KiB/s nodeID: node001-numa1-1 [ID: 1]
2 2956121 KiB/s nodeID: node001-numa1-2 [ID: 2]
3 2954473 KiB/s nodeID: node001-numa1-3 [ID: 3]
4 2957658 KiB/s nodeID: node002-numa0-1 [ID: 4]
5 2947109 KiB/s nodeID: node002-numa0-2 [ID: 5]
6 2969886 KiB/s nodeID: node002-numa0-3 [ID: 6 ]
7 2892578 KiB/giây nodeID: node002-numa1-1 [ID: 7]
8 2886899 KiB/giây nodeID: node002-numa1-2 [ID: 8]
9 2888972 KiB/giây nodeID: node002-numa1-3 [ID: 9]
10 2861995 KiB/giây nodeID: node003-numa0-1 [ID: 10]
11 2874314 KiB/giây nodeID: node003-numa0-2 [ID: 11]
12 2879096 KiB/giây nodeID: node003-numa0-3 [ID : 12]
13 2832635 KiB/s nútID: nút003-numa1-1 [ID: 13]
14 2830479 KiB/giây nodeID: node003-numa1-2 [ID: 14]
15 2830971 KiB/giây nodeID: node003-numa1-3 [ID: 15]
16 2986890 KiB/giây nodeID: node004-numa0-1 [ID: 16 ]
17 2979197 KiB/giây nodeID: node004-numa0-2 [ID: 17]
18 2983958 KiB/giây nodeID: node004-numa0-3 [ID: 18]
19 2897974 KiB/giây nodeID: node004-numa1-1 [ID: 19]
20 2900880 KiB/s nútID: nút004-numa1-2 [ID: 20]
21 2904036 KiB/s nútID: nút004-numa1-3 [ID: 21]
22 3025500 KiB/s nútID: nút005-numa0-1 [ID : 22]
23 3021558 KiB/s nodeID: node005-numa0-2 [ID: 23]
24 3017387 KiB/s nodeID: node005-numa0-3 [ID: 24]
25 2921480 KiB/s nodeID: node005-numa1-1 [ID: 25]
26 2930226 KiB/s nodeID: node005-numa1-2 [ID: 26 ]
27 2930548 KiB/giây nodeID: node005-numa1-3 [ID: 27]
28 2900018 KiB/giây nodeID: node006-numa0-1 [ID: 28]
29 2898520 KiB/giây nodeID: node006-numa0-2 [ID: 29]
30 2907113 KiB/giây nodeID: node006-numa0-3 [ID: 30]
31 2855079 KiB/giây nodeID: node006-numa1-1 [ID: 31]
32 2853527 KiB/giây nodeID: node006-numa1-2 [ID : 32]
33 2861480 KiB/giây nútID: nút006-numa1-3 [ID: 33]

Từ đầu ra trên, rõ ràng là tất cả các mục tiêu lưu trữ hoạt động thống nhất và không có mục tiêu bị lỗi trong hệ thống.


Kết luận và công việc trong tương lai

Blog này đã thảo luận về các tính năng chính của BeeGFS và giải thích tính hữu ích của tiêu chuẩn băng ghế lưu trữ để đánh giá hoặc so sánh hiệu suất của các cấu hình RAID khác nhau và cũng để xác định xem có bất kỳ mục tiêu lưu trữ nào bị lỗi hoặc bị định cấu hình sai hay không. Là một phần của các bước tiếp theo, chúng tôi sẽ xuất bản sách trắng sau với hiệu suất siêu dữ liệu và hiệu suất IOR cùng với các chi tiết bổ sung về cân nhắc thiết kế, điều chỉnh và cấu hình.