Bienvenidos

Todos estos pasos descriptos fueron probados en ambientes productivos

viernes, 19 de junio de 2015

Instalar Solaris 11.2 en un M5000

La finalidad de este documento es describir el paso a paso de la instalacion de
un Solaris 11_2 en un servidor sparc M5000
Todo este procedimiento fue realizado con los siguientes elementos:
Notebook Olivetti con sistema operativo linux Ubuntu 14.04.2 LTS, Trusty Tahr, dentro de la misma, le instale Oracle Virtual Box, con sistema operativo Solaris 11_1 x86

Preparacion previa en mi notebook
En el linux de mi notebook , en el directorio /home/coneja/Downloads/ tengo las imagenes .iso del dvd


Dentro del Oracle Virtual Box, hay una opcion que se llama "shared folders", ahi
 le digo que fs o directorio quiero compartir a  mi solaris
( NO hacerlo en modo read only )
En mi caso, el fs compartido fue /home/coneja/Downloads
***Aclaracion importante: cuando creo en el VirtualBox el Solaris, debo hacerlo
con la opcion de red "Bridge " para que funcione cuando lo conecte al server qu
e quiero instalar ***

Cuando levanta el solaris, monta automaticamente los fs que comparti desde el Virtual Box anteriormente
Bajar de la web de oracle, el repositorio de solaris 11.
Son 4 archivos .zip mas un script instal-repo.ksh y un README
sol-11_2-repo-1of4.zip
sol-11_2-repo-2of4.zip
sol-11_2-repo-3of4.zip
sol-11_2-repo-4of4.zip



Cuando Levanto el solaris de mi maquina virtual, automaticamente monta
el filesystem que le indique en el shared folders.
Luego lo que hice fue , asignarle un disco virtual al solaris 11
que estan en mi Virtual Box (Esto se hace con el solaris 11 del VBox apagado ).
Genere un zpool llamado repopool , el cual sera destino de el repositorio
de parches.
Para esto, los comandos utilizados en el solaris11 de mi VBox fueron

zpool create -f repopool c7t2d0s0
zpool list
zfs set mountpoint=/repo


El paso siguiente fue, en el solaris 11 de mi VBox, pararme en el fs compartido
/home/coneja/Downloads y ejecutar el
install-repo.ksh    ( tal como esta en la       foto siguiente)

Este script, hace un md5 checksum de los archivos que baje, posteriormente realiza un uncompress de los archivos .zip y genera un solo.iso que alojara en el
filesystem compartido





 
/home/coneja/Downloads que fue donde estaba parado cuando ejecute el script .

 En el fs de mi solaris11 de la VBox /repo/  dejara todo el contenido del iso pero ya listo para usar.
Todo este procedimiento tardo 11 horas, es muy lento.

# svccfg -s application/pkg/server setprop pkg/inst_root=/repo/repo
# svccfg -s application/pkg/server setprop pkg/readonly=true

# svcadm refresh application/pkg/server
# svcadm enable application/pkg/server


Aca le agrego la ip de mi VirtualBox con Solaris

root@sol11vm:/export/home# pkg set-publisher -O http://192.168.30.1 solaris
root@sol11vm:/export/home# pkg publisher
PUBLISHER                   TYPE     STATUS P LOCATION
solaris                     origin   online F http://192.168.30.1/
root@sol11vm:/export/home# pkgrepo refresh -s /repo
Initiating repository refresh.
Chequeo que pueda ver el contenido, buscando algun paquete, uso el viejo y querido xclock de ejemplo
root@sol11vm:/export/home# pkg search xclock
INDEX           ACTION VALUE                                                                                                                                                                         PACKAGE
basename        file   usr/share/X11/app-defaults/XClock                                                                                                                                             pkg:/x11/xclock@1.0.6-0.175.1.0.0.24.1317
basename        file   usr/bin/xclock                                                                                                                                                                pkg:/x11/xclock@1.0.6-0.175.1.0.0.24.1317
basename        link   usr/X11/bin/xclock                                                                                                                                                            pkg:/x11/xclock@1.0.6-0.175.1.0.0.24.1317
pkg.description set    xclock is the classic X Window System clock utility.  It displays the time in analog or digital form, continuously updated at a frequency which may be specified by the user. pkg:/x11/xclock@1.0.6-0.175.1.0.0.24.1317
pkg.fmri        set    solaris/x11/xclock                                                                                                                                                            pkg:/x11/xclock@1.0.6-0.175.1.0.0.24.1317
pkg.summary     set    xclock - analog / digital clock for X                                                                                                                                         pkg:/x11/xclock@1.0.6-0.175.1.0.0.24.1317
root@sol11vm:/export/home# zfs list
NAME                       USED  AVAIL  REFER  MOUNTPOINT
repopool                  8.35G  32.8G  8.34G  /repo
rpool                     25.6G  5.37G  4.58M  /rpool
rpool/IPS                 11.6G  5.37G  11.6G  /IPS
rpool/ROOT                4.49G  5.37G    31K  legacy
rpool/ROOT/solaris-1      4.49G  5.37G  2.22G  /
rpool/ROOT/solaris-1/var  1.29G  5.37G  1.20G  /var
rpool/VARSHARE            84.5K  5.37G  84.5K  /var/share
rpool/dump                 792M  5.39G   768M  -
rpool/export              7.73G  5.37G   711M  /export
rpool/export/home         7.03G  5.37G  7.03G  /export/home
rpool/export/home/gojea   35.5K  5.37G  35.5K  /export/home/gojea
rpool/swap                1.03G  5.40G  1.00G  -

