sabato 31 gennaio 2015

Zabbix Update

Zabbix - Upgrade di versione "major"

Ebbene si, il vostro sistema di monitoraggio Zabbix è "up and running" da diverso tempo, ma avete messo gli occhi su quella nuova feature implementata nella nuova release di Zabbix, avete però paura, non siete sicuri di come procedere per aggiornare il vostro ambiente senza fare danni. Questa breve guida vi darà alcuni spunti e raccomandazioni per aggiornare Zabbix all'ultima versione.

Partiamo dalla prima nozione: a partire da Zabbix 2.0, gli aggiornamenti di versione sono stati semplificati, non dovrete infatti applicare nessuna patch manuale al database, ma Zabbix si occuperà di tutto.

Seconda nozione: prima di fare un upgrade ad una diversa "major" release, è obbligatorio avere un backup del database e comunque sempre consigliabile effettuare prima l'upgrade su un database di test.

Da Zabbix 1.8.x a 2.0.x

La fase di aggiornamento del database da 1.8 a 2.0 potrebbe richiedere diverso tempo a seconda della dimensione del database, in quanto vengono aggiornate tutte le tabelle di history, tenetene quindi conto per schedulare il downtime del servizio.

Prima di tutto, leggete sempre le note di aggiornamento prima di procedere con l'upgrade, per la versione 2.0 le troverete qui:


  1. Spegnere il servizio Zabbix Server, per assicurarsi che non avvengano scritture durante l'aggiornamento. E' consigliabile anche spegnere o mettere in "maintenance" tutti i frontend, per evitare che qualcuno possa effettuare modifiche durante l'aggiornamento.
  2. Se non l'avete fatto, effettuate un backup del database di Zabbix.
  3. Effettuate un backup dei binari (zabbix_server, zabbix_agentd, ....), dei file di configurazione (zabbix_server.conf, zabbix_agentd.conf) e dei file PHP di Zabbix.
  4. Installate i nuovi binari di Zabbix, potete compilarli oppure utilizzare i pacchetti pronti per la vostra distribuzione linux.
  5. Verifica dei file di configurazione: ogni nuova major release di Zabbix introduce nuovi parametri di configurazione o modifica quelli vecchi, fate una verifica delle vostre configurazioni di agent e server.
  6. Aggiornamento del database, putroppo l'aggiornamento in questo caso è manuale, lo script di aggiornamento lo potete trovare nella directory dei sorgenti, sotto: upgrades/dbpatches/2.0/. E' necessario eseguire lo script in base al database in uso (MySQL, Postgres, Oracle, ...):
    • MySQL: upgrades/dbpatches/2.0/mysql/patch.sql
    • PostgreSQL: upgrades/dbpatches/2.0/postgresql/patch.sql
    • Oracle: upgrades/dbpatches/2.0/oracle/patch.sql
    • IBM DB2: upgrades/dbpatches/2.0/ibm_db2/patch.sql
  7. Installate il nuovo frontend.
  8. Avviate i nuovi binari di Zabbix (server, agent, ...) e verificate dai file di log che tutto sia andato a buon fine.

 Da Zabbix 2.0.x a 2.2.x

La fase di aggiornamento del database da 2.0 a 2.2 potrebbe richiedere diverso tempo se sono presenti molti "event" sul database, tenetene quindi conto per schedulare il downtime del servizio, è possibile velocizzare la procedura di aggiornamento andando a pulire manualmente la tabella "events".

