Você está na página 1de 11

GUIDA USO HYPERIC HQ

Descrizione Applicazione e Tecnologie utilizzate

L’applicazione oggetto del test è stata realizzata in Grails 1.3.6, per il database è stato utilizzato
MySQLServer 5.0. Il DB consta di tre tabelle (utente, proprietario, auto), ma in fase di test ne sono
state utilizzate solo due (Utente per la login, proprietario per l’aggiunta di un nuovo record e per la
lista).
Il deploy dell’applicazione è stato fatto su Apache Tomcat 6.0 residente su una workstation
Window XP, la stessa su cui è presente il DB e i test sono stati effettuati da un PC
Per il monitoraggio del comportamento dell’applicazione è stato utilizzato Hyperic 4.5.

Introduzione a HYPERIC HQ
Hyperic è tool opensource sviluppato da VMWare che consente la gestione integrata di software e
hardware di un’intera infrastruttura aziendale. Numerose sono le funzionalità che offre, come
l’autodiscovery dell’inventario hardware e software, il monitoraggio dei vari livelli
dell’infrastruttura, report degli eventi, tracciamento di variazioni delle configurazioni, gestione
degli allarmi, diagnosi degli errori e molto altro ancora. Una panoramica esaustiva è presente sul
sito ufficiale: http://support.hyperic.com/ .

Panoramica sul funzionamento di HYPERIC HQ


I componenti fondamentali di Hyperic sono i seguenti:
 HQ Agent: va installato su ogni client da monitorare, e provvede all’autodiscovering del
software attivo sulla macchina e al periodico scan per la rilevazione di cambi di
configurazione. Inoltre consente la raccolta di dati prestazionali, la generazione di log e la
tracciatura degli eventi e l’invio di queste informazioni all’HQ Server;
 HQ Server: riceve i dati di inventario e metrici dai singoli agenti HQ e li memorizza nel
database, fornendo servizi per la gestione dell’inventario software che consente il
raggruppamento delle risorse in modo da facilitare il processo di monitoraggio e gestione.
Provvede al rilevamento degli alert e alle procedure di notifica in base a soglie definite
dall’utente. Tra le altre cose fornisce servizi di autenticazione, utilizzando un motore
interno o un servizio di autenticazione esterno.
 HQ Database: è la sede in cui vengono registrati e immagazzinati i dati relativi al
monitoraggio provenienti dall’ HQ Server.
 HQ Portal: è l’interfaccia grafica lato utente che permette la consultazione dei dati
registrati, la personalizzazione degli alert e degli allarmi, la visualizzazione delle metriche e
la gestione del monitoraggio.

Configurazione del DB per l’utilizzo di HYPERIC HQ

Affinchè le informazioni di monitoraggio possano essere salvate, è necessario utilizzare un


database che consenta la ricezione delle informazioni dall’ HQ Server . HYPERIC sfrutta un DB
nativo basato su PostgreSQL V8.2.5, che però riesce a gestire non più di 25 client; quindi per
infrastrutture più grandi è necessario configurare ad hoc un database esterno tra quelli supportati,
cioè Postgres, Oracle o Mysql.
Nelle prove in esame si è scelto di utilizzare il DB nativo, ma a titolo di esempio mostriamo le
operazioni preliminari per preparare l’ambiente.
Innanzitutto bisogna creare un un nuovo utente e un nuovo schema da prompt:

mysql> create user 'hqadmin'@'<hq_server_host>' identified by '<passwd>';


mysql> create database HQ CHARACTER SET utf8 COLLATE utf8_bin;
mysql> grant all on HQ.* to 'hqadmin'@'<hq_server_host>';

Successivamente modificare il file my.ini, cambiando il valore di alcuni parametri e settandone


altri che non erano presenti. Di seguito la lista delle modifiche da fare:
1. Enable the full query log. Every query (even ones with incorrect syntax) that the database server
receives will be logged. This is useful for debugging, but it is usually disabled in production use. Be
sure to change the paths given here to match your environment.

[mysqld]
log-error = /home/mysql/log/mysqld.err
log = /home/mysql/log/mysql_general.log

2. Print warnings to the error log file. If you have any problem with MySQL, you should enable
logging of warnings and examine the error log for possible explanations.
log_warnings
server-id = 1

