
Eu tenho uma placa QLogic Fibre Channel instalada em uma caixa Debian (Lenny), e depois de algumas brigas com o firmware, consegui fazer com que o sistema operacional reconhecesse a placa (driver DKMS e o pacote "firmware-qlogic" para firmware) .
Entretanto, por algum motivo, nenhum dispositivo de bloco está sendo criado para os dois volumes SAN expostos à unidade. Eles aparecem quando eu 'cat /proc/scsi/scsi', mas não há nenhum dispositivo de bloco /dev/sdX que eu possa ver e, além disso, tenho que executar o script de shell rescan-scsi-bus.sh toda vez que preciso obter os dispositivos /dev/sgX de volta.
Como posso fazer com que o sistema reconheça esses volumes Fibre Channel de forma persistente?
EDITAR:Descobrimos que os dispositivos duplos vistos fazem parte do sistema Multipath I/O que usamos com nosso array SAN. A E/S de caminhos múltiplos precisa ser configurada antes de os volumes serem reconhecidos como dispositivos de bloco?
Responder1
Certifique-se de que os dispositivos que você vê sejam, na verdade, os LUNs expostos e não apenas os controladores do subsistema de armazenamento.
Tente ler diretamente do dispositivo sgX. Se estiver lendo de um disco real, você verá:
# sg_read if=/dev/sg0 bs=512 count=1M mmap=1 time=2
time from second (SCSI) command to end was 3.851212 secs, 139.39 MB/sec
1048576+0 records in, SCSI commands issued: 8192
Mas uma leitura de um LUN de acesso deverá falhar:
# sg_read if=/dev/sg4 bs=512 count=1M mmap=1 time=2
reading: SCSI status: Check Condition
Fixed format, current; Sense key: Illegal Request
Additional sense: Logical block address out of range
Field replaceable unit code: 5
plus...: Driver_status=0x08 [DRIVER_SENSE, SUGGEST_OK]
sg_read: failed, skip=0
Some error occurred, remaining block count=1048576
0+0 records in
Podemos ver a saída de lsscsi -g
?
Se virmos apenas os controladores, espero algo como:
[0:0:0:31] disk IBM Universal Xport 0916 -
[1:0:0:31] disk IBM Universal Xport 0916 -
Mas se os discos também estiverem lá, você deverá ver algo como:
[0:0:0:0] disk IBM 1814 FAStT 0916 /dev/sda
[0:0:0:1] disk IBM 1814 FAStT 0916 /dev/sdb
[0:0:0:2] disk IBM 1814 FAStT 0916 /dev/sdd
[0:0:0:31] disk IBM Universal Xport 0916 -
[1:0:0:0] disk IBM 1814 FAStT 0916 /dev/sdc
[1:0:0:1] disk IBM 1814 FAStT 0916 /dev/sde
[1:0:0:2] disk IBM 1814 FAStT 0916 /dev/sdf
[1:0:0:31] disk IBM Universal Xport 0916 -
Você não precisa configurar o multipath antes de poder ver os dispositivos de bloco, mas deve configurá-lo antes de usá-los.
Depois que o multipath estiver configurado, você deverá ver algo como:
3600a0b8000266f7e000026314950d851 dm-0 IBM,1814 FAStT
[size=100G][features=1 queue_if_no_path][hwhandler=1 rdac]
\_ round-robin 0 [prio=6][active]
\_ 1:0:0:2 sdf 8:80 [active][ready]
\_ round-robin 0 [prio=1][enabled]
\_ 0:0:0:2 sdd 8:48 [active][ghost]