lunedì 14 maggio 2007

ViC Autenteicazione ldap

Oggi mi è capitato di dover configurare, presso un mio cliente, l'accesso a Vi Client con autenticazione su daatabase ldap (openldap)...la cosa è stata piuttosto facile :-)

La configurazione richiede tre semplici passaggi
  1. Abilitare l'accesso tramite esxcfg-auth
  2. editare il file /etc/pam.d/vmware-authd
  3. abilitare il firewall in uscita

[root@esx01]# esxcfg-auth --enableldap --ldapserver=ldapsrv.domain.local --ldapbasedn="ou=domain,o=local"

[root@esx01]# cat /etc/pam.d/vmware-authd
#%PAM-1.0
auth sufficient /lib/security/pam_unix_auth.so shadow nullok
account required /lib/security/pam_unix_acct.so
auth required /lib/security/pam_ldap.so use_first_pass

[root@esx01]# esxcfg-firewall --AllowOutgoing

venerdì 4 maggio 2007

HP vmotion compatibility matrix

A questo link potete trovare un ottimo pdf sulla compatibilà di Vmotion e vm avari server HP

ftp://ftp.compaq.com/pub/products/servers/vmware/vmmotion-compatibility-matrix.pdf



Permessi minimi per VCB

Spesso capita di creare degli script vcb per lo snapshot delle virtual machine, e dato che le password dell'utente che esegue vcb vengono scritte in chiaro ho cercato di creare un "Roles" customizzato per il suddetto utente in modo da limitare i danni in caso di furto di credenziali dell'ute

Da Vi3 Client create un nuovo ruolo dal tab "Admin". Admin -> Roles -> Add

A questo punto indicare i permessi con da immagine successiva

I permessi sono:
All permission -> Virtual Machine -> State (Completo)
All permission -> Virtual Machine -> Provisioning (Read Customization Specification, Allow ReadOnly Disk Access, Allow Virtual Machine Download)

Dell vmotion compatiblity matrix

A questo link potete trovare un ottimo pdf sulla compatibilà di Vmotion e vm a 64bit tra i vari server Dell

http://www.dell.com/downloads/global/solutions/vmotion_compatiblity_matix.pdf

martedì 1 maggio 2007

Lots of Vmware Links

In questo post sul forum di vmware potete trovare un'ottima lista di links su vmware e argomenti correlati
http://www.vmware.com/community/thread.jspa?threadID=81191

venerdì 27 aprile 2007

Creare immagini personalizzate di Windows

Un mio collega mi ha girato questo software molto interessante per la creazione di immagini cd bootable di windows.
Su molti server recenti non viene fornito il floppy, se vi trovate nella condizione di dover passare all'installer dei driver aggiuntivi non sareste in grado di farlo...a questo punto c'e' un bellissimo software che vi crea l'immagine dei cd con l'aggiunta di tutti i driver che volete..

http://www.nliteos.com/

domenica 22 aprile 2007

Come creare immagini flp e iso

Grazie al binario "dd" è possibile creare immagini *.flp e *.iso. Su ogni distribuzione linux o sistema unix dd è già presente, mentre per windows esistono moltissime versioni reperibili sul web.

Per creare immagini *.flp
# dd if=/dev/fd0 of=/vmimages/file.flp

Per creare immagini *.iso
# dd if=/dev/cdrom of=/vmimages/file.iso

sabato 21 aprile 2007

Check ESX patch

Girovangando in rete ho trovato questo powershell script che verifica lo scato delle patch di un server esx3. Come prerequisiti ha ovviamente la powershell e plink

$patches="ESX-2158032","ESX-1410076","ESX-1006511","ESX-9986131","ESX-8173580","ESX-6921838",
"ESX-2066306","ESX-6075798","ESX-5497987","ESX-3996003","ESX-2092658","ESX-2031037",
"ESX-1917602","ESX-1271657","ESX-9865995","ESX-6856573","ESX-6050503","ESX-5885387",
"ESX-5031800","ESX-3199476","ESX-9916286","ESX-9617902","ESX-8852210","ESX-8174018",
"ESX-7780490","ESX-7737432","ESX-5011126","ESX-3416571","ESX-1161870","ESX-2559638",
"ESX-2257739","ESX-1541239"

