Giải pháp sẵn sàng cho Bộ lưu trữ hiệu suất cao HPC BeeGFS: Làm mới HDR100

Giới thiệu

Đúng với truyền thống bắt kịp các xu hướng công nghệ, Giải pháp sẵn sàng của Dell EMC dành cho Bộ lưu trữ hiệu suất cao BeeGFS , ban đầu được phát hành vào tháng 11 năm 2019, hiện đã được làm mới với phần mềm và phần cứng mới nhất. Kiến trúc cơ bản của giải pháp vẫn giữ nguyên. Bảng sau đây liệt kê sự khác biệt giữa giải pháp dựa trên InfiniBand EDR được phát hành lần đầu và giải pháp dựa trên InfiniBand HDR100 hiện tại về mặt phần mềm và phần cứng được sử dụng. 

Bảng 1. So sánh Phần cứng và Phần mềm của Giải pháp hiệu suất cao BeeGFS dựa trên EDR và ​​HDR 

Phần mềm  Bản phát hành đầu tiên (tháng 11 năm 2019)  Làm mới hiện tại (tháng 11 năm 2020)
Hệ điều hành CentOS 7.6 CentOS 8.2.
Phiên bản hạt nhân 3.10.0-957.27.2.el7.x86_64 4.18.0-193.14.2.el8_2.x86_64
Phiên bản hệ thống tệp BeeGFS 7.1.3 7.2
Phiên bản Mellanox OFED 4.5-1.0.1.0 5.0-2.1.8.0
Phần cứng  Phát hành lần đầu  Làm mới hiện tại
Ổ đĩa NVMe Intel P4600 1,6 TB Sử dụng hỗn hợp Intel P4610 3,2 TB Sử dụng hỗn hợp
Bộ điều hợp InfiniBand ConnectX-5 Cổng đơn EDR ConnectX-6 Cổng đơn HDR100
Công tắc InfiniBand SB7890 Công tắc InfiniBand EDR 100 Gb/giây -1U (36x cổng EDR 100 Gb/giây) QM8790 Quantum HDR Edge Switch – 1U (80x HDR100 100 Gb/s cổng sử dụng cáp chia) 

 Blog này trình bày kiến ​​trúc, thông số kỹ thuật được cập nhật và đặc tính hiệu suất của giải pháp hiệu suất cao được nâng cấp. Nó cũng bao gồm việc so sánh hiệu suất với giải pháp dựa trên EDR trước đó .

Kiến trúc tham khảo giải pháp

Kiến trúc cấp cao của giải pháp vẫn giống như bản phát hành ban đầu. Các thành phần phần cứng của giải pháp bao gồm 1x PowerEdge R640 làm máy chủ quản lý và 6x máy chủ PowerEdge R740xd làm máy chủ lưu trữ/siêu dữ liệu để lưu trữ các mục tiêu lưu trữ và siêu dữ liệu. Mỗi máy chủ PowerEdge R740xd được trang bị 24 ổ đĩa Flash tốc độ hỗn hợp Intel P4610 3,2 TB và 2 bộ điều hợp Mellanox ConnectX-6 HDR100. Hình 1 cho thấy cấu trúc tham chiếu của giải pháp. 

 

Hình 1. Các giải pháp sẵn sàng của Dell EMC cho Bộ lưu trữ HPC BeeGFS – Kiến trúc tham khảo

Có hai mạng-mạng InfiniBand và mạng Ethernet riêng. Máy chủ quản lý chỉ được kết nối qua Ethernet với máy chủ lưu trữ và siêu dữ liệu. Mỗi siêu dữ liệu và máy chủ lưu trữ có 2x liên kết đến mạng InfiniBand và được kết nối với mạng riêng qua Ethernet. Máy khách có một liên kết InfiniBand và cũng được kết nối với mạng Ethernet riêng. Để biết thêm chi tiết về cấu hình giải pháp, vui lòng tham khảo blog và sách trắng về Giải pháp hiệu suất cao BeeGFS được xuất bản tại hpcatdell.com .

Cấu hình phần cứng và phần mềm

Bảng 2 và 3 lần lượt mô tả các thông số kỹ thuật phần cứng của máy chủ quản lý và máy chủ lưu trữ/siêu dữ liệu. Bảng 4 mô tả các phiên bản của phần mềm được sử dụng cho giải pháp.

Bảng 2. Cấu hình PowerEdge R640 (Máy chủ quản lý)