root@sol11vm:/export/home# zfs create repopool/ai
root@sol11vm:/export/home# zfs list
NAME                       USED  AVAIL  REFER  MOUNTPOINT
repopool                  8.35G  32.8G  8.34G  /repo
repopool/ai                 31K  32.8G    31K  /repo/ai
rpool                     25.6G  5.37G  4.58M  /rpool
rpool/IPS                 11.6G  5.37G  11.6G  /IPS
rpool/ROOT                4.49G  5.37G    31K  legacy
rpool/ROOT/solaris-1      4.49G  5.37G  2.22G  /
rpool/ROOT/solaris-1/var  1.29G  5.37G  1.20G  /var
rpool/VARSHARE            84.5K  5.37G  84.5K  /var/share
rpool/dump                 792M  5.39G   768M  -
rpool/export              7.73G  5.37G   711M  /export
rpool/export/home         7.03G  5.37G  7.03G  /export/home
rpool/export/home/gojea   35.5K  5.37G  35.5K  /export/home/gojea
rpool/swap                1.03G  5.40G  1.00G  -
root@sol11vm:/export/home# zfs get -r dedup repopool
NAME         PROPERTY  VALUE  SOURCE
repopool     dedup     on     local
repopool/ai  dedup     on     inherited from repopool
root@sol11vm:/export/home# zfs mountpoint=repopool/ai
root@sol11vm:/export/home# ls -ltrh /mnt/sf_coneja/Downloads/
total 34186824
-rw-r-----   1 root     vboxsf      500M Jun  6 21:04 sol-11_2-ai-sparc.iso
-rw-r-----   1 root     vboxsf      731M Jun  7 21:03 sol-11_2-text-sparc.iso
-rwxr-xr-x   1 root     vboxsf      5.5K Jun  7 22:49 install-repo.ksh
-rw-r-----   1 root     vboxsf      1.8G Jun  7 22:50 sol-11_2-repo-2of4.zip
-rw-r-----   1 root     vboxsf      3.1K Jun  7 22:50 README-zipped-repo.txt
-rw-r-----   1 root     vboxsf       228 Jun  7 22:51 sol-11_2-repo-md5sums.txt
-rw-r-----   1 root     vboxsf      1.8G Jun  8 00:27 sol-11_2-repo-3of4.zip
-rw-r-----   1 root     vboxsf      1.7G Jun  8 13:22 sol-11_2-repo-4of4.zip
-rw-rw-r--   1 root     vboxsf      1.7G Jun  8 22:09 sol-11_2-repo-1of4.zip
-rw-r--r--   1 root     vboxsf      406K Jun 12 06:32 mkiso.log
-rw-r--r--   1 root     vboxsf      8.2G Jun 12 06:32 sol-11_2-repo.iso
sol11vm:/export/home# cp -pr /mnt/sf_coneja/Downloads/sol-11_2-ai-sparc.iso /ai
root@sol11vm:/export/home# ls -ltrh /ai
total 757116
-rw-r-----   1 root     vboxsf      500M Jun  6 21:04 sol-11_2-ai-sparc.iso
root@sol11vm:/export/home# svcs -a|grep dns
disabled       16:02:37 svc:/network/dns/client:default
disabled       16:02:40 svc:/network/dns/multicast:default
disabled       16:02:41 svc:/network/dns/server:default
root@sol11vm:/export/home# svcadm enable dns/client
disabled       16:02:40 svc:/network/dns/multicast:default
disabled       16:02:41 svc:/network/dns/server:default
offline*        9:57:25 svc:/network/dns/client:default
root@sol11vm:/export/home# svcs -a|grep dns
disabled       16:02:41 svc:/network/dns/server:default
online          9:57:35 svc:/network/dns/client:default
online          9:57:58 svc:/network/dns/multicast:default
root@sol11vm:/ai#
# installadm create-service -n sol11-2-ai -i 192.168.30.10 -c 10 -s /ai/sol-11_2-ai-sparc.iso /ai/sol11-2-ai.target

Creating service from: /ai/sol-11_2-ai-sparc.iso
OK to use default image path: /export/auto_install/sol11-2-ai? [y/N]: y
Setting up the image ...

Creating sparc service: sol11-2-ai

Image path: /export/auto_install/sol11-2-ai

Service discovery fallback mechanism set up
Creating SPARC configuration file
Adding IP range to local DHCP configuration

Unable to add IP range: check_subnet_for_overlap: adding range causes
overlap on subnet
192.168.30.0

The install service has been created but the DHCP configuration has
not been completed. Please see dhcpd(8) for further information.

Refreshing install services





FINALIZADA la preparacion previa de la notebook , se viene la instalacion de solaris 11.2 en el servidor m5000






Conectar el cable de red de la notebook al IOU0 red interna del m5000
























Conectar el cable usb serial a mi notebook y el otro extremo al serial del equipo
desde el linux, tipear 
minicom -D /dev/ttyUSB0  ( esto depende en que usb lo conecte, lo verifico con un dmesg )
Esta configuracion fue la que funciono con el minicom, modifico lo sig:
Serial device : /dev/ttyUSB0
BPS :  9600 8N1
Hardware FLOW control :  YES
Software Flow Control NO














Una vez que se conecta el minicom, voy a estar parado en la XSCF del M5000
lo tengo que llevar a OBP con lo s siguientes comandos
Puedo chequear primero si se ven entre el M5000 y mi linux , desde el linux con el comando ethtool eth0 como lo muestro en la foto















XSCF> console -d 0
pongo la clave de root y le doy init 0 .
En el caso que no tenga la clave de root, me vuelvo a la XSCF con la combinacion de teclas #. ( numeral + punto )
XSCF> reset -d 0

desde OBP ejecuto boot net:dchp - install  ( CUIDADO, respetar los espacios y el guion - antes de install sino falla la instalacion porque no encuentra el boot image)




























