Bienvenidos

Todos estos pasos descriptos fueron probados en ambientes productivos

martes, 29 de agosto de 2017

Upgrade Firmware M5000

Estos son los pasos que realizados para el upgrade de Firmware de un M5000
Bajar el archivo FFXCP1123.tar.gz ( 1123 es la ultima al momento de creacion de este doc )
Copiar el archivo a un pendrive
*** Muy importante: en el pendrive el archivo tiene que quedar dentro de un directorio images/ ***

El equipo al que estoy haciendo el upgrade es nuevo, no esta conectado  a la red, asi que tengo dos opciones para conectarme y pasarle el archivo del pendrive y poder actualizar.

Tenia dos opciones, ambas mediante notebook directa al M5000, una opcion via modo grafico mediante el ILOM, y la otra via cli ( linea de comando )
Elegi como siempre la linea de comando, aca muestro las 2 opciones

Opcion ILOM ,  que no me resulto comoda, tarda mucho mas, y no podemos ver el status de lo que va realizando  .

Conecte un cable de red desde mi notebook a la XSCF del M5000, en minotebook, con virtualbox  levante una virtual de Solaris x86, al cual le configure una ip del mismo rango que tiene configurada la XSCF, abri un browser https://10.29.14.235 , usuario y password, luego en el frame izquierdo, en Menu, Utilities, Firmware Update, nos conecta a un menu central, donde en XCP import, indicamos la ubicacion del archivo FFXCP1123.tar.gz y le doy Upload.
El paso siguiente seria , XCP Update.
En mi caso, aborte esta opcion, porque habia transcurrido mas de 40 minutos y estaba siempre igual. tal cual lo muestro en la foto de abajo.















La opcion que finalmente utilize, y es para mi la mas comoda es cia linea de comando, como muestro a continuacion

Similar a la anterior solo que sin Cable de red , ni levantando una virtual, solo con un cable serial de mi notebook al serial de la XSCF del equipo .
Inserte el pendrive en el USB de la XSCF.
Donde esta el USB? entre el port serial y port de red, como muestro a continuacion

























Desde la notebook , minicom -D /dev/ttyUSB0

Usuario eis-installer y su password.

Verifico la version actual del Firmware
XSCF> version -c xcp -v -t
Luego copio el contenido del pendrive 
XSCF> getflashimage file:///media/usb_msd/images/DCXCP1123.tar.gz
XSCF> flashupdate -c check -m xcp -s 1123
Ahora si , actualizo el firmware
XSCF> flashupdate -c update -m xcp -s 1123
Este proceso realiza 2 reboot de la XSCF.

A continuacion, las fotos de los comandos descriptos arriba
















Aca se muestra como luego del primer reboot, se sigue actualizando.













Luego de 20 minutos aprox, vemos el tan ansiado XCP has been completed
Chequeo como quedo con version -c xcp -v -t















viernes, 28 de julio de 2017

Sendmail, solo funciona con el usuario root ?

Nooo, si funciona con root, puede funcionar con cualquier usuario.

Pero con un usuario distinto a root , me tira el sig error :

WARNING: RunAsUser for MSP ignored, check group ids (egid=0, want=25)
can not chdir(/var/spool/clientmqueue/): Permission denied
Program mode requires special privileges, e.g., root or TrustedUser.

Obviamente como el error lo dice, es un tema de permisos.

La Error en este caso se daba Aqui:
root # ls -ltr /usr/lib/sendmail
-r-xr-sr-x   1 root     root     1056324 Sep 22  2010 /usr/lib/sendmail
root #

El grupo del ejecutable sendmail, estaba como root,y debe ir smmsp.

la Solucion fue
root # chown root:smmsp /usr/lib/sendmail

root # ls -ltr /usr/lib/sendmail
-r-xr-sr-x   1 root     smmsp    1056324 Sep 22  2010 /usr/lib/sendmail
root #

No fue necesario realizar un restart del servicio.

Por las dudas dejo de ejemplo, como deben estar los permisos en todo lo que respecta a sendmail

root # ls -ld /var/spool/mqueue
drwxr-x---   2 root     bin          512 Jul 28 09:31 /var/spool/mqueue
root # ls -ld /var/spool/clientmqueue
drwxrwx---   2 smmsp    smmsp        512 Jul 28 09:31 /var/spool/clientmqueue
root #
root # ls -ltr /etc/mail/sendmail.cf
-r--r--r--   1 root     bin        40277 Apr  7  2016 /etc/mail/sendmail.cf
root #
root # ls -ltr /usr/sbin/sendmail
lrwxrwxrwx   1 root     root          15 Apr  6  2016 /usr/sbin/sendmail -> ../lib/sendmail
root # ls -ltr /usr/lib/sendmail
-r-xr-sr-x   1 root     smmsp    1073396 Nov 24  2014 /usr/lib/sendmail
root #

lunes, 10 de julio de 2017

Arreglar un DiskGroup cuando falla porque tiene discos con udid_mismatch


root@sun5004-ldm #   vxdg import VARIOS
VxVM vxdg ERROR V-5-1-10978 Disk group VARIOS: import failed:
No valid log copies in disk group