Thành phần Sự miêu tả
bộ vi xử lý 2 x Intel Xeon Gold 5218 2.3GHz, 16 nhân
Trí nhớ 12 x 8GB DIMM DDR4 2666MT/s – 96GB
Đĩa cục bộ 6 ổ cứng 300GB 15K RPM SAS 2.5in
Bộ điều khiển RAID Bộ điều khiển RAID tích hợp PERC H740P
Quản lý ngoài băng tần iDRAC9 Enterprise với Bộ điều khiển vòng đời

Bảng 3. Cấu hình PowerEdge R740xd (Siêu dữ liệu và Máy chủ lưu trữ)

Thành phần Sự miêu tả
bộ vi xử lý 2x CPU Intel Xeon Platinum 8268 @ 2.90GHz, 24 lõi
Trí nhớ 12 x 32GB DIMM DDR4 2933MT/s – 384GB
Thẻ BOSS 2 ổ SSD M.2 SATA 240GB trong RAID 1 cho hệ điều hành
Ổ đĩa cục bộ 24x Dell Express Flash NVMe P4610 3,2 TB 2,5” U.2
Bộ điều hợp InfiniBand 2x Bộ chuyển đổi HDR100 một cổng Mellanox ConnectX-6
Chương trình cơ sở bộ điều hợp InfiniBand 20.26.4300
Quản lý ngoài băng tần iDRAC9 Enterprise với Bộ điều khiển vòng đời

 Bảng 4. Cấu hình phần mềm (Siêu dữ liệu và Máy chủ lưu trữ)

Thành phần Sự miêu tả
Hệ điều hành Bản phát hành CentOS Linux 8.2.2004 (Lõi)
Phiên bản hạt nhân 4 4.18.0-193.14.2.el8_2.
Mellanox OFED 5.0-2.1.8.0
SSD NVMe VDV1DP23
OpenMPI 4.0.3rc4
Công cụ trung tâm dữ liệu Intel phiên bản 3.0.26
BeeGFS  7.2
Grafana 7.1.5-1
InfluxDB 1.8.2-1
Iozone 3.490
mdtest 3.3.0+nhà phát triển

Đánh giá hiệu suất

Hiệu suất hệ thống được đánh giá bằng cách sử dụng các điểm chuẩn sau:

  • IOzone NN tuần tự
  • IOzone ngẫu nhiên 
  • MDT

Các thử nghiệm hiệu suất đã được chạy trên một nền tảng thử nghiệm với các máy khách như được mô tả trong Bảng 5. Đối với các trường hợp thử nghiệm trong đó số lượng luồng IO lớn hơn số lượng máy khách IO vật lý, các luồng được phân phối đồng đều trên các máy khách (nghĩa là 32 luồng = 2 luồng trên mỗi máy khách…,1024 luồng = 64 luồng trên mỗi nút).  

Bảng 5. Cấu hình máy khách

Thành phần Sự miêu tả
Mô hình máy chủ 8x PowerEdge R840 

8x PowerEdge C6420

bộ vi xử lý 4x CPU Intel(R) Xeon(R) Platinum 8260 @ 2.40GHz, 24 lõi (R840)

2x CPU Intel(R) Xeon(R) Gold 6248 @ 2.50GHz, 20 lõi (C6420) 

Trí nhớ 24 x 16GB DIMM DDR4 2933MT/s – 384GB (R840)

12 x 16GB DIMM DDR4 2933MT/s – 192 GB (C6420)

Hệ điều hành 4.18.0-193.el8.x86_64
Phiên bản hạt nhân Bản phát hành Red Hat Enterprise Linux 8.2 (Ootpa)
Bộ điều hợp InfiniBand 1x Bộ chuyển đổi HDR100 một cổng ConnectX-6
phiên bản OFED 5.0-2.1.8.0

Đọc và ghi tuần tự NN

Điểm chuẩn IOzone được sử dụng trong chế độ đọc và ghi tuần tự để đánh giá các lần đọc và ghi tuần tự. Các thử nghiệm này được tiến hành bằng cách sử dụng nhiều số lượng luồng bắt đầu từ 1 luồng và tối đa 1024 luồng. Tại mỗi lần đếm luồng, số lượng tệp bằng nhau được tạo do thử nghiệm này hoạt động trên một tệp trên mỗi luồng hoặc trường hợp NN. Thuật toán vòng tròn được sử dụng để chọn mục tiêu tạo tệp theo kiểu xác định. 

Đối với tất cả các bài kiểm tra, kích thước tệp tổng hợp là 8 TB và dung lượng này được chia đều cho số lượng chuỗi cho bất kỳ bài kiểm tra cụ thể nào. Kích thước tệp tổng hợp được chọn đủ lớn để giảm thiểu tác động của bộ nhớ đệm từ máy chủ cũng như từ máy khách BeeGFS.

