Eu tenho um servidor Linux executando o SLES11 SP4 que usa open-iscsi e multipathing para se conectar a um LUN que é apresentado a partir de um cluster de armazenamento Open-E DSS v7 com failover ativo / passivo.
O servidor Linux db03
tem sua interface bond0
com o IP 10.0.100.66/22
em nossa rede iSCSI. Cada lado do cluster Open-E tem dois IPs na rede iSCSI: 10.0.100.71
e 10.0.100.72
no primeiro nó e 10.0.100.73
e 10.0.100.74
no segundo.
Portanto, quando nenhum failover ocorreu, a descoberta é assim:
db03:~ # iscsiadm -m discovery -t sendtargets -p 10.0.100.71:3260
10.0.100.71:3260,1 opene.lun602
10.0.100.72:3260,1 opene.lun602
Com ambos os alvos conectados, esse é o status do multipathing:
db03:~ # multipath -ll
opene.lun602 (2697a42a45d5dcbdb) dm-0 SCST_BIO,izcegeu6eeb2jaeJ
size=500G features='0' hwhandler='0' wp=rw
'-+- policy='round-robin 0' prio=1 status=active
|- 7:0:0:0 sda 8:0 active ready running
'- 8:0:0:0 sdb 8:16 active ready running
No caso de um failover, ambas as conexões entram em failed faulty
, restam 0 caminhos e todos os erros de E / S até que o kernel decida remontar o sistema de arquivos somente leitura.
Nesse ponto, posso tentar outra descoberta manualmente, conectar os outros dois destinos ... Mas nenhum tipo de failover acontece automaticamente no lado do Linux.
Então eu me pergunto:
-
Existe alguma maneira que o Linux possa redescobrir regularmente para mudanças como essas? Não consegui encontrar nenhum.
-
Existe uma maneira de dizer ao software Open-E DSS para anunciar os outros caminhos, mas sinalizar que eles são de backup? (Em determinado momento, conseguimos fazer com que o cluster mostrasse todos os 4 caminhos, mas eles foram incorretamente mostrados como active ready
, o que claramente não pode ser uma boa idéia junto com um cluster ativo / passivo onde você está apenas direcionando I / O para a parte ativa.)
-
Como o VMWare está lidando com isso? Um cluster VMWare conectado a outro LUN que é configurado da mesma maneira não apresenta tais problemas.
Para referência, este é meu multipath.conf:
cat /etc/multipath.conf
multipaths {
multipath {
wwid 2697a42a45d5dcbdb
alias opene.lun602
}
}
devices {
device {
vendor "SCST_FIO|SCST_BIO"
product "*"
path_selector "round-robin 0"
path_grouping_policy multibus
rr_min_io 100
}
}