En la foto de arriba muestra que termino la instalacion del miniroot y esta booteando el solaris 12

En la foto de abajo , muestro como  esta instalando desde la imagenes 














Booting














Listo, ya instalado, ejecuto un pkg update y compruebo que esta todo.
Una vez que finaliza la instalacion hay que hacer un init 6
Esta instalacion te deja en el sys.unconfig  y ahi hay que configurar el
hostname, el TIMEZONE, etc.
















Una vez booteado de disco, hay que agregar la ip, configurar el defaultrouter,etc.

Para configurar la ip seria 
root@psunp006:~# dladm show-link
LINK                CLASS     MTU    STATE    OVER
net3                phys      1500   unknown  --
net0                phys      1500   unknown  --
net4                phys      1500   unknown  --
net2                phys      1500   unknown  --
net5                phys      1500   unknown  --
net1                phys      1500   unknown  --
root@psunp006:~# netadm enable -p ncp defaultfixed
ncp 'DefaultFixed' is already enabled
root@psunp006:~# dladm show-phys
LINK              MEDIA                STATE      SPEED  DUPLEX    DEVICE
net3              Ethernet             unknown    0      unknown   e1000g1
net0              Ethernet             unknown    0      unknown   bge0
net4              Ethernet             unknown    0      unknown   e1000g2
net2              Ethernet             unknown    0      unknown   e1000g0
net5              Ethernet             unknown    0      unknown   e1000g3
net1              Ethernet             unknown    0      unknown   bge1
root@psunp006:~# ipadm
NAME              CLASS/TYPE STATE        UNDER      ADDR
lo0               loopback   ok           --         --
   lo0/v4         static     ok           --         127.0.0.1/8
   lo0/v6         static     ok           --         ::1/128
sppp0             ip         ok           --         --
   sppp0/?        static     ok           --         192.168.200.2->192.168.200.1
root@psunp006:~#
root@psunp006:~# ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
sppp0: flags=1010010008d1 mtu 1500 index 2
        inet 192.168.200.2 --> 192.168.200.1 netmask ffffff00
        ether 0:0:0:0:0:0
lo0: flags=2002000849 mtu 8252 index 1
        inet6 ::1/128
root@psunp006:~#
root@psunp006:~# ipadm create-ip net0
root@psunp006:~# ipadm create-addr -T static -a local=10.77.100.212/24 net0/addr
root@psunp006:~# ipadm show-addr
ADDROBJ           TYPE     STATE        ADDR
lo0/v4            static   ok           127.0.0.1/8
sppp0/?           static   ok           192.168.200.2->192.168.200.1
net0/addr         static   inaccessible 10.77.100.212/24
lo0/v6            static   ok           ::1/128
root@psunp006:~#

root@psunp006:~# ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
sppp0: flags=1010010008d1 mtu 1500 index 2
        inet 192.168.200.2 --> 192.168.200.1 netmask ffffff00
        ether 0:0:0:0:0:0
net0: flags=1000803 mtu 1500 index 4
        inet 10.77.100.212 netmask ffffff00 broadcast 10.77.100.255
        ether 0:21:28:1a:75:20
lo0: flags=2002000849 mtu 8252 index 1
        inet6 ::1/128
net0: flags=20002000800 mtu 1500 index 4
        inet6 ::/0
        ether 0:21:28:1a:75:20
root@psunp006:~#
root@psunp006:~# route -p add default 10.77.100.1
add net default: gateway 10.77.100.1


Este equipo ya tenia storage conectado, asi que el paso siguiente que hice fue poner los discos conectados a la SAN , en multipath
root@psunp006:/kernel/drv# stmsboot -D fp -e
WARNING: This operation will require a reboot.
Do you want to continue ? [y/n] (default: y) y
The changes will come into effect after rebooting the system.
Reboot the system now ? [y/n] (default: y) y


psunp006 console login: syncing file systems... done
rebooting...
Resetting...
POST Sequence 01 CPU Check
POST Sequence 02 Banner
LSB#00 (XSB#00-0): POST 2.9.0 (2009/02/18 14:34)
POST Sequence 03 Fatal Check
POST Sequence 04 CPU Register
POST Sequence 05 STICK
POST Sequence 06 MMU
POST Sequence 07 Memory Initialize
POST Sequence 08 Memory
POST Sequence 09 Raw UE In Cache
POST Sequence 0A Floating Point Unit
POST Sequence 0B SC
POST Sequence 0C Cacheable Instruction
POST Sequence 0D Softint
POST Sequence 0E CPU Cross Call
POST Sequence 0F CMU-CH
POST Sequence 10 PCI-CH
POST Sequence 11 Master Device
POST Sequence 12 DSCP
POST Sequence 13 SC Check Before STICK Diag
POST Sequence 14 STICK Stop
POST Sequence 15 STICK Start
POST Sequence 16 Error CPU Check
POST Sequence 17 System Configuration
POST Sequence 18 System Status Check
POST Sequence 19 System Status Check After Sync
POST Sequence 1A OpenBoot Start...
POST Sequence Complete.

Sun SPARC Enterprise M5000 Server, using Domain console
Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
Copyright 2008 Sun Microsystems, Inc. and Fujitsu Limited. All rights reserved.
OpenBoot 4.24.10, 32768 MB memory installed, Serial #86543492.
Ethernet address 0:21:28:28:8c:84, Host ID: 85288c84.



Rebooting with command: boot
Boot device: /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/disk@0,0:a  File and args:
SunOS Release 5.11 Version 11.2 64-bit
Copyright (c) 1983, 2014, Oracle and/or its affiliates. All rights reserved.
stmsboot: Root is on ZFS
stmsboot: configuring devices

stmsboot: vfstab has been updated
stmsboot: now regenerating boot archive
Hostname: psunp006