3. Configure buffer pool size. The size of the MySQL buffer pool is has a significant impact on
MySQL performance. If your database is on a dedicated machine, make the buffer pool about 80% of
total memory.
innodb_buffer_pool_size = 256M

4. Configure the frequency with which the log buffer is written to the log, and the log is flushed to the
disk. Setting this value to 0 dramatically increases MySQL performance, but with this setting, you are
likely to lose data in the event of a server crash. If loss of data is unacceptable, use a value of 2 instead.
Hyperic does not recommend setting the value to 1.

innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 64M
innodb_log_file_size = 256M

5. Configure innodb as the default storage engine---this is required.

default-storage_engine=innodb
bulk_insert_buffer_size = 32M
join_buffer_size = 8M
max_heap_table_size = 256M
tmp_table_size = 256M
max_tmp_tables = 48
myisam_sort_buffer_size = 256M

6. Configure the sort buffer size. MySQL recommends a sort_buffer_size larger than the one suggested
her.

sort_buffer_size = 64K

An article on experimenting with sort buffer size is available here.

http://www.mysqlperformanceblog.com/2007/08/18/how-fast-can-you-sort-data-with-mysql

7. Configure the read buffer size. Because Hyperic does a significant volume of sequential reads, a
large read buffer improve performance.

read_buffer_size = 1M
read_rnd_buffer_size = 10M
table_cache = 2048
set-variable = max_connections=400
key_buffer_size = 256M
thread_cache_size = 32
8. Configure the number of threads that can run in the InnoDB kernel. A starting point for setting this
value is to to set a value equal to 2 times the number of CPUs times the number of disks.

innodb_thread_concurrency = 8

9. Set the method that is used to flush data and log files. For battery-backed-up storage with write-back
cache mode on Linux OSs, the O_DIRECT flush method is good. Learn about other innodb flush
methods.

innodb_flush_method=O_DIRECT
innodb_rollback_on_timeout=1

In this situation, tune your Linux OS (version 2.6 or higher) to favor the use of main memory rather
than file caches:

# sysctl -w vm.swappiness=30

or

# echo 30 >/proc/sys/vm/swappiness

10. Set the size of the query cache. Generally, the higher this value, the better the performance.
However, in MySQL versions older than 5.0.50, beware of setting this variable too high, as it may
cause the database to pause. For more information, see the bug description at
http://bugs.mysql.com/bug.php?id=21074.

query_cache_size = 0

11. The default value here is 1M. If the qcache_hits-to-qcache_inserts ratio is low, raise this value.

query_cache_limit = 8M

12. HQ requires a char encoding of utf-8.

default-character-set=utf8
collation_server=utf8_bin

Le istruzioni complete, anche per gli altri db, si possono trovare a questo link:
http://support.hyperic.com/display/DOC/Set+Up+HQ+Database
Installazione di HYPERIC HQ

Scaricare l'ultima versione stabile (4.5.1) a questo link: http://sourceforge.net/projects/hyperic-


hq/files/Hyperic%204.5.1/Hyperic%204.5.1-GA/hyperic-hq-installer-4.5.1-win32.zip/download
Creare una directory di destinazione (es. C:/hyperic)
Scompattare l’archivio ed eseguire il file setup.bat, che aprirà la seguente finestra:

Dopo aver selezionato 1 per l’installazione dell’HQ Server andremo ad inserire i parametri di
configurazione secondo la procedura guidata (ove possibile lasciare i valori di default).
Procedura analoga per l’installazione dell’HQ Agent, al cui termine riceveremo un messaggio come
questo:

Received temporary auth token from agent


Registering agent with HQ
HQ gave us the following agent token
1215038691323-8570363106994871928-8259195015465958356
Informing agent of new HQ server
Validating
Successfully setup agent

A questo punto possiamo andare nella directory di installazione dell’HQ Server e lanciare il
comando hq-server.bat command che ci dà l’elenco dei comandi disponibili. Eseguiamo il comando
hq-server.bat install ,ed in questo modo creiamo il servizio dell’HQ Server per Windows, e poi hq-
server.bat start per avviare l’HQ Server.
Stessa procedura va fatta per la creazione e l’avvio del servizio dell’HQ Agent, ricordandosi di
entrare nella directory di installazione specifica, eseguendo in successione i comandi
hq-agent.bat install e hq-agent.bat start e seguire la procedura guidata.

