Khả năng chịu lỗi phần cứng OneFS

Gần đây đã có một số câu hỏi xung quanh cụm PowerScale và khả năng chịu lỗi phần cứng, ngoài bảo vệ dữ liệu cấp tệp thông qua mã hóa xóa. Có vẻ như đây là một chủ đề hữu ích cho một bài viết trên blog, vì vậy, đây là một số kỹ thuật mà OneFS sử dụng để giúp bảo vệ dữ liệu khỏi mối đe dọa của lỗi phần cứng:

Nhật ký hệ thống tập tin

Mỗi nút PowerScale đều được trang bị nhật ký hệ thống tệp NVRAM được hỗ trợ bằng pin. Mỗi nhật ký được OneFS sử dụng làm bộ lưu trữ ổn định và bảo vệ các giao dịch ghi khỏi tình trạng mất điện đột ngột hoặc các sự kiện thảm khốc khác. Nhật ký bảo vệ tính nhất quán của hệ thống tệp và thời gian sạc pin kéo dài tới ba ngày. Vì mỗi nút thành viên của cụm chứa bộ điều khiển NVRAM, nên toàn bộ hệ thống tệp OneFS đều được ghi nhật ký đầy đủ.

Lỗi thiết bị chủ động

OneFS sẽ chủ động xóa hoặc SmartFail bất kỳ ổ đĩa nào đạt đến ngưỡng lỗi Error Correction Code (ECC) được phát hiện cụ thể và tự động tái tạo dữ liệu từ ổ đĩa đó và định vị nó ở nơi khác trên cụm. Cả SmartFail và quy trình sửa chữa tiếp theo đều hoàn toàn tự động và do đó không cần sự can thiệp của quản trị viên.

Tính toàn vẹn dữ liệu

ISI Data Integrity (IDI) là quy trình OneFS bảo vệ cấu trúc hệ thống tệp khỏi bị hỏng thông qua tổng kiểm tra CRC 32 bit. Tất cả các khối OneFS, cho cả tệp và siêu dữ liệu, đều sử dụng xác minh tổng kiểm tra. Tổng kiểm tra siêu dữ liệu được lưu trữ trong chính các khối siêu dữ liệu, trong khi tổng kiểm tra dữ liệu tệp được lưu trữ dưới dạng siêu dữ liệu, do đó cung cấp tính toàn vẹn tham chiếu. Tất cả tổng kiểm tra được tính toán lại bởi trình khởi tạo, nút phục vụ một lần đọc cụ thể, trên mỗi yêu cầu.

Trong trường hợp tổng kiểm tra được tính toán lại không khớp với tổng kiểm tra đã lưu trữ, OneFS sẽ tạo cảnh báo hệ thống, ghi lại sự kiện, truy xuất và trả lại khối mã sửa lỗi (ECC) tương ứng cho máy khách và cố gắng sửa chữa khối dữ liệu đáng ngờ.

Tổng kiểm tra giao thức

Ngoài các khối và siêu dữ liệu, OneFS còn cung cấp xác minh tổng kiểm tra cho dữ liệu giao thức Quản lý khối từ xa (RBM). Như đã đề cập ở trên, RBM là giao thức đơn hướng, dựa trên RPC được sử dụng trên kết nối cụm back-end. Tổng kiểm tra trên giao thức RBM là ngoài tổng kiểm tra phần cứng InfiniBand được cung cấp ở lớp mạng và được sử dụng để phát hiện và cô lập các máy có một số thành phần phần cứng bị lỗi và thể hiện các trạng thái lỗi khác.

Sửa chữa khu vực động

OneFS bao gồm tính năng Dynamic Sector Repair (DSR) cho phép hệ thống tệp buộc các sector đĩa bị lỗi phải được ghi lại ở nơi khác. Khi OneFS không đọc được một khối trong quá trình hoạt động bình thường, DSR được gọi để tái tạo dữ liệu bị mất và ghi vào một vị trí khác trên ổ đĩa hoặc vào một ổ đĩa khác trên nút. Điều này được thực hiện để đảm bảo rằng các lần đọc khối tiếp theo không bị lỗi. DSR hoàn toàn tự động và hoàn toàn minh bạch đối với người dùng cuối. Lỗi sector đĩa và lỗi không khớp của Kiểm tra dự phòng tuần hoàn (CRC) sử dụng cơ chế gần giống như quy trình tái tạo ổ đĩa.

Quét phương tiện truyền thông

Vai trò của MediaScan trong OneFS là kiểm tra các sector đĩa và triển khai cơ chế DSR nêu trên để buộc các ổ đĩa sửa bất kỳ lỗi ECC sector nào mà chúng có thể gặp phải. Được triển khai như một trong các giai đoạn của công cụ công việc OneFS, MediaScan được chạy tự động dựa trên một lịch trình được xác định trước. Được thiết kế như một quy trình nền có tác động thấp, MediaScan được phân phối hoàn toàn và do đó có thể tận dụng lợi ích của kiến ​​trúc song song của cụm.

Quét toàn vẹn

IntegrityScan, một thành phần khác của công cụ công việc OneFS, chịu trách nhiệm kiểm tra toàn bộ hệ thống tệp để tìm sự không nhất quán. Nó thực hiện điều này bằng cách đọc có hệ thống mọi khối và xác minh tổng kiểm tra liên quan của nó. Không giống như các công cụ kiểm tra tính toàn vẹn của hệ thống tệp theo kiểu ‘fsck’ truyền thống, IntegrityScan được thiết kế để chạy trong khi cụm hoạt động hoàn toàn, do đó loại bỏ nhu cầu về thời gian chết. Trong trường hợp IntegrityScan phát hiện ra sự không khớp tổng kiểm tra, một cảnh báo hệ thống sẽ được tạo và ghi vào syslog và OneFS sẽ tự động cố gắng sửa chữa khối nghi ngờ.

