Saya memiliki masalah serius dengan array penyimpanan SAN yang terhubung ke kotak Linux melalui Fibre Channel. Berikut ini konfigurasinya:
- Debian dengan linux vanilla biasa 2.6.27.25
- Pengontrol serat QLogic 4Gb dual port (berbasis ISP2432)
Pada dasarnya masalahnya adalah: bagaimana cara mendapatkan # ini? Pengontrol / driver FC untuk mengenali perubahan konfigurasi dengan benar (LUN baru atau yang dihapus) dari larik penyimpanan?
- ketika saya membuat LUN baru pada array saya (biasanya snapshot dari beberapa LUN yang ada) dan memetakannya ke HBA saya, saya tidak bisa mendapatkannya dikenali dengan benar:
rescan-scsi-bus -l -w -r
sebenarnya mendeteksi sesuatu (perangkat generik / dev / sgXX) namun tidak ada perangkat blok dibuat (/ dev / sdXX). hal yang sama ketika mengeluarkan LIP dan memindai ulang secara manual:
gema 1> / sys / class / fc_host / host6 / issue_lip
echo "- - -"> / sys / class / scsi_host / host6 / scan
jika saya menghapus LUN yang ada, baik LIP dan rescans atau rescan-scsi-bus tidak memiliki efek apa pun. Perangkat sebelumnya tetap ada dan tentu saja tidak berfungsi ("file -s / dev / sdXX -> I / O error").
- memuat ulang driver qla2xxx berfungsi. Namun itu benar-benar tidak bisa dijalankan di lingkungan produksi.
Rupanya ini adalah masalah yang sangat umum dengan QLogic . Ada semacam solusi yang hanya berfungsi ketika menggunakan driver yang dikeluarkan QLogic hanya tersedia untuk distro RedHat dan Suse enterprise: lihat penjelasan ini .
Informasi tambahan :
Berikut adalah perangkat scsi sebelum LIP dan pindai ulang:
# 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
Setelah LIP dan memindai ulang, saya memiliki perangkat sg baru, tetapi tidak ada drive yang cocok. Jika saya memuat ulang driver, drive muncul:
# 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
Sunting: Oke, jelas ini adalah kacang yang sulit retak. Saya akan bertanya pada LKML dan melaporkannya di sini.