Centos Rocky – Aumentare spazio disco su una VM senza LVM (non disco principale)

Potresti aver bisogno di aumentare lo spazio di una partizione normale ovvero non LVM. Elenco i passi da seguire per effettuare questa modifica:

  1. Individua il disco che devi aumentare la capacità, nel mio caso è un disco montato su /opt con file system EXT4 che era 70GB e dovrei espanderlo a 100GB
  2. Spegni la VM in maniera corretta con shutdown/poweroff
  3. Sulla parte Vmware (Settings della VM) espandi il disco da 70GB a 100GB
  4. Fai uno snapshot della VM ora, da spenta e con il disco gia’ esteso dal punto precedente
  5. Ora fai ripartire la VM, in realta’ non succede nulla, solo se fai un “fdisk -l” vedi che il tuo disco ha 30GB di spazio libero.
  6. Smonta il disco, tieni presente che il mio era un disco aggiuntivo e non quello di ‘root’ ovvero “/” – Nel mio casoil comando era ‘umount /opt’ – Sfortunatamente la risposta del sistema era ‘target busy’ in quanto parecchi servizi attivi utilizzavano quel disco. Occorre armarsi di pazienza e attraverso ‘lsof /opt’ annotasi i processi che utilizzano /opt e fermarli in un modo corretto oppure con un ‘killall process_name’
  7. Ora evi solamente spostare i puntatori di ‘fine partizione’ di 30GB più avanti. Per questo ti viene in aiuto ‘parted’ che fa questo lavoro. Nel mio caso il disco era sdc quindi il comando nel mio caso era ‘parted /dev/sdc’ . Ora dei dentro all’applicazione fai ‘print free’ e vedi lo spazio libero e occupato del disco sdc. Ora puoi fare “resizepart 1 107GB” che effettuerà il resize della partizione 1 del disco /dev/sdc con un size di 107GB totali. Attenzione a non dare un numero di GB inferiore a quello che è la partizione originale.
  8. Ora fai ripartire la VM perche’ il kernel deve aggiornare i suoi registri al nuovo spazio del disco.
  9. Ora devi effettuare il resize della partizione ext4 con il comando “resize2fs /dev/sdc1” che aumenta lo spazio del file system ext4. Se ora fai “df -h’ vedrai che il tuo disco è aumentato dei GB che gli hai dato.

Zabbix Server – Idle time troppo basso (>70%)

Da qualche tempo ho notato che l’idle time si è abbassato troppo sulla mia VM Zabbix. Così ho cercato di ottimizzare un pò la configurazione di Zabbix agendo su zabbix_server.conf. Siamo cosi’ passati da 65% di idle a oltre 90% – Allego un grafico che dimostra questa modifica.

Zabbix – Estendere le funzionalità dell’agente

A volte viene richiesta una funzionalità che l’agente non può restituirci. Ma possiamo aggirare il problema attraverso il parametro “UserParameter” dentro alla configurazione dell’agent posta in /etc/zabbix/zabbix_agentd.conf

Facciamo un esempio, se ti occorre sapere quanti file un sistema linux ha aperti puoi saperlo lanciando questo comando:

sysctl -e -n fs.file-nr|cut -f1

Otterrai un numero che sono appunto i file attualmente aperti dal tuo sistema. Però purtroppo l’agente non ha nel suo repertorio questa funzione, ma possiamo implementarcela da soli in questo modo:

Inserisci nel file di configurazione questo parametro:

UserParameter=system.currentfileopen,sysctl -e -n fs.file-nr|cut -f1

Facendo poi ripartire l’agente puoi vedere se tutto funziona interrogando l’agente nel seguento modo:

[root@tcaterina~]# zabbix_agentd -t system.currentfileopen
system.currentfileopen [t|15008]

Ora visto che risponde qualcosa di sensato, puoi farti un nuovo item su Zabbix su quel particolare host in questo modo:

SAP – Controllo con Zabbix

Per controllare su un’installazione SAP i ‘shortdumps-count’ e ‘failed-jobs’ ho usato un plugin usato su Nagios/Centreon ma che si puo’ usare un po’ dove si vuole. Il file si chiama check_sap_health.tar.gz – Si compila normalmente con il configure seguito dai soliti make, solo che lavora con un modulo chiamato nwrfcsdk che occorre aver scaricato e scompattato in /usr/sap – Dopo basta solo lanciare: (da dentro la dir dove hai scompattato nwrfcsdk) :

gigi@lacremeria ~]$ perl Makefile.PL –source /usr/sap/nwrfcsdk

seguito da ‘make’

A questo punto bisogna modificare il fiel sap.yml nella stessa directory e ovviamente configurarlo correttamente con i valori corretti di ‘application server name’,’system number’,’client username’,’client password’. Ora puoi fare ‘make test’ e poi ‘make install’

Adesso puoi provare a lanciare check_sap_health con tutti i parametri, ora funziona normalmente. Ora puoi via cron farti lanciare ogni 5 minuti il check_sap_health ed leggerti il file generato…

