Bienvenidos

Todos estos pasos descriptos fueron probados en ambientes productivos

viernes, 5 de febrero de 2016

Nos equivocamos ? teniendo backup...lo arreglamos

Como decia Palito Ortega ...Yo me equivoque, Yo me equivoque, cuidese compadre pa' que no le pase a usted



Por error formatee el disco que contenia el sistema operativo del Ldom ( por suerte mientras no estaba productivo ) asi que si llegara a pasar, tener en cuenta lo siguiente :

###############################################################
###############################################################
### Cuidado, si voy a formatear este disco, tener en cuenta que si los datos que tenia eran con ZFS, lo debo labelear con EFI , si era con ufs lo debere labelear con SMI ( en mi caso como era ZFS lo labelee con EFI )
Si por error lo labeleo con SMI y tenia ZFS, no me dejara hacer ni el zpool destroy, ni nada , es probable que se cuelgue todo el  Physical Domain ( pdom) , y la unica solucion es rebootear el PDOM )
root@pdom # format -e c0t60050768018107A7900000000000016Bd0
selecting c0t60050768018107A7900000000000016Bd0
[disk formatted]
/dev/dsk/c0t60050768018107A7900000000000016Bd0s0 is part of active ZFS pool rpool_dsun1001. Please see zpool(1M).
FORMAT MENU:
        disk       - select a disk
        type       - select (define) a disk type
        partition  - select (define) a partition table
        current    - describe the current disk
        format     - format and analyze the disk
        repair     - repair a defective sector
        label      - write label to the disk
        analyze    - surface analysis
        defect     - defect list management
        backup     - search for backup labels
        verify     - read and display labels
        inquiry    - show disk ID
        scsi       - independent SCSI mode selects
        cache      - enable, disable or query SCSI disk cache
        volname    - set 8-character volume name
        !     - execute , then return
        quit
format> label
[0] SMI Label
[1] EFI Label
Specify Label type[1]: 1

root@pdom #

############################################################
############################################################

jueves, 4 de febrero de 2016

Restore por ZFS snapshot de un LDOM completo.


Para ver como realize el backup por zfs , mirar este  enlace

Me posiciono en el Physical Domain ( PDOM ) y chequeo el LDOM que quiero recuperar , en este caso es ldom dsun1001-ldm que reside en el rpool_dsun1001 

root@pdom # zpool status rpool_dsun1001
  pool: rpool_dsun1001
 state: ONLINE
  scan: none requested
config:

        NAME                                     STATE     READ WRITE CKSUM
        rpool_dsun1001                           ONLINE       0     0     0
          c0t60050768018107A7900000000000016Bd0  ONLINE       0     0     0

errors: No known data errors
root@pdom #

####despues le di desde el PDOM
zpool destroy rpool_dsun1001

#### Lo cree de vuelta con el mismo disco.  el tamaño del volumen lo puedo sacar del backup en zpool.list.rpool.cfg
zpool create rpool_dsun1001 c0t60050768018107A7900000000000016Bd0
zfs set mountpoint=none rpool_dsun1001
zfs create -V 144g rpool_dsun1001/vol1_dsun1001


###le agrego un cdrom y a reinstalar.( esto es porque ya tenemos hecho un .iso )
ldm add-vdisk cdrom s10-iso@primary-vds0 dsun1001-ldm
ldm start dsun1001-ldm

telnet localhost 5003 ( el 5003 es el puerto del ldom , lo sacas con ldm ls )
### TODOS LOS COMANDOS ACA ABAJO SE EJECUTAN Desde el LDOM ,
boot cdrom -s
#### La red... tengo un ifconfig en el backup siempre que tengo zfs.
ifconfig vnet101000 plumb
ifconfig vnet101000 10.XX.32.77 netmask 255.255.252.0
ifconfig vnet101000 up
route add default 10.XX.32.1

