Mi è capitato di dover effettuare un backup di un volume LVM di una macchina guest in ambiente virtualizzato (kvm-proxmox) subito dopo un aggiornamento che ha reso la proxecura automatica (vzdump inefficace a seguito di questo errore:

INFO: starting new backup job: vzdump 103 --mode snapshot --storage BACKUP
INFO: Starting Backup of VM 103 (qemu)
INFO: status = running
INFO: backup mode: snapshot
INFO: ionice priority: 7
INFO: skip unused drive 'local:103/vm-103-disk-1.raw' (not included into backup)
INFO: creating archive '/VM/BACKUP/dump/vzdump-qemu-103-2014_06_06-12_19_45.vma'
unable to connect to VM 103 socket - No such file or directory
ERROR: unable to connect to VM 103 socket - No such file or directory
INFO: aborting backup job
ERROR: Backup of VM 103 failed - unable to connect to VM 103 socket - No such file or directory
INFO: Backup job finished with errors
job errors

Prima di riavviare la macchina host, come consugliato dal forum, ho preferito effettuare un backup dei dati seguendo questa procedura.

Prima di tutto installo i pacchetti necessari:

#apt-get install ntfsprogs kpartx

Poi attivo uno snapshot per il volume NETLITE-vm–131–disk–1:

#lvcreate -L 1G -s -n 131-snap /dev/mapper/NETLITE-vm--131--disk--1

A questo punto ho un’immagine consistente del disco ma non è possibile usare tools come ntfsclone direttamente in quanto la partizione del disco NTFS non è presente in /dev/mapper, quindi la rendo visibile con:

#kpartx -a /dev/NETLITE/131-snap

Ed effettuo il backup:

#ntfsclone -s /dev/mapper/NETLITE-131--snap1 -o /mnt/pve/BACKUP_NFS/131-ntfs_clone.img
ntfsclone v2012.1.15AR.5 (libntfs-3g)
NTFS volume version: 3.1
Cluster size       : 4096 bytes
Current volume size: 34348736512 bytes (34349 MB)
Current device size: 34348737024 bytes (34349 MB)
Scanning volume ...
100.00 percent completed
Accounting clusters ...
Space in use       : 4282 MB (12.5%)
Saving NTFS to image ...
100.00 percent completed
Syncing ...

A questo punto ho una copia “ottimizzata” del filesystem e posso rimuovere puntamenti e snapshot:

#kpartx -d /dev/NETLITE/131-snap
#lvremove /dev/mapper/NETLITE-131--snap
Do you really want to remove and DISCARD active logical volume 131-snap? [y/n]: y
Logical volume "131-snap" successfully removed

A.Gagliardi 2014

Stando alla documentazione la procedura ideale di migrazione di un’installazione Windows verso Proxmox (KVM) prevede l’utilizzo di Clonezilla, purtroppo la ISO di Clonezilla non parte sulle VM già virtualizzate con XEN rendendo necessario un cambio di strategia.

Avviamo una VM m minimale su XEN utilizzando la ISO di sysrescuecd e configurando come disco uno snapshot della vm originale ove sia stato installato preventivamente il mergeide.reg

A questo punto copiamo il partizionamento.
Possiamo usare sfdisk con netcat.

Sulla VM di destinazione digitare:

nc -l -p 1234 | sfdisk /dev/sda
Sulla VM di origine digitare:
sfdisk -d /dev/xvda | nc XX.XX.XX.XX 1234
dove XX.XX.XX.XX è l’indirizzo ip della macchina destinazione.
A questo punto è buona norma riavviare la VM destinazione.
Per copiare il filesystem NTFS procediamo con ntfsclone.
Sulla VM di destinazione digitare:
nc -l -p 1234 | ntfsclone -r -O /dev/sda1 -
Sulla VM di origine digitare:
ntfsclone -s -o - /dev/vxda1 | nc XX.XX.XX.XX 1234
La procedura non esce al termine automaticamente, resta come appesa, solitamente basta attendere un po’ affinchè si svuoti il buffer di copia, con un bmon si nota chiaramente quando la procedura smette di usare la rete. A quel punto si può interrompere con ctrl-c.

Può essere necessario ridimensionare il filesystem sfruttando il maggior spazio concesso dal nuovo hardware quindi qualora il disco della VMsia più grande di quello originario si può procedere così:
Ridimensionare la partizione numero 1 alla massima possibile con sfdisk:

echo ",+," | sfdisk -N1 /dev/sda
Ridimensionamento del filesystem tramite ntfsresize:
ntfsresize -x /dev/sda1
oppure
ntfsresize -s 100G /dev/sda1

Al termine il Windows tendenzialmente non parte.
Si utilizza quindi il CD originale per partire in modalità rescue e si digitano i comandi fixboot e fixmbr.
A questo punto si riavvia e Windows dovrebbe partire.
Nel caso si sia ridimensionata la partizione Windows effettuerà un controllo approfondito del filesystem.
Prima di installare gli eventuali drivers virtio è meglio disinstallare servizi relativi a Xen, VMWARE, etc che potrebbero entrare in conflitto con il nuovo sistema di virtualizzazione.

WordPress Tips&Tricks

Aggiungere in wp-config.php le seguenti direttive per velocizzare l’installazione e l’aggiornamento del sito eliminando la necessità di transitare attraverso l’FTP e per permette la gestione di un sito multidominio.

Nel caso si desideri attivare il Multisite occorre prima di tutto disattivare tutti i plugin.

/* Multisite */
define('WP_ALLOW_MULTISITE', true);
/* Direct install/update */
define('FS_METHOD', 'direct');

Nel menù Strumenti – Configurazione di Rete è necessario scegliere se la rete di siti dovrà essere pubblicata come sottodomini o sottocartelle del dominio principale. Questa decisione è squisitamente personale, ma non sarà più possibile modificarla in futuro.
Nel caso si optasse per i sottodomini, consiglio di aggiungere una wildcard DNS nella zona DNS del dominio per fare in modo che qualsiasi sottodominio si andrà a creare sia già immediatamente accessibile a livello DNS e non si debba editare la zona ogni volta.
Vedrete sullo schermo la richiesta di inserire nei files wp-config.php e .htaccess del codice. Le stringhe sono personalizzate per ogni installazione.

Ora al prossimo login comparirà il menù “I miei siti” da cui amministrare tutta la rete di siti.
Riabilitare tutti i plugin necessari.

Speedtest Internet da console Linux

Test di velocità link Internet xDSL da console Linux

Spesso è utile valutare la velocità e la latenza di un link ad internet di un server Linux al quale non si ha accesso diretto tramite un desktop remoto. Tramite questo tool è possibile utilizzare l’infrastruttura geografica di Speedtest.net ed ottenere una valutazione oggettivamente valida.

# wget https://github.com/sivel/speedtest-cli/raw/master/speedtest.py --no-check-certificate
# chmod a+rx speedtest_cli.py
# ./speedtest_cli.py

Lo script in python si collega al nodo più prossimo ed effettua un test di upload, uno di download e riporta anche la latenza in millisecondi.

root@farm ~ # ./speedtest_cli.py
Retrieving speedtest.net configuration...
Retrieving speedtest.net server list...
Testing from Hetzner Online AG (XX.XX.XX.XX)...
Selecting best server based on ping...
Hosted by Vodafone DE (Frankfurt) [100.73 km]: 6.358 ms
Testing download speed........................................
Download: 87.87 Mbit/s Testing upload speed..................................................
Upload: 66.08 Mbit/s

E’ possibile condividere il test aggiungendo –share al comando e si ottiene questo:

Speedtest CLI linux

Andrea Gagliardi – netlite.it