*********************************************************************************
Este trabajo lo realize con la ayuda de mi colega Nicolas Morono.
Agradezco la ayuda y soporte de los Fied Engineer Marcelo Herrera y Guillermo Ojea Quintana
*********************************************************************************

Solaris 11 - ZFS Mirror boot

Crear un mirror del disco de booteo con zfs
Partiendo de la base que tengo estos dos discos internos y el Sistema Operativo esta alojado en el disco c1t0d0

     c1t0d0
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@0,0
     c1t1d0
          /pci@0,600000/pci@0/pci@8/pci@0/scsi@1/sd@1,0

root# zpool status rpool
  pool: rpool
 state: ONLINE
  scan: none requested
config:

        NAME        STATE     READ WRITE CKSUM
        rpool       ONLINE       0     0     0
          c1t0d0s0  ONLINE       0     0     0

errors: No known data errors
root#
Copio la vtoc del disco primario ( c1t0d0 ) al disco secundario ( c1t1d0 )

root# prtvtoc /dev/rdsk/c1t0d0s2 | fmthard -s - /dev/rdsk/c1t1d0s2
fmthard:  New volume table of contents now in place.
root#

Agrego el disco c1t1d0s0 al pool de disco rpool 

root# zpool attach -f rpool c1t0d0s0 c1t1d0s0
Make sure to wait until resilver is done before rebooting.
root#

root@psunp006:/repo# zpool status rpool
  pool: rpool
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
        continue to function in a degraded state.
action: Wait for the resilver to complete.
        Run 'zpool status -v' to see device specific details.
  scan: resilver in progress since Thu Jun 18 09:16:09 2015
    22.6G scanned
    5.02G resilvered at 106M/s, 20.58% done, 0h2m to go
config:

        NAME          STATE     READ WRITE CKSUM
        rpool         DEGRADED     0     0     0
          mirror-0    DEGRADED     0     0     0
            c1t0d0s0  ONLINE       0     0     0
            c1t1d0s0  DEGRADED     0     0     0  (resilvering)

errors: No known data errors
root#

Chequeo como va la sincronizacion de los discos
root# zpool status -v rpool
  pool: rpool
 state: DEGRADED
status: One or more devices is currently being resilvered.  The pool will
        continue to function in a degraded state.
action: Wait for the resilver to complete.
  scan: resilver in progress since Thu Jun 18 09:16:09 2015
    22.6G scanned
    20.3G resilvered at 94.8M/s, 89.04% done, 0h0m to go
config:

        NAME          STATE     READ WRITE CKSUM
        rpool         DEGRADED     0     0     0
          mirror-0    DEGRADED     0     0     0
            c1t0d0s0  ONLINE       0     0     0
            c1t1d0s0  DEGRADED     0     0     0  (resilvering)

device details:

        c1t1d0s0    DEGRADED      scrub/resilver needed
        status: ZFS detected errors on this device.
                The device is missing some data that is recoverable.
           see: http://support.oracle.com/msg/ZFS-8000-QJ for recovery


errors: No known data errors

root#

Ahora si, ya esta espejado 

root# zpool status -v rpool
  pool: rpool
 state: ONLINE
  scan: resilvered 22.6G in 0h5m with 0 errors on Thu Jun 18 09:21:48 2015
config:

        NAME          STATE     READ WRITE CKSUM
        rpool         ONLINE       0     0     0
          mirror-0    ONLINE       0     0     0
            c1t0d0s0  ONLINE       0     0     0
            c1t1d0s0  ONLINE       0     0     0

errors: No known data errors
root#

Ahora a copiarle el sector de booteo al disco que agregue como mirror

root# installboot -F zfs -f /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t1d0s0
root#

Si lo ejecuto sin la opcion -f , me da un error como el siguiente

root# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t1d0s0
WARNING: target device /dev/rdsk/c1t1d0s0 has a versioned bootblock but no versioning information was provided.
bootblock version installed on /dev/rdsk/c1t1d0s0 is more recent or identical
Use -f to override or install without the -u option

jueves, 18 de junio de 2015

Solaris 11 - Crear Repositorio Local


El primer paso es bajar de la web de oracle la imagen .iso que contiene el repositorio que vamos a utilizar .
http://www.oracle.com/technetwork/server-storage/solaris11/downloads/local-repository-2245081.html

Son 4 archivos .zip mas un script instal-repo.ksh y un README
sol-11_2-repo-1of4.zip
sol-11_2-repo-2of4.zip
sol-11_2-repo-3of4.zip
sol-11_2-repo-4of4.zip

Una vez hecho los pasos anteriores, comienzo con la creacion de mi repositorio local.

Como tengo espacio, voy a crear un zpool exclusivo para que quede como repositorio, pero
en caso de no contar con discos como para crear un nuevo zpool, se puede utilizar un
fs ya existente yque tenga espacio, como puede ser un /export/home/

zpool create REPOpool c0t60050768018285D2700000000000005Ad0s0
zfs set mountpoint=/repo REPOpool

Chequeo como quedo 
# zpool status REPOpool
  pool: REPOpool
 state: ONLINE
  scan: none requested
config:

        NAME                                       STATE     READ WRITE CKSUM
        REPOpool                                   ONLINE       0     0     0
          c0t60050768018285D2700000000000005Ad0s0  ONLINE       0     0     0

errors: No known data errors
#

Copio la imagen .iso que contiene los repositorios del solaris 11 , que baje previamente,y describi mas arriba en este documento.

#lofiadm -a /repo/sol-11_2-repo.iso
#mount -F hsfs /dev/lofi/1 /mnt
# rsync -aP /mnt/repo /repo
# umount /mnt