Prima di tutto, leggete sempre le note di aggiornamento prima di procedere con l'upgrade, per la versione 2.2 le troverete su: https://www.zabbix.com/documentation/2.2/manual/installation/upgrade_notes_220


  1. Spegnere il servizio Zabbix Server, per assicurarsi che non avvengano scritture durante l'aggiornamento. E' consigliabile anche spegnere o mettere in "maintenance" tutti i frontend, per evitare che qualcuno possa effettuare modifiche durante l'aggiornamento.
  2. Se non l'avete fatto, effettuate un backup del database di Zabbix.
  3. Effettuate un backup dei binari (zabbix_server, zabbix_agentd, ....), dei file di configurazione (zabbix_server.conf, zabbix_agentd.conf) e dei file PHP di Zabbix.
  4. Installate i nuovi binari di Zabbix, potete compilarli oppure utilizzare i pacchetti pronti per la vostra distribuzione linux.
  5. Verifica dei file di configurazione: ogni nuova major release di Zabbix introduce nuovi parametri di configurazione o modifica quelli vecchi, fate una verifica delle vostre configurazioni di agent e server.
    ATTENZIONE
    : Dopo l'aggiornamento a Zabbix 2.2 l'houskeeper sarà disattivato di default. Per abilitare le funzioni di housekeeping di cui si ha bisogno, sarà necessario aprire il frontend alla sezione "Administration -> General -> Housekeeper" e spuntare le caselle richieste.
  6. Avviate i nuovi binari di Zabbix (server, agent, ...), l'aggiornamento del database sarà effettuato automaticamente, potete verificare nel file di log l'avanzamento e che tutto sia andato a buon fine.
  7. Installate il nuovo frontend.

Da Zabbix 2.2.x 2.4.x

NOTA: La versione 2.4 di Zabbix NON ha più il supporto al monitoraggio distribuito "master/slave", eseguendo l'aggiornamento verrà rimosso tale funzionalità e tutti i nodi diventeranno dei "master" standalone, quindi tenetene conto.

ZabbixUnify

La fase di aggiornamento del database da 2.2 a 2.4 potrebbe richiedere diverso tempo, tenetene quindi conto per schedulare il downtime del servizio.
Prima di tutto, leggete sempre le note di aggiornamento prima di procedere con l'upgrade, per la versione 2.4 le troverete su: https://www.zabbix.com/documentation/2.4/manual/installation/upgrade_notes_240


  1. Spegnere il servizio Zabbix Server, per assicurarsi che non avvengano scritture durante l'aggiornamento. E' consigliabile anche spegnere o mettere in "maintenance" tutti i frontend, per evitare che qualcuno possa effettuare modifiche durante l'aggiornamento.
  2. Se non l'avete fatto, effettuate un backup del database di Zabbix.
  3. Effettuate un backup dei binari (zabbix_server, zabbix_agentd, ....), dei file di configurazione (zabbix_server.conf, zabbix_agentd.conf) e dei file PHP di Zabbix.
  4. Installate i nuovi binari di Zabbix, potete compilarli oppure utilizzare i pacchetti pronti per la vostra distribuzione linux.
  5. Verifica dei file di configurazione: ogni nuova major release di Zabbix introduce nuovi parametri di configurazione o modifica quelli vecchi, fate una verifica delle vostre configurazioni di agent e server.
  6. ATTENZIONE: Dopo l'aggiornamento a Zabbix 2.4 da una release precedente alla 2.2 l'houskeeper sarà disattivato di default. Per abilitare le funzioni di housekeeping di cui si ha bisogno, sarà necessario aprire il frontend alla sezione "Administration -> General -> Housekeeper" e spuntare le caselle richieste.
  7. Avviate i nuovi binari di Zabbix (server, agent, ...), l'aggiornamento del database sarà effettuato automaticamente, potete verificare nel file di log l'avanzamento e che tutto sia andato a buon fine.
  8. Installate il nuovo frontend.

Da Zabbix 2.4.x a 3.0.x

Zabbix 3.0 non è ancora stato rilasciato al momento, ma quando lo sarà, la procedura, salvo eccezioni comunicate, sarà la stessa degli upgrade precedenti. Leggete sempre le note di aggiornamento:

Nota: per passare da Zabbix 2.0 ad una versione successiva, non è necessario passare per tutti gli step, ma ad esempio, si può passare direttamente da Zabbix 2.0 a 2.4.

