Lý do đằng sau việc lưu trữ hình ảnh đĩa ảo trên BTRFS Filesystem


14

Tôi đã đọc về BTRFS và ZFS một thời gian và trong khi tôi đánh giá cao những lợi ích của CoW khi lưu trữ các tệp quan trọng, tôi hiện đang bối rối bởi tình huống khó xử sau:

Cho rằng cả ZFS và BTRFS dường như bị suy giảm hiệu năng khi lưu trữ các tệp lớn phải ghi ngẫu nhiên (ví dụ: QCOW2, VDI, v.v.), tại sao ai đó sẽ sử dụng BTRFS làm lựa chọn FS để lưu trữ VM?

Tôi biết rằng trong trường hợp o BTRFS, bạn có thể tắt CoW một cách chọn lọc bằng cách sử dụng chattr hoặc tùy chọn gắn kết gật đầu, giảm sự xuống cấp do phân mảnh và CoW ...

Tuy nhiên, theo Redhat điều này cũng "vô hiệu hóa xác minh tổng kiểm tra dữ liệu và siêu dữ liệu, dẫn đến giảm tính toàn vẹn dữ liệu." (ngoài việc nén bị mất và đương nhiên là CoW mong muốn).

Dựa vào đó tôi hỏi: Tại sao ai đó chọn BTRFS hơn cho phép nói, XFS trên LVM qua MD RAID?


Lưu ý rằng tính toàn vẹn dữ liệu giảm sẽ giống như sử dụng hầu hết các hệ thống tệp khác như ext4 hoặc xfs hoàn toàn không lưu trữ tổng kiểm tra và do đó không thể phát hiện tham nhũng.
bản6

1
@ basic6 Tôi nhận thức được. Do đó câu hỏi.
Andre de Miranda

Câu trả lời:


13

Nếu trường hợp sử dụng chính là lưu trữ hình ảnh hoặc cơ sở dữ liệu VM và bạn không quan tâm đến việc chấp nhận các vấn đề hiệu suất tiềm năng để có được lợi thế toàn vẹn dữ liệu của btrfs, thì tôi không thể nghĩ ra bất kỳ lý do nào khiến bạn muốn chọn btrfs trên xfs hoặc ext4.

Vô hiệu hóa sao chép khi ghi đối với thư mục hình ảnh VM (sử dụng chattr + C) hầu như có liên quan khi lưu trữ hình ảnh VM chỉ là một trong nhiều cách sử dụng bạn có cho hệ thống tệp của mình. Sau đó, có thể rất thuận tiện khi chỉ cần vô hiệu hóa sao chép khi ghi cho thư mục duy nhất đó, nhưng vẫn giữ lại tất cả các lợi thế của btrfs cho phần còn lại của hệ thống tệp.


Một lý do sẽ là có một đĩa mà không có bảng phân vùng. BTRFS cho phép grub / etc được nhúng trực tiếp vào nó, XFS / EXT4 / etc không .. Tôi đã tìm kiếm một hệ thống tập tin cho phép nó như CoW của BTRFS trên BTRFS tôi đang sử dụng để lưu trữ VM hình ảnh không lý tưởng (tôi đang sử dụng ảnh chụp nhanh và btrfs-RAID10 trên máy chủ) và chattr + C dường như là lựa chọn duy nhất của tôi ngoài việc sử dụng bảng phân vùng. Đoán tôi sẽ chỉ sử dụng một bảng phân vùng.
Alex

5

BTRFS có định dạng đĩa khác nhau, sẽ tốt hơn các hệ thống tệp khác trên một số mẫu ghi. Cụ thể, một lượng lớn nỗ lực đã được dành cho việc cải thiện cách ghi dữ liệu meta vào đĩa và nó hỗ trợ một số tính năng nâng cao như kiểm tra dữ liệu, nén và chụp nhanh. Đối với các tệp lớn, việc cải thiện hiệu suất dữ liệu meta thường không quan trọng.

So với ZFS, BTRFS là một giải pháp đơn giản hơn và được hỗ trợ tốt hơn trên Linux. Nhược điểm chính là nó cũng không mở rộng quy mô (khi thêm số lượng lớn đĩa) và không có cùng bộ tính năng.

So với XFS, nó sẽ là một giải pháp hiệu suất thấp hơn. Tức là sẽ mất nhiều thời gian xử lý hơn để ghi một đoạn dữ liệu vào đĩa và nó sẽ bị giới hạn trong thông lượng tối đa. Điều này có thể được giảm thiểu đến một mức độ nào đó bằng cách thực hiện những việc như vô hiệu hóa xác minh tổng kiểm tra, nhưng sau đó bạn mất lợi ích chính của BTRFS so với XFS, thông tin dữ liệu meta được cải thiện. Tức là kiểm tra và ghi nhật ký khác nhau (có thể tốt hơn trong một số tình huống).

Về mặt hỗ trợ Copy On Write (COW), XFS ủng hộ hiệu suất hơn là COW. Ie XFS có các tính năng ghi nhật ký và dữ liệu meta rất tốt về khả năng mở rộng và thường sẽ không ghi đè lên dữ liệu tệp trên ghi với ngoại lệ là nó sẽ cho phép các khối đĩa hiện tại được ghi đè nếu ứng dụng yêu cầu ghi đè dữ liệu đó . Điều này có thể tốt trong trường hợp VM vì phân bổ đĩa của bạn ban đầu có thể liền kề nhau và trong trường hợp đó sẽ tiếp tục tồn tại trong suốt vòng đời của VM.


5

Sử dụng BTRFS, ngay cả với nodatacowvà tương tự, bạn vẫn có thể tạo ảnh chụp nhanh dữ liệu theo cách thủ công với CoWhành vi, do đó, nó nhanh và không tiêu tốn nhiều bộ nhớ. Ngoài ra, các ảnh chụp nhanh đó linh hoạt hơn so với sử dụng LVM, vì bạn không cần phải dự trữ không gian bên dưới hệ thống tệp mà hệ thống tệp không biết và không thể sử dụng nếu không cần thiết. Giống như với ZFS, ảnh chụp nhanh có thể được gửi và nhận qua mạng, điều này có thể giúp bạn cải thiện chiến lược sao lưu của mình. Vì vậy, ngay cả với nodatacowBTRFS dường như vượt trội hơn so với việc sử dụng LVM.


3

Sau khi làm việc với các nền tảng điện toán đám mây, tôi đã chấp nhận quan điểm của họ về các máy ảo như là nơi chứa dữ liệu và chức năng trong đó vm thực tế ít quan trọng hơn.

Tôi muốn có các quy trình triển khai sao lưu và cài đặt triển khai tốt và ít lo lắng về tính toàn vẹn của VM và nhiều hơn về hiệu năng.

Tức là đi JFS / XFS / EXT4 qua LVM qua MD-raid chứ không phải BTRFS. Hãy chắc chắn rằng tôi không bao giờ lưu trữ bất cứ thứ gì không được sao lưu trên VM trong thời gian dài hơn ... và có sẵn các kịch bản và quy trình để cài đặt lại VM trong thời gian hợp lý.

Nhưng đây là một kịch bản dev / thử nghiệm hơn bất cứ điều gì khác.

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.