# df -h /repo
Filesystem             Size   Used  Available Capacity  Mounted on
REPOpool                54G    15G        39G    28%    /repo
#

# ls -ltrh
total 15589252
-rwxr-xr-x   1 root     root        5.8K Jun 25  2014 README-repo-iso.txt
-rw-r--r--   1 root     root        1.6K Jun 25  2014 NOTICES
-rw-r--r--   1 root     root        3.2K Jun 25  2014 COPYRIGHT
dr-xr-xr-x   3 root     root           4 Jun 12 02:57 repo
-rw-r--r--   1 root     root        8.2G Jun 18 06:58 sol-11_2-repo.iso
#

Ahora si, a tirar comandos para crear el repositorio
# svccfg -s application/pkg/server setprop pkg/inst_root=/repo/repo
# svccfg -s application/pkg/server setprop pkg/readonly=true
# svcadm refresh application/pkg/server
# svcadm enable application/pkg/server
#

# pkg set-publisher -O http://10.77.100.212 solaris
# pkgrepo refresh -s /repo/repo
Initiating repository refresh.
#
Pruebo si encuentra algun paquete como para instalar
# pkg search xclock
INDEX        ACTION         VALUE                    PACKAGE
basename            file   usr/share/X11/app-defaults/XClock    pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
basename            file   usr/bin/xclock              pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
basename           link   usr/X11/bin/xclock         pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
com.oracle.info.description set    the xclock utility   pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
com.oracle.info.name     set    xclock   pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
pkg.description         set    xclock is the classic X Window System clock utility.  It displays the time in analog or digital form, continuously updated at a frequency which may be specified by the user. pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
pkg.fmri          set    solaris/x11/xclock   pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
pkg.summary    set    xclock - analog / digital clock for X  pkg:/x11/xclock@1.0.7-0.175.2.0.0.42.1406
#
Con el sig comando se instala el paquete xclock
# pkg install xclock
           Packages to install:  1
       Create boot environment: No
Create backup boot environment: No
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED
Completed                                1/1           8/8      0.0/0.0  970k/s

PHASE                                          ITEMS
Installing new actions                         33/33
Updating package state database                 Done
Updating package cache                           0/0
Updating image state                            Done
Creating fast lookup database                   Done
Updating package cache                           1/1
root@psunp006:/repo#

Otro ejemplo del uso del pkg para instalar un paquete

# pkg install gcc
           Packages to install: 17
           Mediators to change:  1
            Services to change:  1
       Create boot environment: No
Create backup boot environment: No
Planning linked: 0/1 done; 1 working: zone:zona1
Planning linked: 1/1 done
DOWNLOAD                                PKGS         FILES    XFER (MB)   SPEED
Completed                              17/17     2865/2865    61.1/61.1  5.8M/s

Downloading linked: 0/1 done; 1 working: zone:zona1
Downloading linked: 1/1 done
PHASE                                          ITEMS
Installing new actions                     3389/3389
Updating package state database                 Done
Updating package cache                           0/0
Updating image state                            Done
Creating fast lookup database                   Done
Executing linked: 0/1 done; 1 working: zone:zona1
Executing linked: 1/1 done
Updating package cache                           1/1
#

Para ver que grupo quedo instalado 
# pkg info -r group/system/solaris-large-server
          Name: group/system/solaris-large-server
       Summary: Oracle Solaris Large Server
   Description: Provides an Oracle Solaris large server environment
      Category: Meta Packages/Group Packages
         State: Installed
     Publisher: solaris
       Version: 0.5.11
 Build Release: 5.11
        Branch: 0.175.2.0.0.42.0
Packaging Date: June 23, 2014 09:49:37 PM
          Size: 5.46 kB
          FMRI: pkg://solaris/group/system/solaris-large-server@0.5.11,5.11-0.175.2.0.0.42.0:20140623T214937Z
#

martes, 24 de febrero de 2015

Instalar Veritas Volume Manager 5.1 SP4


# tar xvf VRTS_SF_HA_Solutions_5.1_SP1_Solaris_SPARC.tar
x ./dvd1-sol_sparc, 0 bytes, 0 tape blocks
x ./dvd1-sol_sparc/dynamic_multipathing, 0 bytes, 0 tape blocks
x ./dvd1-sol_sparc/dynamic_multipathing/copyright, 874 bytes, 2 tape blocks
x ./dvd1-sol_sparc/dynamic_multipathing/docs, 0 bytes, 0 tape blocks
x ./dvd1-sol_sparc/dynamic_multipathing/docs/dmp_admin_51sp1_sol.pdf, 2273804 bytes, 4442 tape blocks
******
*****
corto la salida del tar para no extender demasiado
x ./dvd1-sol_sparc/3rdpartyattributions.pdf, 320766 bytes, 627 tape blocks
x ./dvd1-sol_sparc/getting_started.pdf, 364819 bytes, 713 tape blocks
x ./dvd1-sol_sparc/jumpstart_readme.txt, 5516 bytes, 11 tape blocks
x ./dvd1-sol_sparc/readme_first.txt, 29923 bytes, 59 tape blocks
x ./dvd1-sol_sparc/windows, 0 bytes, 0 tape blocks
x ./dvd1-sol_sparc/windows/VRTSvradv.msi, 29723136 bytes, 58053 tape blocks

 # cd dvd1-sol_sparc
  # cd volume manager
 # ls
copyright    docs         EULA         installvm    pkginfo.txt  tools        uninstallvm
 # ./installvm

                                          Veritas Volume Manager 5.1 SP1 Install Program

Copyright (c) 2010 Symantec Corporation. All rights reserved.  Symantec, the Symantec Logo are trademarks or registered trademarks of Symantec Corporation or its affiliates in the U.S. and other countries. Other names may be trademarks of their respective owners.
The Licensed Software and Documentation are deemed to be "commercial computer software" and "commercial computer software documentation" as defined in FAR Sections 12.212 and DFARS Section 227.7202.