IOzone được chạy ở chế độ ghi rồi đọc kết hợp (-i 0, -i 1) để cho phép nó phối hợp ranh giới giữa các hoạt động. Đối với thử nghiệm này, chúng tôi đã sử dụng kích thước bản ghi 1MiB cho mỗi lần chạy. Các lệnh được sử dụng cho các bài kiểm tra NN tuần tự được đưa ra dưới đây:

Đọc và ghi tuần tự : iozone -i 0 -i 1 -c -e -w -r 1m -I -s $Size -t $Thread -+n -+m /path/to/threadlist

Bộ đệm của hệ điều hành cũng bị loại bỏ hoặc làm sạch trên các nút máy khách giữa các lần lặp lại cũng như giữa các lần kiểm tra ghi và đọc bằng cách chạy lệnh:

# sync && echo 3 > /proc/sys/vm/drop_caches

Số lượng sọc mặc định cho BeeGFS là 4. Tuy nhiên, kích thước khối và số lượng mục tiêu trên mỗi tệp có thể được định cấu hình trên cơ sở từng thư mục. Đối với tất cả các thử nghiệm này, kích thước sọc BeeGFS được chọn là 2 MB và số sọc được chọn là 3 vì chúng tôi có ba mục tiêu trên mỗi vùng NUMA như hình bên dưới: 

# beegfs-ctl –getentryinfo –mount=/mnt/beegfs /mnt/beegfs/benchmark –verbose

Loại mục nhập: thư mục

ID mục nhập: 0-5F6417B3-1

ParentID: gốc

Nút siêu dữ liệu: storage1-numa0-2 [ID: 2]

Chi tiết họa tiết kẻ sọc:

+ Loại: RAID0

Kích thước khối: 2M

+ Số mục tiêu lưu trữ: mong muốn: 3

+ Nhóm lưu trữ: 1 (Mặc định)

Đường dẫn băm inode: 33/57/0-5F6417B3-1 

Phương pháp thử nghiệm và các tham số điều chỉnh được sử dụng tương tự như các phương pháp được mô tả trước đây trong giải pháp dựa trên EDR . Để biết thêm chi tiết về vấn đề này, vui lòng tham khảo sách trắng về Giải pháp hiệu suất cao của BeeGFS .

Lưu ý : 

Số lượng máy khách được sử dụng để mô tả đặc tính hiệu suất của giải pháp dựa trên EDR là 32 trong khi số lượng máy khách được sử dụng để mô tả đặc tính hiệu suất của giải pháp dựa trên HDR100 chỉ là 16. Trong các biểu đồ hiệu suất được cung cấp bên dưới, điều này được biểu thị bằng cách bao gồm 16c biểu thị 16 khách hàng và 32c biểu thị 32 khách hàng. Các đường chấm chấm thể hiện hiệu suất của giải pháp dựa trên EDR và ​​các đường liền nét thể hiện hiệu suất của giải pháp dựa trên HDR100.

 

Hình 2. Kích thước tệp tổng hợp IOzone 8 TB tuần tự 

Từ Hình 2, chúng tôi quan sát thấy rằng hiệu suất đọc cao nhất của HDR100 là ~131 GB/giây và ghi cao nhất là ~123 GB/giây ở 1024 luồng. Theo thông số kỹ thuật của SSD Intel P4610 3,2 TB NVMe , mỗi ổ có thể cung cấp hiệu suất đọc tối đa 3,2 GB/giây và hiệu suất ghi tối đa 3,0 GB/giây, cho phép tốc độ đọc cao nhất theo lý thuyết là 460,8 GB/giây và 432 GB/giây s cho giải pháp. Tuy nhiên, trong giải pháp này, mạng là yếu tố hạn chế. Trong quá trình thiết lập, chúng tôi có tổng cộng 11 liên kết InfiniBand HDR100 cho các máy chủ lưu trữ. Mỗi liên kết có thể cung cấp hiệu suất cao nhất theo lý thuyết là 12,4 GB/giây, cho phép hiệu suất cao nhất theo lý thuyết tổng hợp là 136,4 GB/giây. Hiệu suất đọc và ghi cao nhất đạt được lần lượt là 96% và 90% so với hiệu suất cao nhất theo lý thuyết.

