Capitolo 3. Gestione del servizio

Le seguenti sezioni descrivono come configurare, visualizzare, abilitare, disabilitare, modificare, posizionare e cancellare un servizio, e come gestire i servizi che non riescono ad avviarsi. Vengono forniti esempi su come impostare tipi specifici di servizi.

3.1. Coma configurare un servizio

Dopo aver impostato un disk storage e installato delle applicazioni che vengono gestite dal cluster, potete configurare i servizi in modo da gestire queste applicazioni e le risorse usando Tool di configurazione del Cluster.

Per configurare un servizio, seguire le seguenti fasi:

  1. Se possibile, creare uno script in grado di iniziare, terminare e controllare lo stato delle applicazioni usate nel servizio. Per maggiori informazioni controllare la Sezione 3.1.2.

  2. Ottenere informazioni inerenti le risorse e le proprietá del servizio. Per informazioni controllare la Sezione 3.1.1.

  3. Impostare i file system o i dispositivi raw usati dal servizio. Per informazioni controllare la Sezione 3.1.3.

  4. Assicurare che il software dell'applicazione possa operare su ogni membro (sul dominio di failover associato, se usato, o nel cluster) e che lo script del servizio, se presente, possa iniziare o terminare l'applicazione del servizio. Per informazioni su come effettuare un miglioramento, controllare la Sezione 3.1.4.

  5. Se effettuate un miglioramento da un cluster esistente, effettuare un back up del file /etc/cluster.conf. Per informazioni su come effettuare un miglioramento, controllare la Sezione 7.5.

  6. Avviate Tool di configurazione del Cluster e aggiungete i servizi, specificandone le informazioni inerenti le proprietà e le risorse del servizio ottenute nella fase 2.

  7. Salvate la vostra configurazione. Se salvate le impostazioni su di un membro del cluster, tale procedura verrà estesa automaticamente ad altri membri del cluster.

Per maggiori informazioni su come aggiungere un servizio del cluster, fate riferimento a quanto segue:

3.1.1. Come ottenere informazioni del servizio

Prima di configurare un servizio, raccogliere tutte le informazioni disponibili inerenti le proprietà e le risorse del servizio. In alcuni casi, é possibile specificare delle risorse multiple per un servizio (per esempio, indirizzi IP e dispositivi del disco multipli).

Le risorse e le proprietá del servizio che potete specificare usando Tool di configurazione del Cluster sono descritti in Tabella 3-1.

ProprietàDescrizione
Nome del servizioOgni servizio deve avere un nome unico. Un nome puó essere composto da 1 ad un massimo di 63 caratteri, e deve consistere in una combinazione di lettere (maiuscole o minuscole), numeri, linee, periodi e trattini. Tuttavia il nome del servizio deve iniziare con una lettera o con una linea.
Dominio di failover

Identificate il membro sul quale eseguire il servizio, associando il servizio con un dominio di failover esistente.
Quando la sequenza di failoaver è abilitata, se il membro sul quale il servizio è in esecuzione fallisce, il servizio viene automaticamente riposizionato al membro successivo seguendo la sequenza riportata sull'elenco del membro. (L'ordine delle preferenze viene stabilita dalla sequenza dei nomi del membro nell'elenco del dominio di failover). Per maggiori informazioni consultare la Sezione 2.9.

Intervallo di ControlloSpecifica la frequenza (in secondi) del controllo da parte di un membro, dello stato delle applicazioni associate ad un servizio. Per esempio, quando specificate un intervallo di controllo diverso da zero per un NFS o per il servizio Samba, Red Hat Cluster Manager verifica che NFS o i demoni Samba necessari, siano funzionanti. Per altri tipi di servizi, Red Hat Cluster Manager controlla lo stato di ritorno, dopo aver richiamato la clausola status, dello script di servizio dell'applicazione. Per default , l'intervallo di controllo è 0, ciò indica che il controllo del servizio è disabilitato.
script dell'utenteSe possibile, specificare il nome del percorso completo per lo script che sará usato per iniziare o terminare il servizio. Per informazioni controllare la Sezione 3.1.2
indirizzo IP

Uno o piú indirizzi IP del protocollo internet puó essere assegnato ad un servizio. Questo indirizzo IP (qualche volta chiamato indirizzo IP mobile "floating IP address") é diverso dall'indirizzo IP associato all'interfaccia Ethernet dell'host name per un membro, ció perché viene automaticamente riposizionato assieme alle risorse del servizio quando si verifica un fail over. Se i client usano questo indirizzo IP per accedere al servizio, essi non sapranno quale membrostà eseguendo il servizio, risultando cosí in un fail over trasparente per i client.
Notare che i membri del cluster, devono avere delle schede dell'intefaccia di rete già configurate nella sottorete IP di ogni indirizzo IP usato in un servizio.
Si possono specificare altresí, la maschera di rete e gli indirizzi di trasmissione per ogni indirizzo IP; se non sono specificati, il cluster userá la maschera di rete e gli indirizzi di trasmissione dall'interconnessione di rete presenti nella sottorete.

File speciale del dispositivoSpecificare ogni partizione dello shared disk usato in un servizio.
Opzioni di condivisione e file system

