Split-Brain là gì?
Như đã đề cập trong Tài liệu chính thức về Quản lý Split-Brain do RedHat cung cấp, split-brain là trạng thái khi dữ liệu hoặc tính không sẵn có bắt nguồn từ việc duy trì hai bộ dữ liệu riêng biệt có phạm vi chồng chéo, do máy chủ trong thiết kế mạng, hoặc một điều kiện thất bại dựa trên các máy chủ không liên lạc và đồng bộ hóa dữ liệu của họ với nhau. Và nó là một thuật ngữ áp dụng để nhân rộng cấu hình.
Hãy chú ý rằng "tình trạng lỗi dựa trên các máy chủ không liên lạc và đồng bộ hóa dữ liệu của họ với nhau" - do bất kỳ khả năng nào - nhưng điều đó không có nghĩa là các nút của bạn có thể mất kết nối. Peer có thể chưa thành cụm và được kết nối.
Các loại não tách:
Chúng tôi có ba loại não tách khác nhau, và theo như tôi có thể thấy thì bạn là não tách. Để giải thích ba loại não tách:
Bộ tách dữ liệu: Nội dung của tệp theo bộ chia tách là khác nhau trong các cặp bản sao khác nhau và tự động chữa bệnh là không thể.
Bộ chia siêu dữ liệu : , Siêu dữ liệu của các tệp (ví dụ: thuộc tính mở rộng do người dùng xác định) là khác nhau và tự động chữa bệnh là không thể.
Nhập bộ não: Nó xảy ra khi một tệp có các gfids khác nhau trên mỗi cặp bản sao.
GFID là gì?
Định danh tệp nội bộ GlusterFS (GFID) là một uuid là duy nhất cho mỗi tệp trên toàn bộ cụm. Điều này tương tự với số inode trong một hệ thống tập tin bình thường. GFID của một tệp được lưu trữ trong xattr của nó có tên trusted.gfid
. Để tìm đường dẫn từ GFID, tôi khuyên bạn nên đọc bài viết chính thức này được cung cấp bởi GlusterFS.
Làm thế nào để giải quyết vấn đề tách não?
Có nhiều phương pháp để ngăn chặn sự phân tách xảy ra nhưng để giải quyết nó, các tệp gfid-link tương ứng phải được loại bỏ. Các tập tin liên kết gfid có trong thư mục .glusterfs trong thư mục cấp cao nhất của brick. Nhân tiện, hãy cẩn thận rằng trước khi xóa các liên kết gfid, bạn phải đảm bảo rằng không có liên kết cứng nào đến các tệp có trên gạch đó. Nếu liên kết cứng tồn tại, bạn phải xóa chúng. Sau đó, bạn có thể sử dụng quá trình tự phục hồi bằng cách chạy các lệnh sau.
Trong thời gian chờ đợi, để xem danh sách các tệp trên ổ đĩa ở trạng thái não tách bạn có thể sử dụng:
# gluster volume heal VOLNAME info split-brain
Bạn cũng nên cẩn thận rằng đối với các khối lượng được sao chép, khi một khối gạch ngoại tuyến và trở lại trực tuyến, cần phải tự phục hồi để đồng bộ lại tất cả các bản sao.
Để kiểm tra trạng thái chữa lành của khối lượng và tệp bạn có thể sử dụng:
# gluster volume heal VOLNAME info
Vì bạn đang sử dụng phiên bản 3.5, bạn không có chế độ tự động chữa bệnh. Vì vậy, sau khi thực hiện các bước được đề cập trước đó, Bạn cần kích hoạt tự phục hồi. Làm như vậy:
Chỉ trên các tập tin yêu cầu chữa bệnh:
# gluster volume heal VOLNAME
Trên tất cả các tệp:
# gluster volume heal VOLNAME full
Tôi hy vọng điều này sẽ giúp bạn thông qua việc khắc phục vấn đề của bạn. Xin vui lòng đọc các tài liệu chính thức để biết thêm thông tin. Chúc mừng.