martedì 25 ottobre 2011

mercoledì 28 settembre 2011



ProActive: la soluzione ad ogni esigenza ICT per annullare i costi dei disservizi

Gentile Dottoressa, Egregio Dottore
l'infrastruttura ICT, asse portante dei processi dell'ente, ha raggiunto oggi una elevata complessità e le applicazioni software sono utilizzate intensamente da tutte le persone dell'organizzazione.
Ogni disservizio, dal semplice rallentamento al completo blocco del sistema, genera costi diretti e indiretti elevati se non addirittura perdite: è necessario dotarsi degli strumenti per prevenire questi incidenti.
Il team dei sistemi informativi deve allargare ed aggiornare costantemente le proprie conoscenze ed i costi di mantenimento di queste competenze sono sempre più onerose, ma a supporto sono disponibili diversi servizi di monitoraggio remoto a costi certi e contenuti.

Approfondiremo con Voi questo argomento di grande attualita’, per condividere la nostra esperienza , le Vostre esigenze e le nostre proposte,
il 20/10/2011 nel workshop "ProActive: la soluzione ad ogni esigenza ICT per annullare i costi dei disservizi "
dalle 10.00 alle 16.00 a Bologna presso 4 Viale Masini Hotel Design - Viale A. Masini, 4/3 - Bologna sala ONE :
agenda
10.00-10.30
Welcome coffee e registrazione partecipanti
10.30-13.00 Novità ProActive Management, parte tecnica Slide & Demo
13.00-14.00 Light Lunch
14.00-16.00 "TavolaRotonda: presentazione case history, a confronto esigenze e soluzioni"

La partecipazione e’ gratuita previa iscrizione -> iscrizione on line 
per qualunque informazione potete contattarci via mail marketing@ads.it 



"WorkShop in pillole"
Per una maggiore comprensione degli argomenti trattati,
abbiamo organizzato delle sessioni di circa 10 min in videoconferenza nei giorni:
05/10/2011 dalle ore 14.00 alle ore 16.00
07/10/2011 dalle ore 10.00 alle ore 12.00 .

                               
 Chi lo desidera puo’ prenotarsi ai seguenti link
                                 05/10-> iscrizione on line
                                 07/10-> iscrizione on line


                                 il giorno 03/10 verranno fornite via mail le istruzioni per collegarsi con                                               

                                 indicazione dell' orario preciso della sessione.

venerdì 23 settembre 2011

Linux Wait I/O what process is causing it ?

How to analyze Wait I/O problem ?

the first thing is to control what kernel version you have.

> 2.6.20 ?

You can use the IOTOP or LATENCYTOP utility that uses the IO_ACCOUNT capability of new kernel

< 2.6.20 ?

block_dump
block_dump enables block I/O debugging when set to a nonzero value.
When this flag is set, Linux reports all disk read and write operations that take place, and all block dirtyings done to files. The output of block_dump is written to the kernel output, and it can be retrieved using "dmesg".
When you use block_dump and your kernel logging level also includes kernel debugging messages, you probably want to turn off klogd, otherwise the output of block_dump will be logged, causing disk activity that is not normally there.

- First you must clear all log in "dmesg"
#dmesg -c 

- Stop any syslog you have for loggin only disk activity
 #/etc/init.d/syslog stop 

- Enable Block_Dump
# echo 1 > /proc/sys/vm/block_dump 
( also sysctl vm.block_dump for read the value and sysctl vm.block_dump=1 to enable the feature)

- Start the reporting: 
#while true; do sleep 1; dmesg -c; done | perl iodump (download iodump script )

- CTRL-C Stop the system from dumping these messages

- Disable Block_Dump after the analisys
#echo 0 > /proc/sys/vm/block_dump 
(also sysctl vm.block_dump for read the value and sysctl vm.block_dump=0 to disable the feature)