Logs are being written to /var/tmp/installvm-201502231307dhv while installvm is in progress.

Do you agree with the terms of the End User License Agreement as specified in the volume_manager/EULA/en/EULA_SF_Ux_5.1SP1.pdf
file present on media? [y,n,q,?] y

                                          Veritas Volume Manager 5.1 SP1 Install Program


     1)  Install minimal required Veritas Volume Manager packages - 244 MB required
     2)  Install recommended Veritas Volume Manager packages - 409 MB required
     3)  Display packages to be installed for each option

Select the packages to be installed on all systems? [1-3,q,?] (2) 2

Enter the Solaris Sparc system names separated by spaces: [q,?] (sun2009)
                                          Veritas Volume Manager 5.1 SP1 Install Program

                                                             sun2009

Logs are being written to /var/tmp/installvm-201502231307dhv while installvm is in progress

    Verifying systems: 100%                                                                                    
    Estimated time remaining: 0:00                                                                                      8 of 8

    Checking system communication.............................................................. Done
    Checking release compatibility ................................................................ Done
    Checking installed product  ..................................................................... Done
    Checking prerequisite patches and packages ........................................... Done
    Checking platform version     .................................................................. Done
    Checking file space ................................................................................ Done
    Performing product license checks .......................................................... Done
    Performing product prechecks ................................................................. Done

System verification checks completed successfully

                                          Veritas Volume Manager 5.1 SP1 Install Program

                                                             sun2009


The following Veritas Volume Manager packages will be installed on all systems:

Package           Package Description

VRTSvlic          Veritas Licensing
VRTSperl          Veritas Perl 5.10.0 Redistribution
VRTSspt           Veritas Software Support Tools by Symantec
VRTSvxvm          Veritas Volume Manager Binaries
VRTSaslapm        Volume Manager - ASL/APM
VRTSob            Veritas Enterprise Administrator Service by Symantec
VRTSsfmh          Veritas Storage Foundation Managed Host by Symantec

The following Veritas Volume Manager patches will be installed on all systems:

Patch             Package

142629-06         VRTSvxvm
143687-02         VRTSob

Press [Enter] to continue:
Logs are being written to /var/tmp/installvm-201502231307dhv while installvm is in progress

   
    Installing VM: 100%                                                                      
    Estimated time remaining: 0:00                                                                                    12 of 12

    Performing VM preinstall tasks ....................................................... Done
    Installing VRTSvlic package............................................................ Done
    Installing VRTSperl package........................................................... Done
    Installing VRTSspt package ........................................................... Done
    Installing VRTSvxvm package ........................................................ Done
    Installing VRTSaslapm package....................................................... Done
    Installing VRTSob package ............................................................ Done
    Installing 142629-06 patch ............................................................. Done
    Installing 143687-02 patch ............................................................. Done
    Installing VRTSsfmh package .......................................................... Done
    Performing VM postinstall tasks ...................................................... Done
    Copying installer libraries and scripts ................................................ Done

Veritas Volume Manager Install completed successfully
                                          Veritas Volume Manager 5.1 SP1 Install Program

                                                             sun2009

*****ACA AGREGO LAS LICENCIAS ****
To comply with the terms of Symantec's End User License Agreement, you have 60 days to either:

* Enter a valid license key matching the functionality in use on the systems
* Enable keyless licensing and manage the systems with a Management Server.  For more details visit
http://go.symantec.com/sfhakeyless.  The product is fully functional during these 60 days.

     1)  Enter a valid license key
     2)  Enable keyless licensing and complete system licensing later

How would you like to license the systems? [1-2,q] (2) 1

Checking system licensing
VM is unlicensed on all systems

Enter a VM license key: [b,q,?] AJZU-XXXX-XXXX-XXXX-XXXX-XXXX-C6PP-XXXX-P
Storage Foundation Enterprise successfully registered on sun2009
Do you wish to enter additional licenses? [y,n,q,b] (n) n
VM is licensed on all systems

                                          Veritas Volume Manager 5.1 SP1 Install Program

                                                             sun2009


Logs are being written to /var/tmp/installvm-201502231307dhv while installvm is in progress

    Starting VM: 100%                        


    Estimated time remaining: 0:00                                                            11 of 11

    Performing VM configuration .................................................................. Done
    Starting vxdmp ........................................................................................ Done
    Starting vxio ............................................................................................ Done
    Starting vxspec ........................................................................................ Done
    Starting vxconfigd .................................................................................... Done
    Starting vxesd .......................................................................................... Done
    Starting vxrelocd ...................................................................................... Done
    Starting vxcached ..................................................................................... Done
    Starting vxconfigbackupd .......................................................................... Done
    Starting vxattachd ..................................................................................... Done
    Performing VM poststart tasks .................................................................. Done

Veritas Volume Manager Startup completed successfully

installvm log files, summary file, and response file are saved at:

        /opt/VRTS/install/logs/installvm-201502231307dhv

*** Ahora ,voy a instalar los parches para el Veritas

root@sun2009 # gzip -d sfha-sol_sparc-5.1SP1RP4-patches.tar.gz
root@sun2009 # tar xvf sfha-sol_sparc-5.1SP1RP4-patches.tar
x ./sol_sparc, 0 bytes, 0 tape blocks
x ./sol_sparc/copyright, 882 bytes, 2 tape blocks
x ./sol_sparc/scripts, 0 bytes, 0 tape blocks
x ./sol_sparc/scripts/bin, 0 bytes, 0 tape blocks
***********
Corto la salida por ser muy extensa
x ./sol_sparc/perl/lib/site_perl/5.10.0/Bundle/LWP.pm, 923 bytes, 2 tape blocks
x ./sol_sparc/sfha_notes_51sp1rp4_sol.pdf, 2437518 bytes, 4761 tape blocks
x ./sol_sparc/pkgs, 0 bytes, 0 tape blocks
x ./sol_sparc/pkgs/README_SYMC.VRTSaslapm, 676 bytes, 2 tape blocks
x ./sol_sparc/pkgs/VRTSaslapm.pkg, 1637888 bytes, 3199 tape blocks

