La pagina del Real Server Monitor
La pagina Real Server Monitors è divisa in tre sezioni.
· Dettagli
· Carica
· Monitor personalizzati
Dettagli
La sezione Dettagli è usata per aggiungere nuovi monitor e per rimuovere quelli che non ti servono. Puoi anche modificare un monitor esistente facendo doppio clic su di esso.
Nome
Nome di vostra scelta per il vostro monitor.
Descrizione
Descrizione testuale per questo Monitor, e raccomandiamo che sia meglio renderla il più descrittiva possibile.
Metodo di monitoraggio
Scegliere il metodo di monitoraggio dall'elenco a discesa. Le scelte disponibili sono:
· HTTP 200 OK
· HTTP 200 Head
· Opzioni HTTP 200
· Testa HTTP
· Opzioni HTTP
· Risposta HTTP
· Monitor TCP multiporta
· TCP fuori banda
· DICOM
· SNMP v2
· Controllo del server DNS
· LDAPS
Posizione della pagina
URL Posizione della pagina per un monitor HTTP. Questo valore può essere un link relativo come /folder1/folder2/page1.html. Puoi anche usare un link assoluto dove il sito web è legato all'hostname.
Contenuto richiesto
Questo valore contiene qualsiasi contenuto che il monitor deve rilevare e utilizzare. Il valore rappresentato qui cambierà a seconda del metodo di monitoraggio scelto.
Applicato a VS
Questo campo è automaticamente popolato con l'IP/Porta del servizio virtuale al quale il monitor è applicato. Non sarà possibile eliminare un monitor che è stato utilizzato con un servizio virtuale.
Utente
Alcuni monitor personalizzati possono usare questo valore insieme al campo password per accedere a un Real Server.
Password
Alcuni monitor personalizzati possono usare questo valore insieme al campo User per accedere a un Real Server.
Soglia
Il campo Threshold è un intero generale usato nei monitor personalizzati dove è richiesta una soglia come il livello di CPU.
NOTA: Assicurati che la risposta del server dell'applicazione non sia una risposta "Chunked".
Esempi di Real Server Monitor
Caricare il monitor
Ci saranno molte occasioni in cui gli utenti desiderano creare i propri monitor personalizzati e questa sezione permette loro di caricarli sull'ADC.
I monitor personalizzati sono scritti usando script PERL e hanno un'estensione di file .pl.
· Date un nome al vostro monitor in modo da poterlo identificare nell'elenco Metodo di monitoraggio
· Cerca il file .pl
· Fare clic su Carica nuovo monitor
· Il tuo file verrà caricato nella posizione corretta e sarà visibile come un nuovo Metodo di monitoraggio.
Monitor personalizzati
In questa sezione, è possibile visualizzare i monitor personalizzati caricati e rimuoverli se non sono più necessari.
· Fare clic sulla casella a discesa
· Selezionare il nome del monitor personalizzato
· Fare clic su Rimuovi
· Il tuo monitor personalizzato non sarà più visibile nell'elenco Metodo di monitoraggio
Creare uno script Perl personalizzato per il monitoraggio
ATTENZIONE: Questa sezione è destinata a persone con esperienza nell'uso e nella scrittura in Perl
Questa sezione vi mostra i comandi che potete usare all'interno del vostro script Perl.
Il comando #Monitor-Name: è il nome usato per lo script Perl memorizzato sull'ADC. Se non includi questa linea, il tuo script non sarà trovato!
I seguenti sono obbligatori:
· #Nome-Monitor
· usare rigorosamente;
· avvertimento d'uso;
Gli script Perl sono eseguiti in un ambiente CHROOTED. Spesso chiamano un'altra applicazione come WGET o CURL. A volte questi hanno bisogno di essere aggiornati per caratteristiche specifiche, come SNI.
Valori dinamici
· my $host = $_[0]; - Questo usa l'"indirizzo" dalla sezione IP Services--Real Server
· my $port = $_[1]; - Questo usa la "porta" dalla sezione IP Services--Real Server
· my $content = $_[2]; - Questo usa il valore "Required Content" dalla sezione Library--Real Server Monitoring
· my $notes = $_[3]; - Questo usa la colonna "Note" nella sezione Real Server di IP Services
· my $page = $_[4]; - Questo usa i valori di "Page Location" dalla sezione Library--Real Server Monitor
· my $user = $_[5]; - Questo usa il valore "User" dalla sezione Library--Real Server Monitor
· my $password = $_[6]; - Questo usa il valore "Password" dalla sezione Library--Real Server Monitor
I controlli sanitari personalizzati hanno due risultati
· Successo
Valore di ritorno
1Stampa un messaggio di successo a SyslogMarca
il Real Server Online (purché IN COUNT corrisponda)
· Unsuccessful
Valore di ritorno 2Stampa
un messaggio che dice Unsuccessful a SyslogMarca
il Real Server Offline (a condizione che OUT Count corrisponda)
Esempio di un monitor di salute personalizzato
Nome del monitor: HTTPS_SNI
usare rigorosamente:
avvertenze d'uso;
Il nome del monitor come sopra viene visualizzato nel menu a tendina dei controlli sanitari disponibili.
Ci sono 6 valori passati a questo script (vedi sotto)
# Lo script restituirà i seguenti valori
1 è il test è riuscito
# 2 se il test non ha successo sub monitor
{
my Shost= $_[O]; ### Host IP o nome
my Sport= $_[1]; ### Host Port
my Scontent= $_[2]; ### Contenuto da cercare (nella pagina web e negli header HTTP)
my Snotes= $_[3]; ### Nome host virtuale
my Spage= $_[4]; ### La parte dell'URL dopo l'indirizzo dell'host
my Suser= $_[5]: ### domain/usemame (opzionale)
my Spassword= $_[6]; ### password (opzionale)
mio $resolve;
mio $auth =;
se ($port)
{
$resolve = "$notes:$port:$host":
}
else {
$resolve = "$notes:$host";
}
se ($utente && $password) {
$auth = "-u $user:$password :
}
my @lines = 'curl -s -i -retry 1 -max-time 1 -k -H "Host:$notes --resolve $resolve $auth HTTPs://${notes}${page} 2>&1'; if(join(""@lines)=~/$content/)
{
print "HTTPs://$notes}${page} alla ricerca di - $content - Health check successful.\n";
ritorno(1);
}
else
{
print "HTTPs://${notes}${page} in cerca di - $content - Health check failed.\n";
ritorno(2)
}
}
monitor(@ARGV):
NOTA: Monitoraggio personalizzato - L'uso di variabili globali non è possibile. Usare solo variabili locali - variabili definite all'interno di funzioni