Chúng tôi quan sát thấy rằng hiệu suất đọc cao nhất đối với giải pháp dựa trên HDR100 thấp hơn một chút so với hiệu suất ghi được ở giải pháp dựa trên EDR. Điều này có thể là do các bài kiểm tra điểm chuẩn được thực hiện bằng cách sử dụng 16 máy khách cho thiết lập dựa trên HDR100 trong khi giải pháp dựa trên EDR sử dụng 32 máy khách. Hiệu suất ghi được cải thiện với HDR100 là do  SSD P4600 NVMe được sử dụng trong giải pháp dựa trên EDR chỉ có thể cung cấp tốc độ ghi tuần tự 1,3 GB/giây trong khi SSD P4610 NVMe cung cấp hiệu suất ghi tối đa 3 GB/giây.

Chúng tôi cũng quan sát thấy rằng hiệu suất đọc thấp hơn hiệu suất ghi đối với số luồng từ 16 đến 128. Điều này là do thao tác đọc PCIe là Thao tác không đăng, yêu cầu cả yêu cầu và hoàn thành, trong khi thao tác ghi PCIe là Thao tác đăng chỉ bao gồm một yêu cầu. Thao tác ghi PCIe là thao tác kích hoạt và quên, trong đó sau khi Gói lớp giao dịch được chuyển giao cho Lớp liên kết dữ liệu, thao tác sẽ hoàn tất. 

Thông lượng đọc thường thấp hơn thông lượng ghi vì các lần đọc yêu cầu hai giao dịch thay vì một lần ghi cho cùng một lượng dữ liệu. PCI Express sử dụng mô hình giao dịch phân tách để đọc. Giao dịch đọc bao gồm các bước sau:

  • Người yêu cầu gửi Yêu cầu đọc bộ nhớ (MRR).
  • Trình hoàn thành gửi xác nhận tới MRR.
  • Trình hoàn thành trả về một Hoàn thành có Dữ liệu. 

 Thông lượng đọc phụ thuộc vào độ trễ giữa thời gian yêu cầu đọc được đưa ra và thời gian trình hoàn thành trả lại dữ liệu. Tuy nhiên, khi ứng dụng đưa ra đủ số lượng yêu cầu đọc để bù đắp độ trễ này, thì thông lượng sẽ được tối đa hóa. Thông lượng thấp hơn được đo khi người yêu cầu đợi hoàn thành trước khi đưa ra các yêu cầu tiếp theo. Thông lượng cao hơn được đăng ký khi nhiều yêu cầu được đưa ra để phân bổ độ trễ sau khi dữ liệu đầu tiên trả về. Điều này giải thích tại sao hiệu suất đọc thấp hơn hiệu suất ghi từ 16 luồng đến 128 luồng và sau đó thông lượng tăng lên được quan sát thấy đối với số lượng luồng cao hơn là 256, 512 và 1024.  

Thông tin chi tiết khác về Truy cập bộ nhớ trực tiếp PCI Express hiện có tại   https://www.intel.com/content/www/us/en/programmable/documentation/nik1412547570040.html#nik1412547565760

Đọc và ghi ngẫu nhiên NN

IOzone được sử dụng ở chế độ ngẫu nhiên để đánh giá hiệu suất IO ngẫu nhiên. Các thử nghiệm được tiến hành với số lượng luồng bắt đầu từ 8 luồng đến tối đa 1024 luồng. Tùy chọn IO trực tiếp (-I) đã được sử dụng để chạy IOzone để tất cả các hoạt động bỏ qua bộ nhớ cache của bộ đệm và đi trực tiếp vào đĩa. Số lượng sọc BeeGFS là 3 và kích thước khối là 2 MB đã được sử dụng. Kích thước yêu cầu 4KiB đã được sử dụng trên IOzone và hiệu suất được đo bằng hoạt động I/O mỗi giây (IOPS). Kích thước tệp tổng hợp là 8 TB đã được chọn để giảm thiểu tác động của bộ nhớ đệm. Kích thước tệp tổng hợp được chia đều cho số lượng luồng trong bất kỳ thử nghiệm cụ thể nào. Bộ đệm hệ điều hành đã bị loại bỏ giữa các lần chạy trên máy chủ BeeGFS cũng như máy khách BeeGFS. 

Lệnh được sử dụng để đọc và ghi ngẫu nhiên được đưa ra dưới đây:

iozone -i 2 -w -c -O -I -r 4K -s $Size -t $Thread -+n -+m /path/to/threadlist

Hình 3. Hiệu suất Ngẫu nhiên NN

