Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.5. File di configurazione - Devices

Tabella 4.3, «Attributi del dispositivo» mostra gli attributi da impostare per ogni dispositivo di storage, nella sezione devices del file di configurazione multipath.conf. I suddetti attributi vengono usati da DM-Multipath se non sono stati sovrascritti dagli attributi specificati nella sezione multipaths del file multipath.conf, per i percorsi che contengono il dispositivo. Essi sovrascrivono gli attributi impostati nella sezione defaults del file multipath.conf.
Numerosi dispositivi che supportano il multipathing sono inclusi per default in una configurazione multipath. I valori per i dispositivi supportati per default sono elencati nel file multipath.conf.defaults. Molto probabilmente non sarà necessario modificare i valori per questi dispositivi, ma se desiderate farlo sarà possibile sovrascrivere i valori predefiniti includendo una voce nel file di configurazione per il dispositivo che sovrascrive questi valori. È possibile copiare per il dispositivo i default di configurazione del dispositivo dal file multipath.conf.defaults, e annullare i valori che desiderate modificare.
Per aggiungere un dispositivo in questa sezione del file di configurazione non configurata automaticamente per default, sarà necessario impostare i parametri vendor e product. Questi valori sono disponibili su /sys/block/device_name>/device/vendor e /sys/block/device_name>/device/model, dove device_name è il dispositivo sul quale eseguire il multipath, come riportato nel seguente esempio:
# cat /sys/block/sda/device/vendor
WINSYS  
# cat /sys/block/sda/device/model
SF2372
I parametri aggiuntivi da specificare dipendono dal vostro dispositivo. Se il dispositivo è attivo/attivo, allora avrete bisogno d'impostare alcuni parametri aggiuntivi. A tal proposito potreste impostare path_grouping_policy su multibus. Altri parametri da impostare potrebbero essere no_path_retry e rr_min_io, come descritto in Tabella 4.3, «Attributi del dispositivo».
Se il dispositivo è attivo/passivo, ma automaticamente smista il percorso con I/O sul percorso passivo, allora sarà necessario smistare la funzione del controllore, su una funzione non in grado d'inviare alcun segnale I/O al percorso per controllarne il suo funzionamento (in caso contrario il vostro dispositivo continuerà ad eseguire un failover). Ciò quasi sempre significa impostare path_checker su tur; questo processo funziona per i dispositivi SCSI che supportano il comando Test Unit Ready.
Se il dispositivo necessita di un comando speciale per smistarsi da un percorso ad un altro, allora la configurazione di questo dispositivo per multipath richiederà un modulo del kernel gestore hardware. Il gestore hardware attuale è emc. Se non è sufficiente per il dispositivo, allora non sarà possibile configurare il dispositivo per multipath.

Tabella 4.3. Attributi del dispositivo