root@sun2009 # cd sol_sparc
root@sun2009 # ls
copyright                    perl                         sfha_notes_51sp1rp4_sol.pdf  xprtl
installrp                    pkgs                         uninstallrp
patches                      scripts                      webinstaller
root@sun2009 # cd patches

Estos son los parches que necesito
drwxr-xr-x   2 root     root         512 Feb 23 11:41 142629-06
drwxr-xr-x   2 root     root         512 Feb 23 11:41 143687-02
drwxr-xr-x   2 root     root         512 Feb 23 12:19 142629-19
drwxr-xr-x   2 root     root         512 Feb 23 12:28 143687-04
drwxr-xr-x   2 root     root         512 Feb 23 12:29 144159-01
drwxr-xr-x   2 root     root         512 Feb 23 12:34 149806-01

patchadd -d 142629-19
patchadd -d 142629-06
patchadd -d 143687-02
patchadd -d 143687-04
patchadd -d 144159-01
patchadd -d 149806-01

Listo
root@sun2009 # pkginfo -l VRTSvxvm
   PKGINST:  VRTSvxvm
      NAME:  Binaries for VERITAS Volume Manager by Symantec
  CATEGORY:  system
      ARCH:  sparc
   VERSION:  5.1,REV=10.06.2009.22.05
   BASEDIR:  /
    VENDOR:  Symantec Corporation
      DESC:  Virtual Disk Subsystem
    PSTAMP:  5.1.104.000-5.1SP1RP4-2013-08-07-142629-19
  INSTDATE:  Feb 23 2015 13:39
   HOTLINE:  http://support.veritas.com/phonesup/phonesup_ddProduct_.htm
     EMAIL:  support@veritas.com
    STATUS:  completely installed
     FILES:      955 installed pathnames
                  35 shared pathnames
                 116 directories
                 428 executables
              419176 blocks used (approx)

root@sun2009 #




lunes, 16 de febrero de 2015

ora-27102: Out of memory ( solaris 10 )

Al agregarle espacio a la sga de la bd , cuando quiero levantar la instancia me da el siguiente error de memoria.
SQL> startup
ORA-27102: out of memory
SVR4 Error: 22: Invalid argument

Chequeo la ram disponibe en el equipo
prtconf |grep Memory
Memory size: 110592 Megabytes

Chequeo el project asociado a oracle
# su - oracle
Sun Microsystems Inc.   SunOS 5.10      Generic January 2005

# id -p
uid=1001(oracle) gid=101(dba) projid=100(oracle)
#

Chequeo los valores actuales de shared memory asociado al project oracle ( el id 100 en este caso)

prctl -n project.max-shm-memory -i project 100
project: 100: oracle
NAME    PRIVILEGE       VALUE    FLAG   ACTION                       RECIPIENT
project.max-shm-memory
        privileged      16.0GB      -   deny                                 -
        system          16.0EB    max   deny        


Tengo 16gb para la shared memory, pero el dba necesita amliar ese parametro al doble
lo que hago es la siguiente cuenta, para pasarselo al valor en el projmod
32 x 1024 =32768
32768 x 1024 x 1024 = "34359738368"
Me logueo como " root "

#  projmod -s -K "project.max-shm-memory=(priv,34359738368,deny)" oracle

Luego me logueo como usuario "oracle" para chequear que quedaron los cambios
# prctl -n project.max-shm-memory -i project 100
project: 100: oracle
NAME    PRIVILEGE       VALUE    FLAG   ACTION                       RECIPIENT
project.max-shm-memory
        privileged      32.0GB      -   deny                                 -
        system          16.0EB    max   deny                                 -
#

Levanto la base de datos
SQL> startup
ORACLE instance started.

Total System Global Area 5804916736 bytes
Fixed Size                  2245592 bytes
Variable Size            3483089960 bytes
Database Buffers         2315255808 bytes
Redo Buffers                4325376 bytes
Database mounted.
Database opened.

Perfecto

NOTA: Los cambios con el projmod los hago como "root". No es necesario reboot, solo hay que desloguearse y volver a loguearse con usuario "oracle"



jueves, 5 de febrero de 2015

Forzar un crash dump en Solaris Sparc

Puedo generar un Crash Dump desde linea de comando con los siguientes comandos
# reboot -d
o
# uadmin 5 0
o
# mdb -kw
rootdir/w 0

Aca va un ejemplo de la salida del comando mdb -kw

[cocodrilo] / # mdb -kw
Loading modules: [ unix genunix specfs dtrace ufs sd pcisch ip hook neti sctp arp usba fcp fctl nca ssd zfs md cpc random crypto logindmux ptm sppp nfs mpt ipc ]

> rootdir/w 0    (Esto escribe un valor incorrecto al vnode del root directory )

