Buscar este blog

viernes, 9 de diciembre de 2011

Conocer paquetes que quedan por subir en un TL

Para migraciones, que terminan devolviendo TL distintos a los esperados.

#oslevel -rl 5300-08

Nos devlverá los paquetes que quedan por subir a AIX 5.3 TL 08 y cual es su versión recomendada para ese TL.

sábado, 3 de diciembre de 2011

Como recuperar desde una imagen mksysb existente (sin NIM)

Voy a poner en este post algunos trucos útiles para recuperar desde una imagen mksysb que tenemos, cuando no se consigue hacer desde NIM.

Hay veces que por H o por B no se consigue arrancar con una imagen mksysb desde NIM, o si se consigue no sirve para lo que necesitas hacer (por ejemplo arrancar en modo mantenimiento en vez de instalar). Ambas situaciones me han pasado, y en cada una de ellas he utilizado un truco distinto (aunque muy parecidos en la base).

Pongo aquí un par de trucos que se pueden utilizar en esos casos:
- Opción 1: grabar esa imagen en DVD, y arrancar desde DVD
- Opción 2: pasar esa imagen a ISO, y montar la ISO desde un VIO

viernes, 11 de noviembre de 2011

UPGRADE de SDDPCM Standar

Tomamos datos de los PVIDs de los Discos y los VGs asociados.

root@sap-s2l9:/etc# lspv

hdisk0 00cda22c58902837 rootvg active

hdisk1 00cda22c6761d1bb altinst_rootvg

hdisk2 00cda22c400a0f6c vg_EPC active

hdisk3 005d502a15040568 vg_EPC active

hdisk4 005d502af0ae2efc vg_EPC active

hdisk5 00cda22c400a2ce1 vg_EPC active

root@sap-s2l9:/etc# lsdev -Cc disk

hdisk0 Available 05-08-00-4,0 16 Bit LVD SCSI Disk Drive

hdisk1 Available 05-08-00-5,0 16 Bit LVD SCSI Disk Drive

hdisk2 Available 08-08-01 IBM MPIO FC 2105

hdisk3 Available 0A-08-01 IBM MPIO FC 2105

hdisk4 Available 0A-08-01 IBM MPIO FC 2105

hdisk5 Available 0A-08-01 IBM MPIO FC 2105

Anotamos el Mayor Number de los VGs fectados.

root@sap-s2l9:/etc# lsvg -p vg_EPC

vg_EPC:

PV_NAME PV STATE TOTAL PPs FREE PPs FREE DISTRIBUTION

hdisk2 active 136 79 12..00..13..27..27

hdisk3 active 136 72 28..00..00..17..27

hdisk4 active 136 64 28..00..00..09..27

hdisk5 active 136 60 00..00..06..27..27


root@sap-s2l9:/etc# ls -l /dev/vg_EPC

crw-rw---- 1 root system 40, 0 Aug 09 13:14 /dev/vg_EPC

Desmontamos los FS, liberando sus pocesos y hacemos hacemos varyoffvg de los VGs implicados:

lsvgfs vg_EPC |while read fs

do

fuser -kuxc $fs

umount $fs

done


Exportamos los VGs implicados.

root@sap-s2l9:/etc# exportvg vg_EPC

root@sap-s2l9:/etc# lspv

hdisk0 00cda22c58902837 rootvg active

hdisk1 00cda22c6761d1bb altinst_rootvg

hdisk2 00cda22c400a0f6c None

hdisk3 005d502a15040568 None

hdisk4 005d502af0ae2efc None

hdisk5 00cda22c400a2ce1 None

Paramos servicios de SSDDPCM

root@sap-s2l9:/etc# stopsrc -s pcmsrv

0513-044 The pcmsrv Subsystem was requested to stop.

Eliminamos dispositivos de la ODM vinculados al driver SDDPCM

root@sap-s2l9:/etc# rmdev -dl fcs0 -R

sfwcomm0 deleted

fscsi0 deleted

fcnet0 deleted

fcs0 deleted

root@sap-s2l9:/etc# rmdev -dl fcs1 -R

hdisk2 deleted

hdisk3 deleted

hdisk4 deleted

hdisk5 deleted

sfwcomm1 deleted

fscsi1 deleted

