XFS vẫn là lựa chọn tốt nhất cho mongodb?


9

Có hướng dẫn này cho các máy chủ sản xuất:

https://docs.mongodb.com/manual/adftime/production-notes/#kernel-and-file-systems

Nó nói rằng đối với công cụ lưu trữ WiredTiger, XFS được khuyến nghị mạnh mẽ chống lại ext3 hoặc ext4. Nhưng bài báo đó phải rất cũ. Ngày nay chúng ta đang sử dụng nhân Linux 4. Chuỗi hạt nhân 2.6 có từ năm 2003. Điều đó là vô cùng cũ.

Vì vậy, đây là câu hỏi: đã làm gì đó thay đổi trong 14 năm qua? (Điều này nghe có vẻ là một câu hỏi ngớ ngẩn trong lĩnh vực CNTT và cảm thấy thật nực cười khi viết ra.) XFS có còn được ưa thích cho một cụm MongoDb sản xuất không? Hoặc chúng ta nên sử dụng ext4 thay thế, hoặc cái gì khác?


Tài liệu khá rõ ràng ... "bạn nên sử dụng Linux kernel phiên bản 2.6.36 trở lên ... với công cụ lưu trữ WiredTiger, nên sử dụng XFS để tránh các vấn đề về hiệu năng có thể xảy ra khi sử dụng EXT4 với WiredTiger." Điều này vẫn còn hiện diện trong phiên bản 3.6 của tài liệu chưa được phát hành.
LowlyDBA

1
Nó khá rõ ràng, và nó cũng đang tham khảo một phiên bản kernel khoảng 10 năm tuổi. Câu hỏi đặt ra vì ext4 và xfs cũng đã phát triển trong 10 năm qua. Nhưng tôi tin bạn, tôi chỉ cần xác nhận. Có một lời giải thích tại sao ext4 hoạt động kém hơn?
nagylzs

1
Điều đó có thể được đưa vào nội bộ MongoDB, đó là dữ liệu khó có trong kinh nghiệm của tôi, nhưng bài đăng này có thể làm sáng tỏ.
LowlyDBA

Mặc dù tôi đã nhận được phản hồi tiêu cực về câu hỏi này, tôi đã phải hỏi điều này trước khi cài đặt một cụm sản xuất ... Cảm ơn.
nagylzs

2
10 năm và NoQuery già như một ly sữa.
Evan Carroll

Câu trả lời:


9

Hiện tại nguồn gốc của thông tin về ghi chú sản xuất MongoDB không rõ ràng, nhưng WiredTiger và khuyến nghị sử dụng XFS chắc chắn đã được thêm vào muộn hơn nhiều so với chi tiết nhân Linux. Các ghi chú sản xuất chia sẻ kinh nghiệm tập thể từ các vấn đề đã biết, nhưng thường là các khuyến nghị thay vì hướng dẫn nghiêm ngặt. Hầu hết các ghi chú được thêm vào thời điểm một vấn đề phổ biến được quan sát, nhưng hoàn cảnh có thể thay đổi.

Nó nói rằng đối với công cụ lưu trữ WiredTiger, XFS được khuyến nghị mạnh mẽ chống lại ext3 hoặc ext4.

Đề xuất cụ thể chống lại ext4 dựa trên các quầy hàng được quan sát trong các điểm kiểm tra của WiredTiger như được báo cáo bởi một số người dùng sản xuất. Theo SERVER-18314 (tháng 5 năm 2015), có khả năng các quầy hàng khi nhật ký ext4 trùng với các trạm kiểm soát WiredTiger. Đây có thể không phải là vấn đề đối với tất cả các khối lượng công việc, nhưng là một cảnh báo đủ quan trọng mà cảnh báo khởi động đã được thêm vào trong MongoDB 3.4 (phát hành tháng 11 năm 2016) cho các triển khai sử dụng ext4 với WiredTiger. Không có báo cáo tương tự với XFS và nó đã được quan sát là thường hoạt động tốt hơn với MongoDB.

Có các hệ thống tệp có sẵn khác trên Linux (ZFS, btrfs, ...) nhưng chúng hiện không được sử dụng rộng rãi trong sản xuất (so với ext4 và XFS) vì vậy XFS là hệ thống tệp được đề xuất dựa trên thử nghiệm và trải nghiệm.

Ngày nay chúng ta đang sử dụng nhân Linux 4. Chuỗi hạt nhân 2.6 có từ năm 2003. Điều đó là vô cùng cũ.

Mặc dù hầu hết các bản phân phối đã được chuyển từ kernel 2.6, nhưng có một số stalwarts Enterprise như RHEL6 sẽ không nâng cấp kernel mặc định trong vòng đời hỗ trợ phát hành của chúng. Redhat không sửa lỗi cherrypick và backport với lật đổ kernel của riêng chúng, nhưng sẽ vẫn còn trên cơ sở kernel ban đầu kể từ thời điểm phát hành. RHEL có chính sách hỗ trợ 10 năm tiếp theo là hỗ trợ vòng đời kéo dài 4 năm, vì vậy các phiên bản cũ có xu hướng tồn tại trong lĩnh vực lâu hơn nhiều so với bạn mong đợi. RHEL6 chuyển sang hỗ trợ mở rộng vào năm 2020, do đó, vẫn có những triển khai mới sử dụng kernel 2.6 vào năm 2017. RHEL7 sử dụng kernel Linux 3.10 và sẽ không đạt được hỗ trợ mở rộng cho đến năm 2024.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.