Tôi gặp vấn đề nghiêm trọng với mảng lưu trữ SAN được kết nối với hộp Linux thông qua Kênh sợi quang. Đây là cấu hình:
- Debian với vanilla linux 2.6.27.25
- Bộ điều khiển cáp QLogic 4Gb cổng kép (dựa trên ISP2432)
Về cơ bản vấn đề là: làm thế nào để có được #? @ !! Bộ điều khiển / trình điều khiển FC để nhận biết các thay đổi cấu hình đúng (LUN mới hoặc đã xóa) của mảng lưu trữ?
- khi tôi tạo LUN mới trên mảng của mình (thường là ảnh chụp nhanh của một số LUN hiện có) và ánh xạ nó tới HBA của tôi, tôi không thể nhận ra nó chính xác:
rescan-scsi-bus -l -w -r
thực sự phát hiện thứ gì đó (một thiết bị chung / dev / sgXX) tuy nhiên không có thiết bị chặn được tạo (/ dev / sdXX). điều tương tự khi phát hành LIP và quét lại thủ công:
echo 1> / sys / class / fc_host / host6 / vấn đề_lip
tiếng vang "- - -"> / sys / class / scsi_host / host6 / scan
nếu tôi loại bỏ một LUN hiện có, việc không phát hành LIP và giải cứu hoặc quét lại-scsi-bus có bất kỳ ảnh hưởng nào. Các thiết bị trước đó vẫn ở đó và tất nhiên không hoạt động ("file -s / dev / sdXX -> lỗi I / O").
- tải lại trình điều khiển qla2xxx hoạt động. Tuy nhiên, nó hoàn toàn không khả thi trong môi trường sản xuất.
Rõ ràng đây là một vấn đề rất phổ biến với QLogic . Một số loại giải pháp tồn tại chỉ hoạt động khi sử dụng trình điều khiển phát hành QLogic chỉ có sẵn cho các bản phân phối doanh nghiệp RedHat và Suse: xem phần giải thích này .
Thông tin bổ sung :
Đây là các thiết bị scsi trước LIP và quét lại:
# sg_map -x
/dev/sg0 0 0 0 0 0 /dev/sda
/dev/sg1 0 0 1 0 5 /dev/scd0
/dev/sg2 1 0 0 0 0 /dev/sdb
/dev/sg3 6 0 0 0 0 /dev/sdc
/dev/sg4 6 0 0 1 0 /dev/sdd
/dev/sg5 6 0 0 2 3
Sau khi LIP và quét lại, tôi có một thiết bị sg mới, nhưng không có ổ đĩa phù hợp. Nếu tôi tải lại trình điều khiển, một ổ đĩa sẽ xuất hiện:
# sg_map -x
/dev/sg0 0 0 0 0 0 /dev/sda
/dev/sg1 0 0 1 0 5 /dev/scd0
/dev/sg2 1 0 0 0 0 /dev/sdb
/dev/sg3 6 0 0 0 0 /dev/sdc
/dev/sg4 6 0 0 1 0 /dev/sdd
/dev/sg5 6 0 0 2 3
/dev/sg6 6 0 0 3 3
~# sg_map -x
/dev/sg0 0 0 0 0 0 /dev/sda
/dev/sg1 0 0 1 0 5 /dev/scd0
/dev/sg2 1 0 0 0 0 /dev/sdb
/dev/sg3 8 0 0 0 0 /dev/sdc
/dev/sg4 8 0 0 1 0 /dev/sdd
/dev/sg5 8 0 0 2 0 /dev/sde
/dev/sg6 8 0 0 3 3
Chỉnh sửa: OK, rõ ràng đây là một hạt cứng để crack. Tôi sẽ hỏi LKML và báo cáo ở đây.