- Re-Start any syslog
# /etc/init.d/syslog start



dmesg -c
/etc/init.d/syslog stop 
echo 1 > /proc/sys/vm/block_dump 
touch /tmp/disklog 
watch "dmesg -c >> /tmp/disklog" 
CTRL-C when you're done collecting data 
echo 0 > /proc/sys/vm/block_dump 
/etc/init.d/syslog start
cat /tmp/disklog | awk -F"[() \t]" '/(READ|WRITE|dirtied)/ {activity[$1]++} END {for (x in activity) print x, activity[x]}'| sort -nr -k2 


mercoledì 14 settembre 2011

Opteron 6000-series HP DL585-G7

RedHat ES 5.5 go to Kernel Panic on boot (also with the installer) with video message:

Code: 8b 72 40 48 8d 4c 24 1c 48 8b 7a 20 ba c4 01 00 00 e8 5f 77
RIP [] cpuid4_cache_lookup+0x256/0x356
RSP
CR2: 0000000000000040
<0>Kernel panic - not syncing: Fatal exception
There isn't valid kernel boot parameter in RHEL 5.5 , only RHEL 5.4 with apic=bigsmp is able to start.
RHEL 5.6 with the new kernel hasn't any problem to boot!


HP KB-Notes

RedHat KB-Notes

In a VmWare environment the only possibility to install a RedHat 5.5 is setting EVC mode and abstract cpu version at the linux kernel

EVC and CPU Compatibility FAQ KB article 1005764

Enhanced VMotion Compatibility (EVC) processor support KB article 1003212

venerdì 26 agosto 2011

Zimbra - HowTo make SSL certificate

Generate SSL Certificate CSR for Zimbra and signing it with Microsoft CA


First you must generate a CSR (CertifcateSignRiquest)

# how user root
#/opt/zimbra/bin/zmcertmgr createcsr comm -new -subject "/CN=zimbadmz.testmail.local/OU=Sistemisti/O=systematica/L=Bologna/ST=Italy/C=IT" -subjectAltNames "zimbadmz.testmail.local,zimbaba.testmail.local"

The CSR File is /opt/zimbra/ssl/zimbra/commercial/commercial.csr

[root@zimbaba ~]# cat /opt/zimbra/ssl/zimbra/commercial/commercial.csr
-----BEGIN CERTIFICATE REQUEST-----
MIICFjCCAX8CAQAwcTEVMBMGA1UEAxMMem1haWwuYWRzLml0MRMwEQYDVQQLEwpT
aXN0ZW1pc3RpMRQwEgYDVQQKEwtzeXN0ZW1hdGljYTEQMA4GA1UEBxMHQm9sb2du
YTEOMAwGA1UECBMFSXRhbHkxCzAJBgNVBAYTAklUMIGfMA0GCSqGSIb3DQEBAQUA
A4GNADCBiQKBgQC7DX5xHqn075bbWevGOyQXqH0d5p1SRZpxceAklNR2PF2OXum7
0I31Dq2UY307pujJFq0jJtOsMRblPcbMFnttZvKgCRv6S8wauwYxDScD10P2aGLd
KmxXPZow4ko5Dd4FKKjE2TwO+ohBqTqfPCwXU228hHtTo1c1AwkwSvuLsQIDAQAB
oGUwYwYJKoZIhvcNAQkOMVYwVDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIF4DA6BgNV
HREEMzAxghZ6aW1iYWJhLnRlc3RtYWlsLmxvY2Fsghd6aW1iYWRtei50ZXN0bWFp
bC5sb2NhbDANBgkqhkiG9w0BAQUFAAOBgQB9hwQXBCd9Qj2MEw5I5PGtAZS/Hj/1
PoiJce8dCYWioXKnq8vchftz435dBCC3+rztrSqZbihPtFcWMPWs1FiCna2RSO6m
jJ9+wtNspO4RsCvE2DUHflP1mRmHFksh1p6BUyJOLgBHoq0QiG7McE86VwiRs+FB
sddM4kwefEIG8g==
-----END CERTIFICATE REQUEST-----
[root@zimbaba ~]# 


