Điểm:1

Hiệu suất ZFS: Tốc độ ghi cực thấp

lá cờ pk

Tôi đang chạy một máy chủ gia đình nhỏ. Thông số kỹ thuật là:

  • CPU: AMD Ryzen 5 2600
  • RAM: 32GB ECC
  • Ổ đĩa hệ thống: SSD NVMe 128GB
  • Ổ dữ liệu: 3x 4 TB Seagate Barracuda HDD

Máy chủ chạy một số ứng dụng như Nextcloud hoặc Gitea và tôi muốn chạy 1-2 máy ảo trên đó. Vì vậy, có một số ứng dụng web, cơ sở dữ liệu và máy ảo.

Các ứng dụng và hình ảnh qcow2 được lưu trữ trên nhóm raidz1:

$ sudo trạng thái zpool
  hồ bơi: bể
 trạng thái: TRỰC TUYẾN
cấu hình:

        TÊN BANG ĐỌC VIẾT CKSUM
        xe tăng TRỰC TUYẾN 0 0 0
          radz1-0 TRỰC TUYẾN 0 0 0
            sdb TRỰC TUYẾN 0 0 0
            sdc TRỰC TUYẾN 0 0 0
            sdd TRỰC TUYẾN 0 0 0

lỗi: Không có lỗi dữ liệu đã biết

Khi tôi sử dụng các ứng dụng trong những tuần đầu tiên, tôi không gặp vấn đề gì. Nhưng kể từ vài tuần, tôi nhận ra tốc độ ghi cực kỳ thấp. Phiên bản nextcloud không nhanh lắm và khi tôi cố gắng khởi động một máy ảo mới với Windows 10, nó cần khoảng 5 phút để đến màn hình đăng nhập.

Tôi đã thực hiện một số thử nghiệm hiệu suất bằng cách sử dụng fio và thu được kết quả như sau:

Bài kiểm tra IOPS Băng thông (KiB/s)
đọc ngẫu nhiên 37,800 148,000
viết ngẫu nhiên 31 127
đọc tuần tự 72,100 282,000
ghi tuần tự 33 134

Tôi đã thực hiện một số nghiên cứu trước khi đăng ở đây và đọc rằng tôi nên thêm một SLOG vào nhóm zfs để có hiệu suất tốt hơn với cơ sở dữ liệu và máy ảo. Nhưng đó không phải là lựa chọn vào lúc này. Tôi cần nhận quà giáng sinh trước :D

Nhưng ngay cả khi không có SLOG, tôi không nghĩ những con số này là chính xác :(

Có ai có ý tưởng gì không? :)

Philip Szalla avatar
lá cờ pk
Tôi đã tắt `atime` trên tất cả các tập dữ liệu và đặt `recordsize` thành 64K trên tập dữ liệu lưu trữ hình ảnh qcow2
lá cờ us
Bạn không nên sử dụng RAIDZ1 trong mọi trường hợp. Bất cứ khi nào một thiết bị bị lỗi, sẽ có nguy cơ rất cao là ổ đĩa thứ hai bị lỗi trong quá trình phân giải và bạn sẽ mất tất cả dữ liệu của mình. RAIDZ1 cũng có thể biểu hiện chậm như thế này. Sử dụng gương thay thế.
Điểm:2
lá cờ pk

Tôi tìm thấy vấn đề của bản thân mình.

Tôi thấy một bài báo đề cập đến CMR và SMR. Tôi đã kiểm tra các ổ đĩa của mình và nhận ra rằng tôi đã vô tình mua ổ cứng có SMR :(

Tôi sẽ giữ một nhóm nhân bản cho đến khi thay ổ đĩa bằng ổ CMR mới. Khi tôi có ổ đĩa mới, tôi cũng sẽ sử dụng một nhóm nhân bản.

Cảm ơn tất cả!

Điểm:1
lá cờ ca

As a first-order approximation raidz provides the random performances of a single disk, which for a 7.2K HDD are about 70 IOPS. Your test shows 50% less IOPS (ie: ~30 vs ~70) and this can be explained with the relatively large recordsize you selected.

Especially for random writes, any recordsize larger than 4KB is going to face considerable read/modify/write penalty. Please note that I am not advocating for using such a small recordsize on mechanical disks as it commands a very high metadata overhead, high fragmentation and (almost) no compression. As a reference, when using HDDs I leave the default (128KB) recordsize even for virtualization hosts.

You can do the following to improve performance:

  • use mirror vs raidz where applicable (but you only have 3 disks, preventing the use of mirroring+striping)
  • use RAW image files rather than QCOW2 (if QCOW2 files really are required, be sure to preallocate their metadata)
  • try setting sync=disabled (but be sure to understand that in case of sudden power loss your system will lose up to 5s of written data)
Philip Szalla avatar
lá cờ pk
Cảm ơn câu trả lời của bạn và xin lỗi vì đã trả lời muộn! Tôi đã xóa một ổ đĩa khỏi hệ thống và tạo một nhóm nhân bản. Điều đó đã cải thiện tốc độ đọc khoảng 30% như mong đợi. Nhưng tốc độ ghi không thay đổi :(

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.