root@sun5004-ldm #  vxdisk -o alldgs list
DEVICE       TYPE            DISK         GROUP        STATUS
emc0_0       auto:cdsdisk    ZONASdg01    ZONASdg      online thinrclm
emc0_1       auto:ZFS        -            -            ZFS
emc0_2       auto:none       -            -            online invalid
emc0_3       auto:none       -            -            online invalid
emc0_4       auto:cdsdisk    MOTOR01      MOTOR        online thinrclm
emc0_26      auto:cdsdisk    -            (VARIOS)     online thinrclm udid_mismatch
emc0_27      auto:cdsdisk    -            (VARIOS)     online thinrclm udid_mismatch
emc0_28      auto:cdsdisk    -            (VARIOS)     online thinrclm udid_mismatch
emc0_29      auto:cdsdisk    -            (VARIOS)     online thinrclm udid_mismatch
emc0_30      auto:cdsdisk    -            (VARIOS)     online thinrclm udid_mismatch
emc0_31      auto:cdsdisk    PRUEBA01     PRUEBA       online thinrclm
emc0_67      auto:cdsdisk    -            (VARIOS)     online thinrclm udid_mismatch
emc0_68      auto:cdsdisk    -            (VARIOS)     online thinrclm udid_mismatch
emc0_69      auto:ZFS        -            -            ZFS
emc0_70      auto:cdsdisk    -            (VARIOS)     online
emc0_71      auto:cdsdisk    -            (VARIOS)     online
emc0_72      auto:cdsdisk    -            (VARIOS)     online
emc0_73      auto:cdsdisk    -            (VARIOS)     online
emc0_74      auto:cdsdisk    -            (VARIOS)     online
emc0_75      auto:cdsdisk    -            (VARIOS)     online
emc0_76      auto:cdsdisk    -            (VARIOS)     online
emc0_77      auto:cdsdisk    -            (VARIOS)     online
emc0_78      auto:cdsdisk    -            (VARIOS)     online

root@sun5004-ldm #


Esto con cada uno de los discos con udid mismatch
-------------------------------
root@sun5004-ldm #  vxdisk updateudid emc0_26

root@sun5004-ldm # vxdisk -e list
.
emc0_26      auto:cdsdisk   -            -           online clone_disk thinrclm c5t60000970000295700635533030433136d0s2 -
.
root@sun5004-ldm #  vxdisk set emc0_26 clone=off

root@sun5004-ldm # vxdisk -o alldgs list | grep VARIOS
emc0_26      auto:cdsdisk    -            (VARIOS)     online thinrclm

root@sun5004-ldm #  vxdg -Cf import VARIOS
root@sun5004-ldm # vxdg list
NAME         STATE           ID
ZONASdg      enabled,cds          1488805372.11.sun5004-ldm
MOTOR        enabled,cds          1489175938.98.sun5004-ldm
PRUEBA       enabled,cds          1415799954.92.sun5004
VARIOS       enabled,cds          1350498026.360.sun5004



NOTAS: Esto nos paso con Veritas version 5.0 MP3

Documento realizado por mi colega @nicomorono

miércoles, 7 de junio de 2017

Oracle Linux Server 6.7 sobre un LDOM en Ultra Sparc T5


En este Articulo, se detalla un paso a paso , para la creacion de un ldom sobre un T5 , y posteriormente la instalacion de Oracle Linux Server 6.7, partiendo de la base que ya tenemos un PDOM con otros LDOMS creados, si tiene que crear un ldom paso a paso lea Este Articulo

El nombre que voy a usar de aqui en adelante para el zpool,hostname y todo lo relacionado a este ldom con oracle linux es "dorclx01" el nombre es por   d=desarrollo, orc=oracle lx=linux 01=Primer Ldom con linux

Primero creo un ZPOOL para el disco del SO
root@t5-2 # zpool create dorclx01_so c0t60050768018107A79000000000000CF3d0
root@t5-2 # zpool list
NAME          SIZE  ALLOC   FREE  CAP  DEDUP  HEALTH  ALTROOT

dorclx01_so  79.5G   126K  79.5G   0%  1.00x  ONLINE  -
laboratorio   199G  10.7G   188G   5%  1.00x  ONLINE  -
rpool         278G   102G   176G  36%  1.00x  ONLINE  -
root@t5-2 #
Le agrego el valor "none" al mountpoint para que No monte el zfs en el PDOM
root@t5-2 # zfs set mountpoint=none dorclx01_so
Creo un Volumen vol01, dentro del Zpool dorclx01 el cual luego lo usare para pasarselo al ldom y este sera visto como un disco, en el cual instalare el Sistema Operativo
root@t5-2 # zfs create -V 75g dorclx01_so/vol01