Go to the Microsoft Certification Authority http://srv_ca.domain/CertSrv and paste the content of CSR file.
Create a certificate for "WebServer" and export them in Base64 format.

Copy your RootCA in /opt/zimbra/ssl/zimbra/commercial/commercial_ca.crt
Copy your CRT in /opt/zimbra/ssl/zimbra/commercial/server.cer

How to verify the cert file:
/opt/zimbra/bin/zmcertmgr verifycrt comm /opt/zimbra/ssl/zimbra/commercial/commercial.key \ /opt/zimbra/ssl/zimbra/commercial/server.cer

Now install the cert:
/opt/zimbra/bin/zmcertmgr deploycrt comm /opt/zimbra/ssl/zimbra/commercial/server.cer \ /opt/zimbra/ssl/zimbra/commercial/commercial_ca.crt

Restart and test

Zimbra - HowTo backup zimbra free edition FOSS

Backup of Zimbra free edition FOSS
is based on the command
#zmmailbox -z -m account@domain getRestURL '//?fmt=tgz' > /where/doyouwant/backup.tgz
that export all account content
Set the user in Maintenance mode,
When a mailbox status is set to maintenance, login is disabled,and mail addressed to the account is queued at the MTA.
An account can be set to maintenance mode for backing up, importing or restoring the mailbox.
#zmprov ma account@domain.com zimbraAccountStatus maintenance
Restore user in Active State
#zmprov ma account@domain.com zimbraAccountStatus active
[zimbra@zimbra]$ cat esporta_account.sh
#!/bin/bash


DIR='/opt/zimbra/backup';


LOG=$DIR/backup.log
USERS_LIST=`/opt/zimbra/bin/zmprov -l getAllAccounts`;
DATE=`date +%Y-%m-%d`;


echo ""> $LOG
echo "#############################" >> $LOG
echo "#######-START BACKUP-#######" >> $LOG
echo "#######-$DATE-##########"  >> $LOG
echo "">> $LOG


for ACCOUNT in $USERS_LIST
do
 echo SettingUp Maintenance mode for account: $ACCOUNT >> $LOG
 /opt/zimbra/bin/zmprov ma $ACCOUNT zimbraAccountStatus maintenance
 echo Backup of account: $ACCOUNT >> $LOG
 echo Dimension of account : $ACCOUNT `/opt/zimbra/bin/zmmailbox -z -m $ACCOUNT gms` >> $LOG
 /opt/zimbra/bin/zmmailbox -z -m $ACCOUNT getRestURL '//?fmt=tgz' > $DIR/$DATE-$ACCOUNT.tgz;
 if [ $? == 0 ]
    then echo Backup account: $ACOUNT OK >> $LOG
    else echo Backup account: $ACOUNT ERROR >> $LOG
 fi
 echo Restoring Active mode for account: $ACCOUNT >> $LOG
 /opt/zimbra/bin/zmprov ma $ACCOUNT zimbraAccountStatus active
 echo "">> $LOG
done


echo "#######-END   BACKUP-#######" >> $LOG
echo "#######-$DATE-##########"  >> $LOG
echo "#############################" >> $LOG
echo "" >> $LOG


# SEND MAIL REPORT
cat $LOG | mail -s 'Backup Zimbra FOSS' backup_control@domain
[zimbra@zimbra]$


Restore from Backup 

#Create an parallel account where put the restored data
zmprov ca account_restore@domain pwd


# Restore on the parallel account (you must have the file of the backup!!)
zmmailbox -z -m account_restore@domain postRestURL "//?fmt=tgz&resolve=reset" /where/doyouwant/backup.tgz


But.... that's all?????