Giai đoạn IntegrityScan được chạy thủ công nếu tính toàn vẹn của hệ thống tệp bị nghi ngờ. Mặc dù quá trình này có thể mất vài ngày để hoàn tất, nhưng hệ thống tệp sẽ trực tuyến và hoàn toàn khả dụng trong thời gian này. Ngoài ra, giống như tất cả các giai đoạn của công cụ công việc OneFS, IntegrityScan có thể được ưu tiên, tạm dừng hoặc dừng lại, tùy thuộc vào tác động đến các hoạt động cụm và các công việc khác.

Cách ly lỗi

Vì OneFS bảo vệ dữ liệu ở cấp độ tệp, nên bất kỳ sự không nhất quán hoặc mất dữ liệu nào cũng sẽ bị cô lập đối với thiết bị không khả dụng hoặc bị lỗi—phần còn lại của hệ thống tệp vẫn nguyên vẹn và khả dụng.

Ví dụ, một cụm mười nút, S210, được bảo vệ ở +2d:1n, chịu ba lỗi ổ đĩa đồng thời—một lỗi ở mỗi nút trong ba nút. Ngay cả trong trạng thái xuống cấp này, lỗi I/O sẽ chỉ xảy ra trên tập hợp dữ liệu rất nhỏ được lưu trữ trên cả ba ổ đĩa này. Phần dữ liệu còn lại được phân chia trên hai trăm ba mươi bảy ổ đĩa khác sẽ hoàn toàn không bị ảnh hưởng. Hãy so sánh hành vi này với hệ thống RAID6 truyền thống, trong đó việc mất hơn hai ổ đĩa trong một tập hợp RAID sẽ khiến hệ thống không sử dụng được và cần phải khôi phục hoàn toàn từ bản sao lưu.

Tương tự như vậy, trong trường hợp không mong muốn là một phần của hệ thống tệp bị hỏng (cho dù là do lỗi phần mềm hoặc phần mềm cơ sở, v.v.) hoặc xảy ra lỗi phương tiện khi một phần của đĩa bị lỗi, thì chỉ phần của hệ thống tệp được liên kết với vùng này trên đĩa sẽ bị ảnh hưởng. Tất cả các vùng lành mạnh vẫn sẽ khả dụng và được bảo vệ.

Như đã đề cập ở trên, tổng kiểm tra tham chiếu của cả dữ liệu và siêu dữ liệu được sử dụng để phát hiện lỗi dữ liệu thầm lặng (lỗi dữ liệu không liên quan đến lỗi phần cứng). Tổng kiểm tra cho các khối dữ liệu tệp được lưu trữ dưới dạng siêu dữ liệu, bên ngoài các khối thực tế mà chúng tham chiếu và do đó cung cấp tính toàn vẹn tham chiếu.

Xây dựng lại ổ đĩa nhanh hơn

Thời gian mà một hệ thống lưu trữ cần để xây dựng lại dữ liệu từ một ổ đĩa bị lỗi là rất quan trọng đối với độ tin cậy của dữ liệu của hệ thống đó. Với sự ra đời của các ổ đĩa bốn terabyte và việc tạo ra các hệ thống tệp và khối lượng đơn ngày càng lớn hơn, thời gian khôi phục thông thường cho các lỗi ổ đĩa nhiều terabyte đang trở thành nhiều ngày hoặc thậm chí nhiều tuần. Trong giai đoạn MTTDL này, các hệ thống lưu trữ dễ bị lỗi ổ đĩa bổ sung và mất dữ liệu và thời gian ngừng hoạt động.

Vì OneFS được xây dựng trên kiến ​​trúc phân tán cao, nên nó có thể tận dụng CPU, bộ nhớ và trục chính từ nhiều nút để tái tạo dữ liệu từ các ổ đĩa bị lỗi theo cách song song và hiệu quả cao. Vì cụm PowerScale không bị ràng buộc bởi tốc độ của bất kỳ ổ đĩa cụ thể nào, nên OneFS có thể phục hồi sau lỗi ổ đĩa cực kỳ nhanh chóng và hiệu quả này tăng lên theo kích thước cụm. Do đó, một ổ đĩa bị lỗi trong cụm sẽ được xây dựng lại nhanh hơn gấp nhiều lần so với các thiết bị lưu trữ dựa trên RAID phần cứng. Ngoài ra, OneFS không yêu cầu ổ đĩa ‘hot-spare’ chuyên dụng.

Cập nhật chương trình cơ sở ổ đĩa tự động

Các cụm hỗ trợ cập nhật chương trình cơ sở ổ đĩa tự động cho ổ đĩa mới và ổ đĩa thay thế, như một phần của quy trình cập nhật chương trình cơ sở không gây gián đoạn. Các bản cập nhật chương trình cơ sở được cung cấp thông qua các gói hỗ trợ ổ đĩa, giúp đơn giản hóa và hợp lý hóa việc quản lý các ổ đĩa hiện có và ổ đĩa mới trên toàn cụm. Điều này đảm bảo chương trình cơ sở ổ đĩa được cập nhật và giảm thiểu khả năng xảy ra lỗi do các sự cố ổ đĩa đã biết. Do đó, các bản cập nhật chương trình cơ sở ổ đĩa tự động là một thành phần quan trọng trong chiến lược hoạt động không gây gián đoạn và tính khả dụng cao của OneFS.