Attributo Descrizione
rivenditore Specifica il nome del rivenditore del dispositivo storage sul quale sono applicabili gli attributi device, per esempio COMPAQ.
prodotto Specifica il nome del prodotto del dispositivo di storage sul quale sono applicabili gli attributi device, per esempio HSV110 (C)COMPAQ.
revisione Specifica l'identificatore della revisione del prodotto del dispositivo di storage.
product_blacklist Specifica l'espressione regolare usata per inserire i dispositivi nella blacklist in base al prodotto.
hardware_handler
Specifica un modulo che verrà utilizzato per eseguire le azioni hardware specifiche, quando si esegue lo smistamento dei gruppi di percorsi o di gestione degli errori I/O. I possibili valori includono:
1 emc: gestore hardware storage array EMC.
1 alua: gestore hardware per array SCSI-3 ALUA.
1 hp_sw: gestore hardware per controllori Compaq/HP.
1 rdac: gestore hardware per i controllori LSI/Engenio RDAC.
path_grouping_policy
Specifica la policy predefinita per il grouping del percorso da applicare ai multipath non specificati. I possibili valori includono:
failover = 1 percorso per gruppo di priorità
multibus = tutti i percorsi validi in 1 gruppo di priorità
group_by_serial = 1 gruppo di priorità per numero seriale rilevato
group_by_prio = 1 gruppo di priorità per valore di priorità del percorso
group_by_node_name = 1 gruppo di priorità per nome del nodo target
getuid_callout Specifica il programma predefinito e gli argomenti da invocare per ottenere un identificatore del percorso unico. È necessario un percorso assoluto.
path_selector
Specifica l'algoritmo predefinito da usare per determinare il percorso da utilizzare per l'operazione I/O successiva. Possibili valori includono:
round-robin 0: Esegue un loop attraverso ogni percorso nel gruppo di percorsi, inviando la stessa quantità di I/O ad ognuno di essi.
queue-length 0: Invia il gruppo successivo di I/O al percorso con il numero minore di richieste I/O rimanenti.
service-time 0: Invia il gruppo successivo di I/O al percorso con il tempo di servizio più corto stimato, determinato dividendo la dimensione totale di I/O rimanenti ad ogni percorso in base al cairco di lavoro relativo.
path_checker
Specifica il metodo predefinito usato per determinare lo stato dei percorsi. I possibili valori includono:
readsector0: Legge il primo settore del dispositivo.
tur: Emette un TEST UNIT READY per il dispositivo.
emc_clariion: Interroga 0xC0 della pagina EVPD specifica EMC Clariion per determinare il percorso.
hp_sw: Controlla lo stato del percorso per gli storage array HP con firmware Attivo/Standby.
rdac: Controlla le statistiche del percorso per il controllore di storage LSI/Engenio RDAC.
directio: Legge il primo settore con I/O diretto.
features Funzioni aggiuntive dei dispositivi multipath. La sola funzione esistente è queue_if_no_path, la quale risulta equivalente all'impostazione no_path_retry su queue. Per informazioni sulle possibili problematiche durante l'utilizzo, consultare Sezione 5.6, «Problematiche con queue_if_no_path».
prio
Specifica la funzione predefinita da invocare per ottenere un valore per la priorità del percorso. Per esempio, ALUA bits in SPC-3 fornisce un valore sfruttabile di priorità prio. Possibili valori includono:
const: Imposta una priorità uguale a 1 per tutti i percorsi.
emc: Genera la priorità del percorso per gli array EMC.
alua: Genera la priorità del percorso in base alle impostazioni SCSI-3 ALUA.
tpg_pref: Genera la priorità del percorso in base alle impostazioni SCSI-3 ALUA usando il port bit preferito.
ontap: Genera la priorità del percorso per gli array NetApp.
rdac: Genera la priorità del percorso per il controller LSI/Engenio RDAC.
hp_sw: Genera la priorità del percorso per il controllore Compaq/HP in modalità attiva/standby.
hds: Genera la priorità del percorso per gli storage array modulari Hitachi HDS.
failback
Gestisce il failback del gruppo di percorsi.
Un valore immediate specifica un failback immediato sul gruppo di percorsi con la priorità più alta che contiene percorsi attivi.
Un valore manual specifica che non ci deve essere un failback immediato ma tale operazione si deve verificare solo attraverso un intervento dell'operatore.
Un valore followover specifica che un failback automatico deve essere eseguito quando il primo percorso di un gruppo diventa attivo. Ciò impedisce ad un nodo di eseguire automaticamente un failback quando un altro nodo richiede il failover.
Un valore numerico maggiore di zero specifica un failback rinviato. Esso viene espresso in secondi.
rr_weight Se impostato su priorities, invece di eseguire l'invio delle richieste rr_min_io ad un percorso, prima di indicare a path_selector di selezionare il percorso successivo, il numero di richieste da inviare viene determinato da rr_min_io moltiplicato la priorità del percorso, come determinato dalla funzione prio. Se impostato su uniform, tutti i pesi del percorso sono uguali.
no_path_retry
Un valore numerico per questo attributo specifica il numero di volte che il sistema dovrebbe cercare di utilizzare un percorso fallito prima di disabilitarne la coda.
Un valore di fail indica un fallimento immediato senza accodare.
Un valore queue indica che la messa in coda non deve essere arrestata fino a quando il percorso non viene corretto.
rr_min_io Specifica il numero delle richieste I/O per l'instradamento per un percorso, prima di smistarsi sul percorso successivo nel gruppo corrente. Questa impostazione è relativa solo ai sistemi con un kernel con una versione precedente a 2.6.31. I sistemi più recenti dovranno utilizzare rr_min_io_rq. Il valore predefinito è 1000.
rr_min_io_rq Specifica il numero delle richieste I/O per l'instradamento per un percorso, prima di smistarsi sul percorso successivo nel gruppo corrente, usando un device-mapper-multipath basato sulle richieste. Questa impostazione è relativa solo ai sistemi con un kernel corrente. Su sistemi con una versione precedente a 2.6.31 usare rr_min_io. Il valore predefinito è 1.
fast_io_fail_tmo Il numero di secondi in attesa da parte di un livello SCSI dopo il rilevamento di un problema sulla porta remota FC, prima del fallimento dell'I/O dei dispositivi presenti sulla porta remota stessa. Questo valore dovrebbe essere più piccolo rispetto al valore di dev_loss_tmo. La sua impostazione su off disabilita il timeout.
dev_loss_tmo Il numero di secondi in attesa da parte di un livello SCSI dopo il rilevamento di un problema sulla porta remota FC, prima della sua rimozione dal sistema. La sua impostazione su infinito imposterà il suddetto valore su 2147483647 secondi o 68 anni.
flush_on_last_del Se impostato su yes, il demone multipathd disabiliterà la messa in coda quando l'ultimo percorso per un dispositivo è stato cancellato.
user_friendly_names Se impostato su yes il sistema dovrà utilizzare il file /etc/multipath/bindings per assegnare un alias unico e persistente al multipath, con un formato mpathn. Se impostato su no, il sistema deve utilizzare il WWID come alias per il multipath. In entrambi i casi qualsiasi cosa specificherete verrà sovrascritta da qualsiasi alias specifico al dispositivo specificato nella sezione multipaths del file di configurazione. Il valore predefinito è no.
retain_attached_hw_handler (Red Hat Enterprise Linux Release 6.4 e versioni più recenti) Se questo parametro è stato impostato su yes e se il livello scsi presenta un gestore hardware sul dispositivo del percorso, multipath non forzerà il dispositivo ad usare l'hardware_handler specificato dal file mutipath.conf. Se il livello scsi non presenta alcun gestore hardware, multipath continuerà ad usare normalmente il proprio gestore.
detect_prio (Red Hat Enterprise Linux Release 6.4 e versioni più recenti) Se questo parametro è stato impostato su yes multipath controllerà prima se il dispositivo supporta ALUA, se lo supporta, assegnerà automaticamente al dispositivo il prioritizer alua. Se al contrario il dispositivo non supporta AULA, esso determinerà il prioritizer normalmente.
Il seguente esempio mostra una voce device nel file di configurazione di multipath.
#	}
#	device {
#		vendor			"COMPAQ  "
#		product			"MSA1000         "
#		path_grouping_policy	multibus
#		path_checker		tur
#		rr_weight		priorities
#	}
#}