fcnet1 deleted

fcs1 deleted


Con Smitty Install desistanlamos sddpcm antiguo.

root@sap-s2l9:/tmp/sddpcm61# lslpp -l |grep SDD

Instalamos sddpcm nuevo, con Smitty Install

root@sap-s2l9:/tmp/sddpcm61# lslpp -l |grep SDD

devices.sddpcm.61.rte 2.5.0.0 COMMITTED IBM SDD PCM for AIX V61

devices.sddpcm.61.rte 2.5.0.0 COMMITTED IBM SDD PCM for AIX V61

Reiniciamos máquina.

Importamos de nuevo los VGs implicados.

root@sap-s2l9:/# lspv

hdisk0 00cda22c58902837 rootvg active

hdisk1 00cda22c6761d1bb altinst_rootvg

hdisk2 00cda22c400a0f6c None

hdisk3 005d502a15040568 None

hdisk4 005d502af0ae2efc None

hdisk5 00cda22c400a2ce1 None

root@sap-s2l9:/# importvg -V 40 -y vg_EPC hdisk2

vg_EPC

root@sap-s2l9:/# lspv

hdisk0 00cda22c58902837 rootvg active

hdisk1 00cda22c6761d1bb altinst_rootvg

hdisk2 00cda22c400a0f6c vg_EPC active

hdisk3 005d502a15040568 vg_EPC active

hdisk4 005d502af0ae2efc vg_EPC active

hdisk5 00cda22c400a2ce1 vg_EPC active

Montamos los FS del sistema

root@sap-s2l9:/# mount all

mount: 0506-324 Cannot mount /dev/hd1 on /home: The requested resource is busy.

mount: 0506-324 Cannot mount /proc on /proc: The requested resource is busy.

mount: 0506-324 Cannot mount /dev/hd10opt on /opt: The requested resource is busy.

mount: 0506-324 Cannot mount /dev/fslv00 on /temporal: The requested resource is busy.

mount: 0506-324 Cannot mount /dev/fslv11 on /opt/tivoli/cit/cache_data/__username: The requested resource is busy.

mount: 0506-324 Cannot mount /dev/hd11admin on /admin: The requested resource is busy.

mount: 0506-324 Cannot mount /dev/livedump on /var/adm/ras/livedump: The requested resource is busy.

root@sap-s2l9:/# df -g

Filesystem GB blocks Free %Used Iused %Iused Mounted on

/dev/hd4 0.25 0.16 35% 2550 7% /

/dev/hd2 5.12 2.19 58% 43324 8% /usr

/dev/hd9var 0.50 0.37 27% 971 2% /var

/dev/hd3 2.12 2.10 2% 178 1% /tmp

/dev/hd1 0.12 0.07 47% 306 2% /home

/proc - - - - - /proc

/dev/hd10opt 0.50 0.38 25% 2363 3% /opt

/dev/fslv00 9.00 5.34 41% 2049 1% /temporal

/dev/fslv11 0.50 0.50 1% 4 1% /opt/tivoli/cit/cache_data/__username

/dev/hd11admin 0.12 0.12 1% 5 1% /admin

/dev/livedump 0.25 0.25 1% 4 1% /var/adm/ras/livedump

/dev/fslv01 3.00 2.05 32% 1919 1% /sapmnt/EPC

/dev/fslv02 9.00 3.79 58% 85647 9% /usr/sap/EPC

/dev/fslv03 1.00 0.27 74% 343 1% /db2

/dev/fslv04 5.00 4.60 8% 22 1% /db2/EPC/sapdata1

/dev/fslv05 5.00 4.60 8% 22 1% /db2/EPC/sapdata2

/dev/fslv06 5.00 4.60 8% 22 1% /db2/EPC/sapdata3

/dev/fslv07 1.00 1.00 1% 13 1% /db2/EPC/saptemp1

/dev/fslv08 0.50 0.17 66% 23 1% /db2/EPC/db2dump

/dev/fslv09 1.00 0.93 7% 10 1% /db2/EPC/archive_log

/dev/fslv10 3.00 1.81 40% 26 1% /db2/EPC/log_dir

Reiniciamos maquina. No necesrioa pero recomendable.

jueves, 10 de noviembre de 2011