rootdir:        0       =       0x0
>
Dec  7 11:30:12 cocodrilo savecore: [ID 570001 auth.error] reboot after panic: BAD TRAP: type=10 rp=2a101b4ba40 addr=10f2294 mmu_fsr=0
Dec  7 11:30:12 cocodrilo savecore: [ID 748169 auth.error] saving system crash dump in /var/crash/cocodrilo/*.1
Dec  7 11:30:17 cocodrilo sddsrv[635]: [ID 451523 user.error] sddsrv probing enabled with interval 5 min

jueves, 9 de octubre de 2014

Asignar discos a un LDOM

Este documento tiene la finalidad de describir como agregar nuevas luns a un ldom, desde un pdom con multiples ldom
El hardware utilizado es un m5-32 con pdom instalados con solaris 11.1 y ldoms con solaris 10 release 1/13.
Las luns asignadas pertenecen a un storage IBM svc 2145

Como este pdom tiene multiples port de WWN , debo saber previamente cual es el port de wwn que esta asignado a mi ldom, de aca en mas llamado  ldom sun1003
Nota: en el caso de sun1003 el wwn es #HBA Port WWN: 21000024ff56c29c

Entro al Physical Domain ( pdom2)
Primero identfico los discos que tiene asignado con el sig comando:
# fcinfo remote-port -sl -p 21000024ff56c29c | grep OS | sort -u
          OS Device Name: /dev/rdsk/c0t60050768018107A79000000000000004d0s2
          OS Device Name: /dev/rdsk/c0t60050768018107A79000000000000008d0s2
          OS Device Name: /dev/rdsk/c0t60050768018107A79000000000000009d0s2
          OS Device Name: /dev/rdsk/c0t60050768018107A7900000000000000Ad0s2
#

Luego chequeo con format , los discos nuevos que fueron descubiertos ( los que me muestra como configured ) y verifico que coincidan con las luns que me mostro el comando anterior ( fcinfo )

# format
Searching for disks...done
c0t60050768018107A79000000000000004d0s2 configured with capacity of 199.99GB
c0t6000144000000010602742B9EE6B55F0d0: configured with capacity of 199.99GB
c0t6000144000000010602742B9EE6B55F6d0: configured with capacity of 199.99GB
c0t6000144000000010602742B9EE6B55FCd0: configured with capacity of 199.99GB

el disco  c0t60050768018107A79000000000000004d0s2   es el que voy a agregar al ldom.

Los discos que encontro el format como configured, pertenecen a otro WWN de otro ldom.
el resto de los discos que me muestra el comando fcinfo , son discos pertenecientes al ldom que ya fueron asignados.Si quiero verificar esto, ejecuto el comando

# ldm ls-services 

    NAME             LDOM             VOLUME         OPTIONS          MPGROUP        DEVICE
    sun1003-vds0    primary          vol1           excl                            /dev/zvol/dsk/sun1003_so/vol1
                                      vol2           excl                            /dev/rdsk/c0t60050768018107A79000000000000008d0s2
                                      vol3           excl                            /dev/rdsk/c0t60050768018107A79000000000000009d0s2
                                      vol4           excl                            /dev/rdsk/c0t60050768018107A7900000000000000Ad0s2

Ahora, sabiendo cual es el disco que necesito agregar al ldom de nombre sun1003, continuo con los comandos
# ldm add-vdsdev options=excl /dev/rdsk/c0t60050768018107A79000000000000004d0s2 vol5@sun1003-vds0
** options=excl es para indicarle que lo excluya de la lista de los discos que ve el pdom, ya que de ahora en mas sera exclusivo para el ldom que le indique , siendo mas claro, desde el ldom sun1003 cuando haga un format voy a ver estos discos 
** vol5 es totalmente a eleccion, se utiliza para darle un orden, este nombre dado se utilizara en el siguiente comando para referenciar al disco agregado

# ldm add-vdisk vdisk5 vol5@sun1003-vds0 sun1003-ldm
** vdisk5 lo relaciono con el nombre que use anteriormente cuando cree el vol5@sun1003-vds0 

Chequeo como quedo en el ldom dentro del pdom,  de la sig manera
# ldm list-domain -o disk 
sun1003-ldm
DISK
    NAME             VOLUME                      TOUT ID   DEVICE  SERVER         MPGROUP
    vdisk1           vol1@sun1003-vds0               0    disk@0  primary
    vdisk2           vol2@sun1003-vds0               1    disk@1  primary
    vdisk3           vol3@sun1003-vds0               2    disk@2  primary
    vdisk4           vol4@sun1003-vds0               3    disk@3  primary
    vdisk5           vol5@sun1003-vds0               5    disk@5  primary

A esta altura, ya asigne el disco c0t60050768018107A79000000000000004d0s2   al logical domain y si ejecuto un desde el pdom, un format, ya no me lo va a mostrar mas ( esto es por la opcion excl del ldm add-vdsdev ejecutada anteriormente) ya que de ahora en mas se vera dentro del ldom sun1003-ldm

Nota:
Documento realizado con mi colega Nicolas Morono ( @nicomorono )

martes, 12 de agosto de 2014

Export de datos de mysql a una hoja de calculo

Tenia que extraer datos de una tabla, para un reporte gerencial que me pidieron, los cuales residen en una herramienta construida in house, dicha herramienta guarda datos de inventarios de equipos, en un repositorio mysql.
 Como no tengo conocimientos del mysql , estuve investigando una herramienta que me permitiera en pocos pasos hacer esto para mi,  y encontre esta herramienta dbForge Studio for my sql de la empresa Devart  lo descargue de este link http://www.devart.com/dbforge/mysql/studio    ,  dejo a continuacion el paso a paso y como resultado final y satisfactorio, la tabla excel con los nombres de mis servidores.

 Abrir una nueva coneccion desde mi pc hacia el equipo donde reside los datos de mysql 











Los datos a llenar son : numero de ip del equipo , numero de port del mysql , usuario y password












Selecciono a la izquierda, el nombre de la tabla a Exportar











Con boton derecho parado en la tabla servers elijo Export Data











Elijo el formato excel.











Termina el export 











Producto terminado