Appendice D. Controllo risorse servizio del cluster e timeout del failover

Questa appendice descrive il processo di monitoraggio dello stato delle risorse del cluster da perte di rgmanager, e la modifica dell'intervallo di controllo dello stato. Inoltre l'appendice descrive anche il parametro del servizio __enforce_timeouts il quale indica che un timeout di una operazione potrebbe causare il fallimento del servizio.

Nota

Per comprendere in modo adeguato questa appendice è necessario conoscere in maniera dettagliata gli agenti delle risorse ed il file di configurazione del cluster, /etc/cluster/cluster.conf. Per un elenco completo ed una descrizione degli attributi e degli elementi cluster.conf consultate lo schema disponibile su /usr/share/cluster/cluster.rng e lo schema /usr/share/doc/cman-X.Y.ZZ/cluster_conf.html (per esempio /usr/share/doc/cman-3.0.12/cluster_conf.html).

D.1. Modifica dell'intervallo di controllo dello stato delle risorse

rgmanager controlla lo stato delle singole risorse e non dell'intero servizio. Ogni 10 secondi rgmanager esegue la scansione dell'albero delle risorse andando alla ricerca di quelle risorse che hanno passato il proprio intervallo di "controllo dello stato".
Ogni agente delle risorse specifica la quantità di tempo che intercorre tra i controlli periodici dello stato. Ogni risorsa utilizza i valori di timeout se non diversamente indicato nel file cluster.conf usando il tag speciale <action>:
<action name="status" depth="*" interval="10" />
Questo tag risulta essere un figlio speciale della risorsa nel file cluster.conf. Per esempio, se siete in possesso di una risorsa del file system per la quale desiderate sovrascrivere l'intervallo di controllo dello stato, allora specificare la risorsa del file system nel file cluster.conf nel modo seguente:

  <fs name="test" device="/dev/sdb3">
    <action name="status" depth="*" interval="10" />
    <nfsexport...>
    </nfsexport>
  </fs>

Alcuni agenti forniscono valori "depths" multipli di controllo. Per esempio, in un controllo normale dello stato del file system (depth 0) sarà possibile controllare se il file system è stato montato nella posizione corretta. Un controllo più dettagliato presenta un valore depth 10, con il quale si verifica la possibile lettura di un file dal file system. Con un valore depth 20 si verifica la possibilità di scrittura di un file system. Nell'esempio di seguito riportato depth è stato impostato su *, il quale indica che questi valori devono essere usati per tutti i parametri depth. Ne risulta che il file system test viene controllato con il valore più alto di depth fornito dall'agente delle risorse (in questo caso 20) ogni 10 secondi.