ping 10.xx.33.114 ( chequeo que llegue al servidor en el cual deposito los backups )
mount 10.xx.33.114:/BACKUPS /mnt


#### Restore parado en el LDOM
format  #### todo el tamaño al slice 0 del disco del rpool


zpool create -f -o failmode=continue -R /a -m legacy -o cachefile=/etc/zfs/zpool.cache rpool c0d0s0
cat /mnt/dsun1001-ldm/rpool.zfs | zfs receive -Fdu rpool

zfs list
### el dato siguiente lo saco del backup de zpool.getall.rpool.cfg
zpool set bootfs=rpool/ROOT/s10s_u11wos_24a rpool

installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c0d0s0
umount /mnt
init 0


boot



Creditos : Documento realizado por mi colega Nicolas Morono  @nicomorono

zfs snapshot remoto para backup de Sistema Operativo

La finalidad es backupear en forma remota a un equipo que montamos por nfs, un backup de sistema operativo, con zfs
#!/usr/bin/ksh -x
## Script de resguardo de Sistema Operativo Solaris
### Monto por NFS
mount 10.xx.33.114:/BACKUPS /mnt
MONTO=$?
UBICA=/mnt/`uname -n`
cd $UBICA
LOGerr="/export/home/backup/LOGS/backup_SO_Zonas_`date +%d_%m_%y.err`"
LOG="/export/home/backup/LOGS/backup_SO_Zonas_`date +%d_%m_%y`"
MAILTO="root tecnico.solaris@gmail.com  "
###Variables agregadas para zfs
RPOOL=rpool

#
### FIN DE ASIGNACION DE VARIABLES ESPECIFICAS
#
if [ "$MONTO" -eq 0 ]
then
        :       echo "# El FS por NFS fue montado OK"
else
        echo "error NO se pudo montar por NFS el ERROR fue $MONTO"
        echo "################################"
        echo "################################"
        exit 1
fi
backup_FS_to_NFS()     {
      echo

        if zpool status $RPOOL
        then
                echo backupZFS
                ### DATOS ZFS
                zpool list $RPOOL > $UBICA/zpool.list.$RPOOL.cfg
                zpool get all $RPOOL > $UBICA/zpool.getall.$RPOOL.cfg
                zfs get -r all $RPOOL > $UBICA/zfs.getall.$RPOOL.cfg
                zpool status $RPOOL > $UBICA/zpool.status.$RPOOL.cfg
                DISK=`zpool status $RPOOL | grep c.d.s. | awk '{ print $1 }'`
                for k in $DISK
                do
                k=`echo $k | sed "s/\/dev\/rdsk\///" `
                prtvtoc /dev/rdsk/$k > $UBICA/prtvtoc.$RPOOL.$k.lst
                done
                ifconfig -a > $UBICA/ifconfig-a.cfg
                zfs snapshot -r ${RPOOL}@archive
                zfs destroy ${RPOOL}/swap@archive
                zfs destroy ${RPOOL}/dump@archive
                date >> $UBICA/backup_LOG.log
                zfs send -Rv ${RPOOL}@archive  | cat > $UBICA/${RPOOL}.zfs
                zfs destroy -r ${RPOOL}@archive
        else
                ###echo ":::: Montando fsssnap"
                #fssnap -F ufs -o backing-store=/snaps/root.backup.dmp /
                echo ":::: Efectuando DUMP de / (`date +%d_%m-%T`)"
                ufsdump 0uf $UBICA/BARRA.DMP /
                echo ":::: BACKUP: FIN backup fs /  (`date +%d_%m-%T`)"
        fi
} 1>>$LOG 2>>$LOGerr
backup_NFS
################################
cp $LOG $UBICA
cp $LOG.err $UBICA
cp $EXPLORER/explorer*gz $UBICA
cd /
umount /mnt
echo $?

### Notificar Resultados via email
cat $LOGerr|mailx -s "Backup `uname -n`" $MAILTO