UPGRADE de SDDPCM en VIO SERVER

[Tomamos como punto de partida un entorno con Dual-Vios]

1-. Generamos un perfil "clon" del actual, en nuestros Vio server, en este perfil hemos de prescindir de los adaptadores de fibra.

2-. Apagamos la particion, Vio Server.

3-. Arrancamos la parcición el nuevo perfil, "clon_sddpcm_upgrade".

4-. Eliminamos los dispositivos, discos, que se presentaban por fibra.

[si estamos presentando discos desde una cabina DS8000].

# lsdev -Cc disk |grep 2105 |while read col1 col2 col3 col4
do
echo $col1
rmdev -dl $col1
done

# lsdev -Cc disk |grep 2107 |while read col1 col2 col3 col4
do
echo $col1
rmdev -dl $col1
done

5-. Paramos el servicio de SDDPCM:

#stopsrc -s pcmsrv

6-. Eliminamos el paquete de SDDPCM

7-. Instalamos el nuevo paquete SDDPCM

8-. Apagamos la partición, y arrancamos con el perfil original, Con Fibra.

NOTA: Se recomiendo un exaustivo Backup.

viernes, 2 de septiembre de 2011

Montar ISO images en AIX

There is a known problem with mounting ISO images on the AIX platform. To workaround the problem, complete the following instructions:

  1. Obtain the size of the image.

    For example:

    # ls -al
    
    total 731594
    drwxr-xr-x 2 root system 512 Aug 18 11:33 .
    drwxr-xr-x 6 root system 512 Aug 18 11:32 ..
    -rw-r--r-- 1 root system 374575104 Apr 29 02:59 fim_console_rios_aix_5.iso
  2. Identify the nearest multiple of 128 MB that will provide enough space for the image. In the above example, the image is approximately 374 MB, so use 384 MB as an image size.

    Make a logical volume of this size. Ensure that there is enough space on the physical volume. For example, hdisk0.

    # mklv -y cdlv -s n -L /dev/cdlv rootvg 384M hdisk0

    If the command fails, increase the volume size by a multiple of 128.

  3. Use thedd command to create a pseudo-device. Ensure that the partition has enough space for the pseudo-device. In the following example command, the pseudo-device is /dev/cdlv.
    # dd if=/opt/software/iso/fim_console_rios_aix_5.iso of=/dev/cdlv

    Note that this command may take a long time and will create two dd processes.

  4. Mount the device like a CD-ROM in AIX. Ensure that the mount point exists.
    # mount -v cdrfs -o ro /dev/cdlv /mnt/iso
  5. Change directory into /mnt/iso.

lunes, 20 de junio de 2011

HISTORIAL DE COMANDOS CON FECHA Y HORA

Para la shell "bash"

# export HISTTIMEFORMAT="%h/%d - %H:%M:%S "

# history

.......
519 Jun/21 - 01:27:44 ps -ef |more
520 Jun/21 - 01:28:05 history
521 Jun/21 - 01:28:17 man history
522 Jun/21 - 01:30:12 qq
523 Jun/21 - 01:30:15 EXTENDED_HISTORY=ON; history; fc -t
524 Jun/21 - 01:30:30 EXTENDED_HISTORY=ON; history; fc -t
525 Jun/21 - 01:30:33 EXTENDED_HISTORY=ON; history;
526 Jun/21 - 01:30:48 jobs
527 Jun/21 - 01:33:04 export HISTTIMEFORMAT="%h/%d - %H:%M:%S "
528 Jun/21 - 01:33:09 history
529 Jun/21 - 01:33:20 date
530 Jun/21 - 01:33:24 history
..

Para la shell "ksh"

export EXTENDED_HISTORY=ON;
# fc -t

martes, 3 de mayo de 2011

NTP cliente en AIX:

La primera parte consiste en comprobar si tenemos algún servidor ya instroducido en la lista de servidores NTP.

# cat /etc/ntp.conf

Las últimas líneas deberán aparecer como sigue:
...
broadcastclient
server nombre.del.serivdor.1 #
server nombre.del.serivdor.2 #
driftfile /etc/ntp.drift
tracefile /etc/ntp.trace
[fin de fichero]

En caso de no aparecer, o sobrar entradas editaremos el fichero y añadiremos o eliminaremos las que necesitemos, o no.