Ahora creo el LDOM
root@t5-2 # ldm add-domain dorclx01
root@t5-2 # ldm set-vcpu 8 dorclx01
root@t5-2 # ldm set-mem 8g dorclx01
root@t5-2 # ldm ls
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    8     16G      0.4%  0.4%  274d 1h
net1002         active     -n----  5002    8     8G       1.1%  1.1%  271d 1h
sunlab1          bound      ------  5000    8     8G
dorclx01         inactive   ------          8     8G
root@t5-2 #
Agrego la placa de red y el switch al ldom
root@t5-2 # ldm add-vnet vnet1 vsw4 dorclx01
root@t5-2 # ldm add-vds dorclx01-vds0 primary
Agrego el virtual device ( el volumen que cree unas lineas mas arriba )
root@t5-2 #  ldm add-vdsdev /dev/zvol/dsk/dorclx01_so/vol01 vol01@dorclx01-vds0
Agrego los Virtual disk al ldom
root@t5-2 #  ldm add-vdisk vdisk1 vol01@dorclx01-vds0 dorclx01
Agrego la imagen ISO al primary
root@t5-2 # ldm add-vdsdev /sun/OL-201705232017-R6-U7-sparc-dvd.iso oracle-linux@primary-vds0
Agrego la imagen ISO al ldom
root@t5-2 # ldm add-vdisk oracle-linux oracle-linux@primary-vds0 dorclx01
Agrego el autoboot en False para que quede en OBP cuando bootee
root@t5-2 # ldm add-variable auto-boot?=false dorclx01
Le doy start al LDOM
root@t5-2 # ldm start dorclx01
LDom dorclx01 started
root@t5-2 #
Me conecto a la Consola del nuevo LDOM ,
root@t5-2 # telnet 0 5001
Trying 0.0.0.0...
Connected to 0.
Escape character is '^]'.

Connecting to console "dorclx01" in group "dorclx01" ....
Press ~? for control options ..

{0} ok  boot

A partir de aqui, se muestra la salida de lo que va mostrando en el booteo, la recorto y modifico porque es muy larga y no aporta mucho a este documento"