Fonti: https://labs-consol-de.translate.goog/nagios/check_sap_health/?_x_tr_sl=auto&_x_tr_tl=en&_x_tr_hl=it&_x_tr_pto=wapp https://blogs.sap.com/2009/06/18/perl-and-sap-adventures-part-1/

File utili: http://gbiondi.tech2.it/wp-content/uploads/2022/12/sap.zip

Zabbix – Aggiornamento da V5.0 LTS to V6.0 LTS

Per aggiornare Zabbix da V5 a V6 è molto faile. Se hai frontend e DB separati ferma entrambi e fai uno snapshot delle due VM e poi segui questi passi:

rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-1.el8.noarch.rpm
yum upgrade zabbix-server-mysql zabbix-web-mysql zabbix-agent
yum install zabbix-apache-conf

Poco spazio su partizione /var/lib/mysql su Appliance (ready to use) Zabbix

Il problema è la partizione dedicata a mysql quasi piena: come risolvere il problema. Visto che era una VM basta solo aggiungere un disco e spostare il contenuto di /var/lib/mysql e successivamente montare il nuovo device al posto del vecchio device ormai quasi pieno. Non ho la registrazione di quello che ho fatto, vado a memoria:

Ho creato una partizione primaria sul nuovo disco “fdisk /dev/sda” e dopo l’ho formattata con il comando mkfs.xfs /dev/sdb1 – A questo punto ho creato una directory dentro /mnt/disco-da-15-giga e poi lo ho editato in fstab in modo che venga montato all’atto dell’avvio della vm. Ora bisogna spostare il contenuto della /var/lib/mysql su /mnt/disco-da-15-giga – si puo’ fare in diversi modi, io ho scelto di fare un archivio cosi’: tar cvfz dati.tar.gz /var/lib/mysql in seguito ho estratto tutto in /mn/nuovodisco e ho eseguito un chown mysql:mysql * dentro la directory per riportare l’owner corretto dei file.

Ora si tratta di editare /etc/my.cnf.d/mysql-server.cnf in modo da cambiare datadir e socket come vedi:

[mysqld]
datadir=/mnt/disco-da-15-giga/mysql
socket=/mnt/disco-da-15-giga/mysql/mysql.sock
log-error=/var/log/mysql/mysqld.log
pid-file=/run/mysqld/mysqld.pid

Ora se fai partire mysqld dovrebbe funzionare normalmente.. solo che ora usa il nuovo disco. Ora bisogna informare Zabbix che il socket non è piu’ il default ma è da un’altra parte: questo si fa editando il file zabbix.conf e precisamente questa riga:

DBSocket=/mnt/disco-da-15-giga/mysql/mysql.sock

Ora contrariamente a quello che si puo’ normalmente pensare bisogna fare l’ultimo passo, perche’ altrimenti il server Zabbix funziona normalmente (lo vedi dai log di zabbix) ma non riesci ad entrare nella GUI via web. Bisogna editare il file /etc/php.ini precisamente questa riga:

pdo_mysql.default_socket=/mnt/disco-da-15-giga/mysql/mysql.sock

Tutto finito…

MariaDB migrazione da 10.2 a 10.5

Su source:

Fai uno user ‘backup’ via Webmin

mariabackup –backup –target-dir=./bak –user=backup
mariabackup –prepare –target-dir=bak

Su Target:
service mariadb stop
mv /var/lib/mysql /var/lib/mysql-back
mariadb-backup –copy-back –target-dir=bak
chown -R mysql:mysql /var/lib/mysql
systemctl restart mariadb.service

Via Webmin dai i permessi allo user in modo che possa connettersi dalla rete.

Testing remote db
mysql -u zabbix -h ip.ip.ip.ip -p

Zabbix Agent con PSK Howto

Prima o poi ci si scontra con qualcuno che vuole che la comunicazione tra un server Zabbix e un agent Zabbix avvenga in modalita’ sicura. Ho fatto questo howto principalmente per me, che ho la memoria corta, come si suol dire. In effetti non ci vuole molto, basta semplicemente preparare un file con dentro una “pre-shared key” generata con:

openssl rand -hex 32
  af8ced32dfe8714e548694e2d29e1a14ba6fa13f216cb35c19d0feb1084b0429

e inserire il file in /etc/zabbix/zabbix.psk o dove vuoi tu.. basta che poi lo dichiari in c:\etc\zabbix\zabbix_agent.conf inserendo anche in fondo al file le seguenti righe:

TLSConnect=psk
TLSAccept=psk
TLSPSKIdentity=PSK 001
TLSPSKFile=/etc/zabbix/zabbix.psk

Poi fai partire l’agent e controlli il file /var/log/zabbix/zabbix_proxy.log che non ci siano errori: attento che è sempre meglio che il l’hostname che hai definito nel server sia uguale all’hostname che trovi ‘remmato’ dentro alla configurazione dell’agent. Di seguito vedi come si configura sul server un host da controllare con connessione psk:

Maggiori info sulla configurazione di un agent con connessione psk lo puoi trovare sulla documentazione ufficiale qui di seguito: https://www.zabbix.com/documentation/current/manual/encryption/using_pre_shared_keys