El paso siguiente es comprobar que sincronizamos correctamente con nuestro servidor NTP:

# ntpdate
ó
# ntpdate

Si nos debuelve: "no server suitable for synchronization found", deberemos comprobar la red de nuestro sistema, DNS, etc.

En caso contrario, comprobaremos el servicio NTP, "xntpd service", con:

# lssrc -ls xntpd

debolviendo algo similar a:

Subsystem Group PID Status
xntpd tcpip 6094982 active

En caso de no estar activo el servicio, deberemos activarlo con la opcion Bouth, ambos, como sigue:

# smitty xntpd
--> Start Using the xntpd Subsystem
--> BOTH

Y volvemos a comprobar:

# lssrc -ls xntpd
Subsystem Group PID Status
xntpd tcpip 6094982 active

viernes, 15 de abril de 2011

Importancia del idioma en AIX

En todos los clientes en los que me piden poner el AIX en español (o cualquier idioma que no sea inglés) siempre les intento convencer de que no es buena idea.
Por un lado toda la documentación está en inglés, por lo que es más fácil seguir la documentación si tenemos los menús y los mensajes en inglés.
Por otro lado es mucho más fácil encontrar informatición relativa a un error si se busca en inglés.
Y por último está la cantidad de problemas que pueden surgir directamente provocados por el idioma.

A raíz de unos problemas recientes que me han relatado, causados al parecer por tener el SO en español, voy a poner otros ejemplos de posibles errores que pueden ser causados por tener el SO en otro idioma que el inglés:
- fallos en mkcd/mkdvd: mkcd fails with syntax error using language other than C or EN_US (IZ03618)
- fallos en dsh (entorno CSM): dsh may fail when LANG is set to something other than C or en_US (IZ38648)
- fallos en mkts: mkts fails with syntax error when language other than C or EN_US (IZ63579)

Los de esta lista son APARs ya solucionados, por lo que bastaría con aplicar el parche correspondiente o hacer un set previo, pero como se ve el idioma es causa directa de varios problemas.
Además suelen ser problemas complicados de diagnosticar ya que el equipo de soporte no podrá reproducir el problema en equipos con el SO en inglés.

Dejo esto aqui como futura referencia cuando haya que convencer a un cliente de que es mejor dejarle el SO en inglés.

martes, 5 de abril de 2011

NIM