A questo punto possiamo accedere all’HQ Portal a questo indirizzo http://<IP-server>:7080/


Configurazione della Dashboard

Nella sezione Administration andare alla voce Monitoring Defaults : apparirà una schermata che permette
di scegliere quali tipi di piattaforme o serve monitorare; nel nostro caso abbiamo checkato tutte le voci
riguardanti Apache Tomcat 6.0 e MySQL Stats 5.0.x .

Nella pagina della Dashboard, in alto a destra, c’è l’elenco delle risorse rilevate dall’autodiscovery: bisogna
selezionare quelle che ci interessano e aggiungerle all’inventario con il relativo pulsante, in modo tale da
averle disponibili per il monitoraggio dal link Browse della sezione Resources.

A questo punto possiamo scegliere quale piattaforma monitorare, qui nell’esempio abbiamo 2 PC.

Nella schermata successiva vediamo una panoramica dei server attivi che possiamo monitorare, e nel menù
sulla sinistra è possibile selezionare una risorsa per avere un livello di dettaglio più accurato.
Per predisporre all’analisi un server è necessario selezionare le operazioni che ci interessa monitorare, e
per fare ciò bisogna spostarsi nella sezione Administration alla voce Monitoring Defaults. Qui troviamo un
elenco di piattaforme, servizi e server che è possibile sottoporre a monitoraggio; a titolo di esempio
abbiamo preso in considerazione MySQL Stats 5.0; cliccando il corrispondente pulsante Edit Metric
Template andiamo sulla pagina successiva, in cui selezioneremo tutte le opzioni di scelta a disposizione.
A questo punto salviamo e torniamo alla sezione Resources e selezioniamo la piattaforma dove risiede il
server MySQL da monitorare; clicchiamo quindi su MySQL Stats 5.0 dall’elenco, e la pagina successiva ci
presenterà un menu alla sinistra dove possiamo scegliere quali metrics analizzare. Le opzioni di scelta sono
veramente sono numerose, nel nostro caso abbiamo selezionato numero di comandi SELECT, numero di
comandi SELECT per minuto, numero di comandi INSERT e numero di comandi INSERT per minuto.

Come si può vedere, per ogni risorsa selezionata appare il rispettivo grafico, personalizzabile per quanto
riguarda il range dei valori e il tempo di osservazione. E’ inoltre possibile creare un link diretto sulla
dashboard, oppure salvare il grafico in formato CSV.

Configurazione degli Alert

Per ognuna delle risorse monitorate è possibile configurare degli alert, che si renderanno visibili sulla
Dashboard ogni qualvolta si verifichi un evento prestabilito. Per fare ciò occorre selezionare la risorsa da
monitorare ed entrare nella sezione Alert – Configure – New.
Ogni volta che si crea un nuovo alert occorre impostare il nome, la priorità, la condizione scatenante e la
frequenza dell’avviso.

Terminata l’operazione si arriva ad una pagina riepilogativa con l’elenco degli alert configurati: qui è
possibile renderli attivi o meno, a seconda delle esigenze.
Infine, ecco il riepilogo degli alert segnalati sulla Dashboard.

Altre opzioni più avanzate per il settaggio degli alert sono presenti nella sezione Administration alla voce
Escalation Schemes Configuration.

Conclusioni

L’obbiettivo di questo breve documento era quello di offrire una piccola guida introduttiva a chi si affaccia
al mondo Hyperic per la prima volta, cercando di fornire gli strumenti base per un corretto utilizzo.
In questa sede sono stati toccati soltanto una minima parte degli aspetti di questo software,ma le sue
potenzialità sono veramente enormi, e si scoprono soltanto dopo un po’ di tempo che si passa navigando
all’interno delle pagine dell’applicazione. Di contro possiamo dire che il suo utilizzo non è proprio intuitivo,
e abbiamo rilevato una carenza nella documentazione ufficiale per quanto riguarda i settaggi più avanzati.

Você também pode gostar