PROMLIB: Sun IEEE Boot Prom 'OBP 4.38.3 2015/11/11 10:38'
PROMLIB: Root node compatible: sun4v
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
Linux version 4.1.12-94.3.4.el6uek.sparc64 (mockbuild@sparc-ol6-builder-04.us.oracle.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16.0.6) (GCC) ) #1 SMP Mon May 15 1
3:52:26 PDT 2017
bootconsole [earlyprom0] enabled
ARCH: SUN4V
...........................
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
Linux version 4.1.12-94.3.4.el6uek.sparc64 (mockbuild@sparc-ol6-builder-04.us.oracle.com) (gcc 
.......................
Greetings.
anaconda installer init version 13.21.215 starting
mounting /proc filesystem... done
creating /dev filesystem... done
starting udev...udevd[86]: error setting /sys/class/firmware/timeout: No such file or directory
done
mounting /dev/pts (unix98 pty) filesystem... done
mounting /sys filesystem... done
anaconda installer init version 13.21.215 using a serial console
trying to remount root filesystem read write... done
mounting /tmp as tmpfs... done
running install...
running /sbin/loader
detecting hardware...
waiting for hardware to initialize...
detecting hardware...
waiting for hardware to initialize...
Welcome to Oracle Linux Server for sparc64




Luego, por ultimo, al darle a la opcion Reboot, queda en el OBP ( porque lo configuramos asi en el boot?=false ) 
terminating anaconda...done
sending termination signals...done
sending kill signals...done
disabling swap...
        /dev/dm-1
unmounting filesystems...
        /mnt/runtime done
        disabling /dev/loop0
        /dev/pts done
        /selinux done
        /mnt/sysimage/boot done
        /mnt/sysimage/dev/pts done
        /mnt/sysimage/dev/shm done
        /mnt/sysimage/dev done
        /mnt/sysimage/proc done
        /mnt/sysimage/sys done
        /mnt/sysimage/selinux done
        /mnt/sysimage done
waiting for mdraid sets to become clean...
rebooting system
reboot: Restarting system
NOTICE: Entering OpenBoot.
NOTICE: Fetching Guest MD from HV.
NOTICE: Starting additional cpus.
NOTICE: Initializing LDC services.
NOTICE: Probing PCI devices.
NOTICE: Finished PCI probing.

SPARC T5-2, No Keyboard
Copyright (c) 1998, 2015, Oracle and/or its affiliates. All rights reserved.
OpenBoot 4.38.3, 8.0000 GB memory available, Serial #83429474.
Ethernet address 0:14:4f:f9:8:62, Host ID: 84f90862.



{0} ok
 Para finalizar, le damos boot , y queda bootedo con Oracle linux sobre SPARC 
 ****** Corto la salida, dejo lo que me parece mas  importante para mostrar ****

                          GNU GRUB  version 2.02~beta3

 +----------------------------------------------------------------------------+
 |*Oracle Linux Server GNU/Linux                                |
 | Advanced options for Oracle Linux Server GNU/Linux           
 |                                                                            |
 |                                                                            |
 |                                                                            |
 |                                                                            |
 |                                                                            |
 |                                                                            |
 |                                                                            |
 |                                                                            |
 |                                                                            |
 |                                                                            |
 +----------------------------------------------------------------------------+

      Use the ^ and v keys to select which entry is highlighted.
      Press enter to boot the selected OS, `e' to edit the commands
      before booting or `c' for a command-line.
   The highlighted entry will be executed automatically in 0s.
  Booting `Oracle Linux Server GNU/Linux'

Loading Linux 4.1.12-94.3.4.el6uek.sparc64 ...
Loading initial ramdisk ...

PROMLIB: Sun IEEE Boot Prom 'OBP 4.38.3 2015/11/11 10:38'
PROMLIB: Root node compatible: sun4v
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
Linux version 4.1.12-94.3.4.el6uek.sparc64 (mockbuild@sparc-ol6-builder-04.us.oracle.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16.0.6) (GCC) ) #1 SMP Mon May 15 13:52:26 PDT 2017
bootconsole [earlyprom0] enabled
ARCH: SUN4V
Ethernet address: 00:14:4f:f9:08:62
MM: PAGE_OFFSET is 0xfff8000000000000 (max_phys_bits == 47)
MM: VMALLOC [0x0000000100000000 --> 0x0006000000000000]
MM: VMEMMAP [0x0006000000000000 --> 0x000c000000000000]
Kernel: Using 4 locked TLB entries for main kernel image.
Remapping the kernel... done.
OF stdout device is: /virtual-devices@100/console@1
PROM: Built device tree with 46376 bytes of memory.
MDESC: Size is 14704 bytes.
PLATFORM: banner-name [SPARC T5-2]
PLATFORM: name [ORCL,SPARC-T5-2]
PLATFORM: hostid [84f90862]
PLATFORM: serial# [0099f9b8]
PLATFORM: stick-frequency [3b9aca00]
PLATFORM: mac-address [144ff90862]
PLATFORM: watchdog-resolution [1000 ms]
PLATFORM: watchdog-max-timeout [31536000000 ms]
PLATFORM: max-cpus [1024]
Top of RAM: 0x22ffee000, Total RAM: 0x1ffa62000
Memory hole size: 773MB
Allocated 24576 bytes for kernel page tables.
Zone ranges:
  Normal   [mem 0x0000000030400000-0x000000022ffedfff]
Movable zone start for each node
Early memory node ranges
  node   0: [mem 0x0000000030400000-0x000000006fefffff]
  node   0: [mem 0x000000006ff80000-0x000000006ff8bfff]
  node   0: [mem 0x0000000070000000-0x000000022ff3ffff]
  node   0: [mem 0x000000022ffc0000-0x000000022ffcdfff]
  node   0: [mem 0x000000022ffe6000-0x000000022ffedfff]
Initmem setup node 0 [mem 0x0000000030400000-0x000000022ffedfff]
Booting Linux...
CPU CAPS: [flush,stbar,swap,muldiv,v9,blkinit,n2,mul32]
CPU CAPS: [div32,v8plus,popc,vis,vis2,ASIBlkInit,fmaf,vis3]
CPU CAPS: [hpc,ima,pause,cbcond,aes,des,kasumi,camellia]
CPU CAPS: [md5,sha1,sha256,sha512,mpmul,montmul,montsqr,crc32c]
PERCPU: Embedded 10 pages/cpu @fff800021e000000 s38080 r8192 d35648 u131072
SUN4V: Mondo queue sizes [cpu(131072) dev(16384) r(8192) nr(256)]
Built 1 zonelists in Node order, mobility grouping on.  Total pages: 1038645
Policy zone: Normal
Kernel command line: BOOT_IMAGE=/vmlinuz-4.1.12-94.3.4.el6uek.sparc64 root=/dev/mapper/VolGroup-lv_root ro
log_buf_len individual max cpu contribution: 4096 bytes
log_buf_len total cpu_extra contributions: 4190208 bytes
log_buf_len min size: 1048576 bytes
log_buf_len: 8388608 bytes
early log buf free: 1038696(99%)
PID hash table entries: 4096 (order: 2, 32768 bytes)
Sorting __ex_table...
Memory: 8092632K/8382856K available (6226K kernel code, 2345K rwdata, 2856K rodata, 624K init, 2489K bss, 290224K reserved, 0K cma-reserved)
Hierarchical RCU implementation.
        RCU restricting CPUs from NR_CPUS=2048 to nr_cpu_ids=1024.
RCU: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1024
NR_IRQS:2048 nr_irqs:2048 1
SUN4V: Using IRQ API major 3, cookie only virqs enabled
clocksource stick: mask: 0xffffffffffffffff max_cycles: 0x1cd42e4dffb, max_idle_ns: 881590591483 ns
Console: colour dummy device 80x25
bootconsole [earlyprom0] disabled
PROMLIB: Sun IEEE Boot Prom 'OBP 4.38.3 2015/11/11 10:38'
PROMLIB: Root node compatible: sun4v
Linux version 4.1.12-94.3.4.el6uek.sparc64 (mockbuild@sparc-ol6-builder-04.us.oracle.com) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-16.0.6) (GCC) ) #1 SMP Mon May 15 13:52:26 PDT 2017
bootconsole [earlyprom0] enabled
ARCH: SUN4V
Ethernet address: 00:14:4f:f9:08:62
Kernel: Using 4 locked TLB entries for main kernel image.
Remapping the kernel... done.
OF stdout device is: /virtual-devices@100/console@1
PROM: Built device tree with 46376 bytes of memory.
MDESC: Size is 14704 bytes.
PLATFORM: banner-name [SPARC T5-2]
PLATFORM: name [ORCL,SPARC-T5-2]
PLATFORM: hostid [84f99862]
PLATFORM: serial# [099f9b8]
Memory hole size: 773MB
Allocated 24576 bytes for kernel page tables.
Zone ranges:
Early memory node ranges
Booting Linux...
PERCPU: Embedded 10 pages/cpu @fff800021e000000 s38080 r8192 d35648 u131072
SUN4V: Mondo queue sizes [cpu(131072) dev(16384) r(8192) nr(256)]
Built 1 zonelists in Node order, mobility grouping on.  Total pages: 1038645
Policy zone: Normal
Kernel command line: BOOT_IMAGE=/vmlinuz-4.1.12-94.3.4.el6uek.sparc64 root=/dev/mapper/VolGroup-lv_root ro
log_buf_len min size: 1048576 bytes
log_buf_len: 8388608 bytes
early log buf free: 1038696(99%)
PID hash table entries: 4096 (order: 2, 32768 bytes)
Memory: 8092632K/8382856K available (6226K kernel code, 2345K rwdata, 2856K rodata, 624K init, 2489K bss, 290224K reserved, 0K cma-reserved)
Hierarchical RCU implementation.
 SUN4V: Using IRQ API major 3, cookie only virqs enabled
Brought up 8 CPUs
devtmpfs: initialized
Performance events:
Testing NMI watchdog ... OK.
Supported PMU type is 'niagara5'
VIO: Adding device channel-devices (tx_ino = ffffffffffffffff, rx_ino = ffffffffffffffff)
VIO: Adding device vnet-port-0-0 (tx_ino = 0, rx_ino = 1)
VIO: Adding device vnet-port-0-1 (tx_ino = 2, rx_ino = 3)
VIO: Adding device vnet-port-0-2 (tx_ino = 4, rx_ino = 5)
VIO: Adding device vdc-port-0-0 (tx_ino = 6, rx_ino = 7)
VIO: Adding device vdc-port-1-0 (tx_ino = 8, rx_ino = 9)
SCSI subsystem initialized
TCP established hash table entries: 65536 (order: 6, 524288 bytes)
TCP bind hash table entries: 65536 (order: 7, 1048576 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
NET: Registered protocol family 1
Trying to unpack rootfs image as initramfs...
Freeing initrd memory: 29416K (fff8000071000000 - fff8000072cba000)
futex hash table entries: 262144 (order: 11, 16777216 bytes)
console [ttyHV0] enabled
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
NET: Registered protocol family 17
rtc-sun4v rtc-sun4v: setting system clock to 2017-06-07 18:15:07 UTC (1496859307)
device-mapper: ioctl: 4.31.0-ioctl (2015-3-12) initialised: dm-devel@redhat.com
sunvdc: vdiska: 157286400 sectors (76800 MB) protocol 1.3
 vdiska: vdiska1 vdiska2 vdiska3
sunvdc: Virtual CDROM vdiskb
sunvdc: vdiskb: 1413328 sectors (690 MB) protocol 1.3
 vdiskb: vdiskb1
sunvnet.c:v1.0 (June 25, 2007)
vnet_port vnet-port-0-0 eth0: Sun LDOM vnet 00:14:4f:fb:b9:68
sunvnet: eth0: PORT ( remote-mac 00:14:4f:f8:53:33 switch-port )
sunvnet: eth0: PORT ( remote-mac 00:14:4f:f9:68:7c )
sunvnet: eth0: PORT ( remote-mac 00:14:4f:fa:75:19 )
udev: starting version 147
dracut: Starting plymouth daemon
aes_sparc64: Using sparc64 aes opcodes optimized AES implementation
sha256_sparc64: Using sparc64 sha256 opcode optimized SHA-256/SHA-224 implementation
dracut: Scanning devices vdiska3  for LVM volume groups
random: lvm urandom read with 6 bits of entropy available
dracut: Found volume group "VolGroup" using metadata type lvm2
dracut: 2 logical volume(s) in volume group "VolGroup" now active
EXT4-fs (dm-0): mounted filesystem with ordered data mode. Opts: (null)
dracut: Mounted root filesystem /dev/mapper/VolGroup-lv_root
dracut: Loading SELinux policy
audit: type=1404 audit(1496859308.368:2): enforcing=1 old_enforcing=0 auid=4294967295 ses=4294967295
SELinux:  Permission execmod in class dir not defined in policy.
SELinux:  Permission execmod in class lnk_file not defined in policy.
SELinux:  Permission attach_queue in class tun_socket not defined in policy.
SELinux:  Class binder not defined in policy.
SELinux: the above unknown classes and permissions will be allowed
audit: type=1403 audit(1496859308.740:3): policy loaded auid=4294967295 ses=4294967295
EXT4-fs (dm-0): re-mounted. Opts: (null)
kjournald starting.  Commit interval 5 seconds
EXT3-fs (vdiska1): using internal journal
EXT3-fs (vdiska1): mounted filesystem with ordered data mode
Adding 7864312k swap on /dev/mapper/VolGroup-lv_swap.  Priority:-1 extents:1 across:7864312k FS
NET: Registered protocol family 10
ip6_tables: (C) 2000-2006 Netfilter Core Team
nf_conntrack version 0.5.0 (65536 buckets, 262144 max)
ip_tables: (C) 2000-2006 Netfilter Core Team
audit: type=1305 audit(1496859318.384:4): audit_pid=988 old=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:auditd_t:s0 res=1
vldc.c:v1.0

Oracle Linux Server release 6.7
Kernel 4.1.12-94.3.4.el6uek.sparc64 on a sparc64

localhost.localdomain login:

Para terminar de configurar, lo basico, como ser  el nombre del host, la ip , netmask , consultar el documento Configuracion Basica de Oracle Linux, Post instalación.

*********** LISTO, tenemos instalado un Oracle Linux sobre SPARC T5  ******* 

Luego desde el PDOM, si quiero conectarme hago
root@t5-2 # telnet 0 5001
Trying 0.0.0.0...
Connected to 0.
Escape character is '^]'.

Connecting to console "dorclx01" in group "dorclx01" ....
Press ~? for control options ..

{0} ok


NOTA: Esta instalacion la realizamos con mi colega Nicolas Morono @nicomorono

lunes, 5 de junio de 2017

Error para levantar procesos de OVO


El error aparece al intentar uno de los procesos de OVO
A continuacion se muestra el error que aparece en el messages, y debajo, los comandos aplicados y la solucion final

Errores del agente de monitoreo
 HP OpenView Operations  opcacta   (Action Agent)  counter for critical events exceeded limit (counter value = 1) (OpC30-526)
ERR: Thu Sep  5 22:50:03 2013: opcacta (19419/1): [uxproc.c:406]: semget(2) failed; cannot create semaphore
No space left on device (OpC20-415)
ERR: Thu Sep  5 22:50:03 2013: opcacta (19419/1): [uxacta.c:468]: counter for critical events exceeded limit (counter value = 1) (OpC30-526)
ERR: Thu Sep  5 22:50:08 2013: opcacta (20229/1): [uxproc.c:406]: semget(2) failed; cannot create semaphore
No space left on device (OpC20-415)
ERR: Thu Sep  5 22:50:08 2013: opcacta (20229/1): [uxacta.c:468]: counter for critical events exceeded limit (counter value = 1) (OpC30-526)
WRN: Thu Sep  5 22:50:38 2013: opcmona (19417/1): [genmona.c:5020]: Can't execute script for monitor OS-SOL-inetdproc. (OpC30-606)
semget(2) failed; cannot create semaphore

Procesos que no puede levantar.
# /opt/OV/bin/ovc
ovcd        OV Control                          CORE         (7047)   Running
ovbbccb     OV Communication Broker             CORE         (7048)   Running
ovconfd     OV Config and Deploy                COREXT       (16051)  Running
coda        OV Performance Core                 COREXT       (16119)  Running
opcle       OVO Logfile Encapsulator            AGENT,EA     (16120)  Running
opcmona     OVO Monitor Agent                   AGENT,EA     (16121)  Running
opcmsga     OVO Message Agent                   AGENT,EA     (16122)  Running
opcacta     OVO Action Agent                    AGENT,EA              Aborted
opcmsgi     OVO Message Interceptor             AGENT,EA     (16127)  Running
#

Hice los siguiente pasos, levanto todo ,lo controlamos y al rato vuelve a dar aborted
/opt/OV/bin/OpC/opcagt -kill
rm /var/opt/OV/tmp/OpC/*
/opt/OV/bin/OpC/opcagt -start
El equipo esta funcionando y sin errores en el messages.

Pero la solucion es borrar los semaforos que esten generando problemas, es decir que hayan quedado colgados.
Los veo con
ipcs -a
y los borro con
ipcrm -m


viernes, 2 de junio de 2017

Procedimiento para cambio de horario



En Argentina, fue normal años atras, que para "aprovechar mas la  luz del sol" se adelantara la hora.

Los pasos que vine haciendo son los siguientes :

Para todo los servidores que tengan como TIMEZONE America/Buenos aires
No es necesario bootear los equipos ni los containers.

Básicamente corremos un script que modifica y compila el nuevo uso horario. Trabaja con un archivo que se llama newbsas que tiene el siguiente formato.
Zone    America/Buenos_Aires    -3:00   -       ART     2016    Oct     18      00:00
                                -2:00   -       ART

Eso le indica que el dia Domingo 18 de octubre a las 00.00 hs cambie el timezone por -2 , es decir, se adelanta 1 hora a la actual, que es gmt +3 .

Abajo estan los nombres de los scripts y su funcion, para poder verlos clickear sobre ellos
el zscp ( que es para copiar de la global a los containers )
el chequear.fechas.ksh  ( hace lo que su nombre indica )
el newbsas ( que contiene el formato que describi mas arriba en este documento )
el compila.TZ.ksh  ( este script compila con el comando zic, lo que contiene el archivo newbsas, lo hace en la zona global y si tiene containers lo hace en cada uno de ellos )
el Orden de ejecucion de estos 5 pasos

Los equipos tienen TZ=GMT+3 ó alguno TZ=Argentina+3 , en estos casos hay que cambiar el TZ a GMT+2 y TZ=Argentina+2 y bootear los equipos.-

Los equipos que tenemos que bootear, los podemos bajar 1 hora antes y levantarlos despues de las 24.

Este procedimiento tambien funciona para Solaris 10 x86 .

Aclaracion. Si no se bootea el equipo, hay que bajar y subir el demonio del cron Porque sino queda con el horario viejo.

Orden de ejecucion


Este es el orden de ejecucion para el cambio de horario

En los Solaris tanto Sparc como x86 que tengan en su /etc/TIMEZONE  America/BuenosAires

En la zona global del equipo, lo que se debe hacer es 
1) Crear el directorio  /usr/scripts/TT
  mkdir –p /usr/scripts/TT
2) chequear las fechas y hora actuales
3)  Crear el archivo newbsas
 vi /var/tmp/newbsas
4) Copiar el archivo newbsas en todas las zonas 
5) Compilar el nuevo Time zone
usar el Compila TZ
ejecutandolo asi  /usr/scripts/TT/./compila.TZ.ksh


***** Este articulo viene del documento principal de procedimiento de cambio de horario
***** llamado  Procedimiento de cambio de horario

Compila TimeZone



Este script debe crearse en /usr/scripts/TT/
Copiar y Pegar

DESDE Aqui -----
#Script Parte 1
BASE=/usr/scripts/TT
SALIDA=$BASE/fechas.zonas.out
DATE=`date '+%m%d%H%M'`
echo " Script Parte 1 relevando los dates del equipo ............" >>$SALIDA.$DATE
zoneadm list -cv|grep zona|awk '{ print $2 }' >$BASE/LISTA
echo "          zona global         " >>$SALIDA.$DATE
echo " date original: ` date`  " >>$SALIDA.$DATE
echo " date universal: ` date -u`" >>$SALIDA.$DATE
echo " TIMEZONE : ` cat /etc/TIMEZONE|grep TZ=` " >>$SALIDA.$DATE
echo " Estado demonio ntp : ` svcs -a |grep ntp` " >>$SALIDA.$DATE
echo "**************************************************" >>$SALIDA.$DATE

for  Z in `cat $BASE/LISTA`
do
echo "             $Z               ">>$SALIDA.$DATE
echo " date original: `zlogin $Z date`  " >>$SALIDA.$DATE
echo " date universal: `zlogin $Z date -u`" >>$SALIDA.$DATE
echo " TIMEZONE : `zlogin $Z cat /etc/TIMEZONE|grep TZ=` " >>$SALIDA.$DATE
echo " Estado demonio ntp : `zlogin $Z  svcs -a |grep ntp` " >>$SALIDA.$DATE
echo "**************************************************" >>$SALIDA.$DATE
done
#Script Parte 2
echo " Script Parte 2 Actualizando fechas............." >>$SALIDA.$DATE
echo " Actualizando TIMEZONE en  zona global ......................" >>$SALIDA.$DATE
echo " resguardando  el archivo /var/tmp/newbsas como  /var/tmp/newbsas.old" >>$SALIDA.$DATE
 cp -p  /var/tmp/newbsas /var/tmp/newbsas.old
cp /usr/scripts/TT/newbsas /var/tmp >>$SALIDA.$DATE
echo "  Observando salida del /var/tmp ...` ls -ltr /var/tmp`" >>$SALIDA.$DATE
echo " Compilando Zona Global con  la nueva configuracion" >>$SALIDA.$DATE
/usr/sbin/zic /var/tmp/newbsas
echo " Observando archivo generado por la compilacion :  ` ls -ltr /usr/share/lib/zoneinfo/America|grep Buen `" >>$SALIDA.$DATE

for  Z in `cat $BASE/LISTA`
do
echo "             $Z               ">>$SALIDA.$DATE
echo " Actualizando TIMEZONE en $Z ......... ......................" >>$SALIDA.$DATE
echo " resguardando  el archivo /var/tmp/newbsas como  /var/tmp/newbsas.old" >>$SALIDA.$DATE
zlogin $Z cp /var/tmp/newbsas /var/tmp/newbsas.old
/usr/scripts/TT/zcp /usr/scripts/TT/newbsas $Z:/var/tmp >>$SALIDA.$DATE
echo "  Observando salida del /var/tmp ...`zlogin $Z ls -ltr /var/tmp`" >>$SALIDA.$DATE
echo " Compilando $Z con  la nueva configuracion" >>$SALIDA.$DATE
zlogin $Z /usr/sbin/zic /var/tmp/newbsas
echo " Observando archivo generado por la compilacion en $Z :  `zlogin $Z ls -ltr /usr/share/lib/zoneinfo/America|grep Buen `" >>$SALIDA.$DATE
echo " date original: `zlogin $Z date`  " >>$SALIDA.$DATE
echo " date universal: `zlogin $Z date -u`" >>$SALIDA.$DATE
echo " TIMEZONE : `zlogin $Z cat /etc/TIMEZONE|grep TZ=` " >>$SALIDA.$DATE
echo "**************************************************" >>$SALIDA.$DATE
done
#Script Parte 3
echo " Script Parte 3 relevando  fechas post actualizacion TIMEZONE ............" >>$SALIDA.$DATE
echo "          zona global         " >>$SALIDA.$DATE
echo " date original: ` date`  " >>$SALIDA.$DATE
echo " date universal: ` date -u`" >>$SALIDA.$DATE
echo " TIMEZONE : ` cat /etc/TIMEZONE|grep TZ=` " >>$SALIDA.$DATE
echo " Estado demonio ntp : ` svcs -a |grep ntp` " >>$SALIDA.$DATE
echo "**************************************************" >>$SALIDA.$DATE

for  Z in `cat $BASE/LISTA`
do
echo "             $Z               ">>$SALIDA.$DATE
echo " date original: `zlogin $Z date`  " >>$SALIDA.$DATE
echo " date universal: `zlogin $Z date -u`" >>$SALIDA.$DATE
echo " TIMEZONE : `zlogin $Z cat /etc/TIMEZONE|grep TZ=` " >>$SALIDA.$DATE
echo " Estado demonio ntp : `zlogin $Z  svcs -a |grep ntp` " >>$SALIDA.$DATE
echo "**************************************************" >>$SALIDA.$DATE
done
*****Hasta Aqui

****** Este articulo viene del documento principal de procedimiento de cambio de horario

Formato de archivo newbsas



Este es el formato que debe tener el archivo newbsas, indica que :
El dia Domingo 18 de Octubre a las 00.00 hs pasamos a estar en GMT -2 , es decir 1 hora adelantada a la hora habitual ( Argetina es GMT +3 )
Copiar y pegar en un archivo nuevo, los datos que estan entre lineas ------ , respetando espacios  en blanco y tabuladores

---------------------------------------------------------------------------------------------------------------------
Zone    America/Buenos_Aires    -3:00   -       ART     2009    Oct     18      00:00
                                -2:00   -       ART
---------------------------------------------------------------------------------------------------------------------





****** Este articulo viene del documento principal de cambio horario 
***** llamado Procedimiento de cambio horario

Chequea Fechas


El script descripto aqui abajo, chequea la fecha y hora de la zona global y de sus zonas no globales

#Script Parte 1
BASE=/usr/scripts/TT
SALIDA=$BASE/chequeando_fechas.zonas.out
DATE=`date '+%m%d%H%M'`
echo " Chequeando fechas del equipo ............" >>$SALIDA.$DATE
zoneadm list -cv|grep zona|awk '{ print $2 }' >$BASE/LISTA
echo "          zona global         " >>$SALIDA.$DATE
echo " date original: ` date`  " >>$SALIDA.$DATE
echo " date universal: ` date -u`" >>$SALIDA.$DATE
echo " TIMEZONE : ` cat /etc/TIMEZONE|grep TZ=` " >>$SALIDA.$DATE
echo " Estado demonio ntp : `  svcs -a |grep ntp` " >>$SALIDA.$DATE
echo "**************************************************" >>$SALIDA.$DATE

for  Z in `cat $BASE/LISTA`
do
echo "             $Z               ">>$SALIDA.$DATE
echo " date original: `zlogin $Z date`  " >>$SALIDA.$DATE
echo " date universal: `zlogin $Z date -u`" >>$SALIDA.$DATE
echo " TIMEZONE : `zlogin $Z cat /etc/TIMEZONE|grep TZ=` " >>$SALIDA.$DATE
echo " Estado demonio ntp : `zlogin $Z  svcs -a |grep ntp` " >>$SALIDA.$DATE
echo "**************************************************" >>$SALIDA.$DATE
done

FIN del script

***** Este articulo viene del documento principal del cambio de horario

Zscp o procedimiento manual


El script zscp, no es de mi autoria, es de un genio llamado Brendan Gregg, y lo que hace es copiar archivos de  una zona global, a todos sus containers. Pero como no le pedi autorizacion para publicar su  script, lo que voy a hacer es describir el procedimiento manual que debemos hacer ( si gustan , lo pueden googlear ) , para replicar el archivo newbsas en todas las zonas.

Debo copiar el archivo newbsas a cada zona , para poder luego compilar el nuevo huso horario.
la forma manual seria asi ;
suponiendo que tenemos un total de 3 zonas no globales
Parados desde la zona global ejecutamos:
cp /usr/scripts/TT/newbsas /export/zona1/root/var/tmp/
cp /usr/scripts/TT/newbsas /export/zona2/root/var/tmp/
cp /usr/scripts/TT/newbsas /export/zona3/root/var/tmp/

**** Este articulo viene del documento principal de cambio horario
***  llamado Procedimiento para cambio de horario

miércoles, 31 de mayo de 2017

Desinstalar y upgradear el agente de monitoreo de HP, OVO


Para poder hacer un upgrade del agente de monitoreo OVO, se necesita tener solo una instancia corriendo a la vez,asi que primero, necesitamos desinstalar los siguientes paquetes , en el orden descripto a continuacion :
pkgrm HPOvEaAgt
 pkgrm HPOvPetc
pkgrm HPOvPCO
pkgrm HPOvPacc
pkgrm HPOvPerlA
pkgrm HPOvSecCC
pkgrm HPOvConf                        
pkgrm HPOvDepl
pkgrm HPOvCtrl
pkgrm HPOvBbc
pkgrm HPOvSecCo                       
pkgrm HPmwa
pkgrm HParm
pkgrm  HPOvPacc
pkgrm HPOvXpl

Luego , podemos ejecutar la instalacion dela siguiente manera :
./oasetup.sh -install -minprecheck  -management_server  -certificate_server –f