Hình 3 cho thấy đỉnh ghi ngẫu nhiên ở mức ~4,3 triệu IOPS ở 1024 luồng và đỉnh đọc ngẫu nhiên ở mức ~4,2 triệu IOPS ở 1024 luồng. Cả hiệu suất ghi và đọc đều cho thấy hiệu suất cao hơn khi có nhiều yêu cầu IO hơn. Điều này là do tiêu chuẩn NVMe hỗ trợ tối đa 64K hàng đợi I/O và tối đa 64K lệnh trên mỗi hàng đợi. Nhóm hàng đợi NVMe lớn này cung cấp mức độ song song I/O cao hơn và do đó chúng tôi quan sát thấy IOPS vượt quá 3 triệu. Bảng sau đây cung cấp so sánh hiệu suất IO ngẫu nhiên của SSD P4610 và P4600 NVMe để hiểu rõ hơn về kết quả quan sát được.

Bảng 6. Thông số hiệu suất của SSD Intel NVMe

Sản phẩm SSD P4610 3,2 TB NVMe SSD P4600 1,6 TB NVMe
Đọc ngẫu nhiên (100% Span) 638000 IOPS 559550 IOPS
Viết ngẫu nhiên (100% Span) 222000 IOPS 176500 IOPS

 

Kiểm tra siêu dữ liệu

Hiệu suất siêu dữ liệu được đo bằng MDtest và OpenMPI để chạy điểm chuẩn trên 16 máy khách. Điểm chuẩn được sử dụng để đo lường hiệu suất tạo, thống kê và xóa tệp của giải pháp. Vì kết quả hiệu suất có thể bị ảnh hưởng bởi tổng số IOP, số lượng tệp trên mỗi thư mục và

số lượng luồng, số lượng tệp nhất quán trong các thử nghiệm đã được chọn để cho phép so sánh. Tổng số tệp được chọn là ~ 2 triệu lũy thừa hai (2^21 = 2097152). Số lượng tệp trên mỗi

thư mục đã được sửa ở 1024 và số lượng thư mục thay đổi khi số lượng luồng thay đổi. Phương pháp thử nghiệm và các thư mục được tạo tương tự như mô tả trong blog trước.

 Lệnh sau được sử dụng để thực thi điểm chuẩn:

 mpirun -machinefile $hostlist –map-by node -np $threads ~/bin/mdtest -i 3 -b

$Directories -z 1 -L -I 1024 -y -u -t -F

 

Hình 4. Hiệu suất siêu dữ liệu – Tệp rỗng

 Từ Hình 4, chúng tôi quan sát thấy rằng hiệu suất tạo, xóa và đọc tương đương với hiệu suất nhận được đối với giải pháp dựa trên EDR trong khi hiệu suất Stat thấp hơn ~100K IOPS. Điều này có thể là do giải pháp dựa trên HDR100 chỉ sử dụng 16 máy khách để mô tả đặc tính hiệu suất trong khi giải pháp dựa trên EDR sử dụng 32 máy khách. Các hoạt động tạo tệp đạt giá trị cao nhất ở 512 luồng với tốc độ ~87K thao tác/giây. Các hoạt động loại bỏ và thống kê đạt được giá trị tối đa ở 32 luồng với lần lượt là ~98K thao tác/giây và 392 thao tác/giây.

Phần kết luận

Blog này trình bày các đặc tính hiệu suất của Giải pháp Lưu trữ BeeGFS Hiệu suất Cao của Dell EMC với phần mềm và phần cứng mới nhất. Ở cấp độ phần mềm, giải pháp hiệu suất cao hiện đã được cập nhật với

  • CentOS 8.2.2004 làm hệ điều hành cơ sở
  • BeeGFS v7.2
  • Mellanox OFED phiên bản 5.0-2.1.8.0.

Ở cấp độ phần cứng, giải pháp sử dụng

  • Bộ điều hợp ConnectX-6 Cổng đơn HDR100
  • Intel P4610 3,2 TB Sử dụng hỗn hợp, ổ đĩa NVMe và
  • Công tắc lượng tử QM8790 với 80x cổng HDR100 100 Gb/s.

Phân tích hiệu suất cho phép chúng tôi kết luận rằng:

  • Hiệu suất đọc và ghi tuần tự của IOzone tương tự như hiệu suất của giải pháp dựa trên EDR vì mạng là nút cổ chai ở đây.
  • Hiệu suất đọc và ghi ngẫu nhiên của IOzone cao hơn giải pháp dựa trên EDR trước đó ~ 1 triệu IOPS do sử dụng ổ đĩa P4610 NVMe mang lại hiệu suất đọc và ghi ngẫu nhiên được cải thiện.
  • Hiệu suất tạo và xóa tệp tương tự như hiệu suất của giải pháp dựa trên EDR.
  • Hiệu suất thống kê tệp đăng ký giảm 19% do chỉ sử dụng 16 máy khách trong giải pháp hiện tại so với 32 máy khách được sử dụng trong giải pháp dựa trên EDR trước đó.