Este post no pretende ser una guía completa de NIM, para eso ya hay excelentes documentos, como por ejemplo:
- NIM Nutshell, de Doug Ranz (http://rainsux.dyndns.org/NIM-Nutshell.pdf)
- NIM from A to Z, IBM Redbook (http://www.redbooks.ibm.com/abstracts/sg247296.html)

Lo que pretendo en este post es simplemente poner ideas, scripts e implementaciones que tengamos hechas en algún cliente para ayudarnos unos a otros a definir entornos NIM útiles y fáciles.

miércoles, 30 de marzo de 2011

Script para sacar datos de VGs lvs por VG y discos donde se localizan:

lsvg -o|while read vg;
do echo ==================;
echo $vg :;
echo ==================;
echo;
lsvg -l $vg|tail +3| awk '{ print $1 }'|while read lv;
do
echo ------------------------------------------------------------;
lslv -m $lv;
echo ------------------------------------------------------------;
echo ;
done;
done > ficherodesalida.txt

viernes, 11 de marzo de 2011

PLAN DE MIGRACION PARA DE HACMP 5.3.0 A PowerHA 6.1

FASE I: Actualización de Nodo 1 – AIX 6.1 y HACMP 5.5
===========================================

ACCIONES A REALIZAR:
-----------------------------

1 Paramos servicios de HACMP en el nodo de trabajo -- balanceamos servicios al otro nodo
2 Aseguramos el NO arranque automatico de los serivicios de Cluster
3 Comenzamos el proceso de actualización del SO AIX.
4 CLONADO Y ACTUALIZACION DE ROOTVG EN HDISK1
Asegurar que todos los volúmenes lógicos pertenecientes a rootvg tienen 2 copias en hdisk0 y hdisk1.
Crear segundas copias y sincronizarlas en caso de ser necesario vía mklvcopy/sysncvg.
Eliminar volúmenes lógicos de dump del hdisk1
Deshacer mirror de rootvg entre discos hdisk0 y hdisk1.
Sacar hdisk1 del rootvg, en caso de ser necesario usar migratepv para mover volúmenes lógicos a hdisk0

PLAN DE MIGRACION PARA DE VIOSERVER 1.5.2.5 A 2.2

FASE I: CLONADO DE HDISK0 EN HDISK1
========================================
Asegurar que todos los volúmenes lógicos pertenecientes a rootvg tienen 2 copias en hdisk0 y hdisk1.
Crear segundas copias y sincronizarlas en caso de ser necesario vía mklvcopy/sysncvg.
Eliminar volúmenes lógicos de dump del hdisk1
Deshacer mirror de rootvg entre discos hdisk0 y hdisk1.

Migrar LV a nuevo VG

OPCION 1:
=========

# tar -cvf /tmp/fs.tar /fs
# umount /fs
# smitty cplv


martes, 8 de marzo de 2011

AIX y Fibra

  • See the current OS levels

uname -a

oslevel -r

oslevel -q

oslevel -g

  • See adapters, drivers, and microcode.See the bottom of this section for AIX part number mappings

lsdev -Cc adapter -spci | grep fcs For each of the FCS instances

  • Micorcode

jueves, 17 de febrero de 2011

Parámetros básicos para optimización de rendimiento de AIX con Oracle


No existen unas reglas definitivas para el ajuste de rendimiento de un sistema, sino que consiste en un proceso cíclico de ajuste-análisis-ajuste-análisis-etc... De todas formas si que hay unas reglas básicas para el ajuste inicial, que en principio permiten empezar con un sistema bastante afinado. Además, entender los parámetros involucrados permite más adelante hacer los ajustes necesarios cuando se detectan problemas de rendimiento.


Los parámetros de las siguientes recomendaciones están basados en AIX 5.3 y Oracle 10.2. Ya sé que son versiones que se están dejando de instalar, pero todavía quedan muchas instalaciones con estas versiones, por lo que todavía puede ser útil en algunos casos.


Voy a una poner una lista de parámetros con sus valores, y luego explicaré que es cada parámetro, como se pueden ver y como se pueden modificar:

lunes, 14 de febrero de 2011

Migración de discos

Este documento muestra como migrar los VGs sobre nuevos discos. Este procedimiento es muy útil por ejemplo para la migración de cabinas.

Nota previa: este documento supone que todos los datos están dentro de LVM (no se utilizan raw devices) y que no existe cluster.
Si hubiese cluster hay dos posibles procedimientos (el correcto, cuando funciona bien cspoc, y la "ñapa", cuando no funciona bien cspoc).
En el caso de los raw devices hay que migrar a nivel de aplicación.

Rehacer el mirror tras un alt_disk_install

Para rehacer el mirror, lo primero es eliminar la definición del altinst_rootvg

# alt_rootvg_op -X

Y a continuación rehacemos el mirror, como se muestra en esta entrada ver

Edito: Añado la forma correcta que ha comentado Kemon :-)

Deshacer un mirror : UNMIRRORVG

Pasos para deshacer un mirror y volverlo a generar

El proceso normal para romper el mirror oen IBM AIX es:

# unmirrorvg rootvg hdisk0
Deshace el disco hdisk0 en el mirror del rootvg

# reducevg rootvg hdisk0
Elimina volumenes fisicos al vg

# rmdev -dl hdisk0
Elimina el dispositivo hdisk0

NIM

Despues de una Instalacion desde 0 de AIX

Añadimos hdisk1 al VG rootvg:

#extendvg rootvg hdisk1

Creamos mirror:

#mirrorvg '-S' rootvg hdisk0 hdisk1

Para ver como esta el orden de arranque:

#bootlist -o -m normal

Añadimos hdisk1 al orden de arranque

#bootlist -m normal hdisk0 hdisk1

Clonado de Discos # alt_disk_install

# alt_disk_install -B -C hdisk2
+----------------------------------------------------------------------+
ATTENTION: calling new module /usr/sbin/alt_disk_copy. Please see the
alt_disk_copy man pageand documentation for more details.
Executing command: {/usr/sbin/alt_disk_copy -O -B -d "hdisk2"}