Se il servizio usa dei file system, specificarne il tipo, il mount point, e le opzioni di montaggio. Potete specificare qualsiasi opzione di montaggio del file system standard come descritto nella pagina man mount(8). Non é necessario fornire informazioni di montaggio per un raw device (se usato in un servizio). I file system ext2 e ext3 sono supportati per un cluster.
Specificare se abilitare un unmount forzato per un file system. Un unmount forzato permette all'infrastruttura di gestione del servizio del cluster, di smontare un file system prima di un riposizionamento o di un failover, anche se il file system è occupato. Ció é possibile terminando le applicazioni che hanno accesso al file system.
Potete specificare se esportare il file system tramite i permessi di accesso NFS. Per maggiori informazioni consultare la Sezione 5.1.
Specificare se rendere accessibili i file system ai client SMB tramite Samba fornendo un nome della condivisione Samba.

Tabella 3-1. Informazioni sulle proprietá e risorse del servizio

3.1.2. Creazione degli Script del Servizio

L'infrastruttura del cluster avvia e termina applicazioni specifiche, eseguendo gli script specifici del servizio. Per i servizi NFS e Samba, gli script associati sono interni alll'infrastruttura dei servizi del cluster. Di conseguenza, quando si esegue Tool di configurazione del Cluster per configurare i servizi NFS e Samba, lasciare lo Script dell'utente in bianco. Per altri tipi di applicazione é necessario designare uno script di servizio. Per esempio, quando si configura un'applicazione del database, specificare il nome esteso del percorso qualificato dello script di inizio del database corrispondente.

Il formato degli script del servizio é conforme alle convenzioni seguite dagli script init del System V. Questo tipo di convenzione indica che gli script hanno una clausola start, stop e status. Essi dovrebbero ritornare un valore d'uscita pari a 0 se non vi sono stati errori di alcun genere.

Quando un servizio non riesce ad avviarsi su di un membro del cluster, Red Hat Cluster Manager cercherà di avviare il servizio su altri membri. Se gli altri membri del cluster non riescono ad avviare il servizio, Red Hat Cluster Manager cerca di fermare il servizio su tutti i membri. Se per qualche ragione non vi riesce, l'infrastruttura del cluster metterà il servizio in una posizione di Failed. Gli amministratori allora, devono avviare Tool dello stato del Cluster, selezionando il servizio sospeso, e fare clic su Disabilita prima di abilitare il servizio stesso.

In aggiunta, per eseguire le funzioni di avvio e di arresto, ricordiamo che lo script è anche usato per controllare lo stato di un servizio dell'applicazione. Questo può essere fatto richiamando l'opzione status dello script del servizio. Per permettere il controllo del servizio, specificare un valore diverso da zero nel campo Intervallo di controllo quando si specificano le proprietà del servizio con Tool di configurazione del Cluster. Se il valore d'uscita inviato allo script del servizio é diverso da zero, l'infrastruttura del cluster cercherá di riavviare l'applicazione sul membro originario. Le funzioni dello stato non devono essere implementate negli script del servizio. Se non viene effettuato alcun controllo da parte dello script, viene riportato allora una opzionestatus che indica il successo di tale procedura.

Le operazioni effettuate all'interno della clausola dello stato di un'applicazione, possono essere adattate per andare incontro ai bisogni dell'applicazione e dei parametri specifici del sito. Per esempio, un semplice controllo dello stato di un database consiste nella verifica del funzionamento del database stesso. Un controllo piú approfondito consiste nell'eseguire una serie di interrogazioni riportate in una tabella apposita del database.

La directory /usr/share/cluster/doc/services/examples contiene un template che puó essere usato per creare degli script del servizio in aggiunta agli esempi. Consultare la Sezione 4.1, la Sezione 4.3, Capitolo 6, per esempi di script.

3.1.3. Configurazione del Disk Storage del Servizio

Prima di creare un servizio, impostare i file system condivisi e i raw device usati dal servizio. Per maggiori informazioni controllare la Sezione 1.4.4.

Se si usano dei raw device in un servizio del cluster, é possibile usare il file /etc/sysconfig/rawdevices per vincolare i dispositivi al momento dell'avvio. Modificare il file e specificare i raw character device ed i dispositivi a blocco che devono essere collegati ogni volta che il membro esegue un avvio. Per maggiori informazioni controllare la Sezione 2.5.

Notare che il software RAID ed il RAID basato sull'host non sono supportati per lamemoria del disco condiviso. Solo schede RAID basate sull'adattatore SCSI possono essere usate per la memoria del disco condiviso.

È consigliato seguire i consigli per il servizio del disk storage:

  • Per ottenere delle prestazioni ottimali, usare una misura del blocco di 4KB nella creazione dei file system. Notare che alcuni file system mkfs possono configurare delle utility di default con una misura del blocco di 1 KB, ció puó causare tempi molto lunghi di fsck.

  • Per ottenere tempi di failover piú veloci, é consigliato usare un filesystem ext3. Per maggiori informazioni controllare la Sezione 1.4.4.6.

  • Per file system molto grandi, usare l'opzione nocheck per baipassare il codice che controlla tutti i gruppi di blocco sulla partizione. Se si specifica l'opzione nocheck si puó diminuire notevolmente il tempo necessario per effettuare il montaggio di un file system molto grande.

3.1.4. Verifica del software di applicazione e degli script di servizio

Prima d'impostare un servizio, installare l'applicazione che verrá usata nel servizio su ogni membro nel cluster (o su ogni membro nel dominio di failover, se usato). Dopo aver installato l'applicazione su questi membri, verificarne la funzionalitá e l'accessibilitá al disk storage condiviso. Per prevenire la corruzione dei dati, non eseguire l'applicazione simultaneamente su più di un membro.

Se si usa uno script per iniziare e terminare l'applicazione di un servizio, installare e successivamente effettuare un test dello script su tutti i membri del cluster, verificare altresí che lo script sia in grado di iniziare e terminare l'applicazione. Per informazioni controllare la Sezione 3.1.2.