$servers="esx01", "esx02", "esx03"

$account="root"
$password="vmware"

$servers | % { $a=plink -pw $password $account@$_ "esxupdate query"

$server=$_

$patches | % {

$patch=$_

if( [regex]::match($a, $_).success ) {

$summary="Installed"
}
else
{
$summary="Not installed"
}

new-object psobject |
add-member -pass NoteProperty Server $server |
add-member -pass NoteProperty Patch $patch |
add-member -pass NoteProperty Summary $summary

}

}

Gestione password policy via pam

Di default in esx 3 sono abilitate delle policy password via pam, questo può essere fastidioso in alcuni frangenti. Di seguito come disabilitarle

per rimuovere le policy globalmente
# esxcfg-auth --passmaxdays=-1

per rimuovere le policy per un singolo utente
# chage -M -1 vmadmin

per verificare le policy di un utente
# chage -l vmadmin

VMVoodooSync

Questo è un piccolo script per sincronizzara un virtual machine tra due server esx con storage locale.

Per prima cosa si devono creare le chiavi ssh per l'accesso tra i due server. Per facilitare tutte le procedure di copia tra i due server si userà l'utente root.

1. Abilitare su entrambi i server l'accesso ssh come root
2. Creare le chiavi ssh su entrambi i server
3. Configurare vcb
4. Creare la directory di stage dei file vmdk
5. Creare lo script di sincronizzazione
6. Abilitare il firewall per le connessioni ssh in uscita
7. Testare lo script
8. Configurare cron per le schedulazioni delle sincronizzazioni

# vi /etc/ssh/sshd_config
PermitRootLogin yes
# /etc/init.d/sshd restart
# ssh-keygen -t dsa
Non digitare nessuna password per la decriptazione delle chiavi
# scp .ssh/id_dsa.pub root@esx02:~root/.ssh/authorized_keys
# ssh root@esx02
Se tutto va bene il login non dovrebbe richiedere nessuna password

Dato che la password di root in questo esempio viene scritta in chiaro nel file di vcb, è altamente consigliabile creare un utente aggiuntivo e da ViClient dargli i permessi minimi per creare e rimunovere gli snapshots
# vi /etc/vmware/backuptools.conf
modificate le seguenti voci
VCHOST=localhost
USERNAME=root
PASSWORD=root_password
TEMPDIR=/vmfs/volumes/storage1/tmp_backup

La directory di stage del backup deve essere abbastanza grande per contenere la virtual machine di maggior dimensioni.
# mkdir /vmfs/volumes/storage1/tmp_backup

Ora creiamo lo script di sincronizzazione
# mkdir /opt/script
# vi /opt/script/vmvoodoosync.sh

#!/bin/bash

PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"

DATE="$(date +%d-%m-%Y)"
HOST="`hostname -s`"
HOSTDR="192.168.192.99"

LOG="/vmfs/volumes/storage1/tmp_backup/Backuplog-$DATE.log"

echo "Backup $HOST started at `date`" > $LOG

for vmname in `/usr/sbin/vcbVmName -s powerstate:on |grep name: | awk -F: '{print $2}'`;
do ssh backupusr@$HOSTDR "mkdir -p /vmfs/volumes/storage1/$vmname"
/usr/sbin/vcbMounter -a name:$vmname -M 1 \
-r scp://backupusr@$HOSTDR:/vmfs/volumes/storage1/$vmname >> $LOG
done

echo "Backup $HOST finished at `date`" >> $LOG


Apriamo le porte del firewall su entrambi gli host
# esxcfg-firewall -e sshServer
# ssh root@esx02 -c " /usr/sbin/esxcfg-firewall -e sshServer"

Ora testiamo lo script.. ma prima ve reso eseguibile
# chmod 755 /opt/script/vmvoodoosync.sh
# /opt/script/vmvoodoosync.sh

Per verificare il corretto funzionamento dell0 script potete verificare il file di log all'interno della directory di stage

Se tutto è andato bene potete configurare la schedulazione
# contrab -e
30 20 * * * /opt/script/vmvoodoosync.sh