# rm-rf.es | Administración de sistemas

Bitácora personal de un SysAdmin Gnu/Linux, Windows, BSD...

Vmail: interfaz en Vim para Gmail

Vmail Vim Gmail
Vmail Vim Gmail

Seguimos con otra entrada relacionada con Vim, eso sí, esta es realmente curiosa. Ayer, leyendo el twitter de nixCraft descubrí Vmail, una interfaz en Vim para Gmail.

Vmail ha sido desarrollado a partir de la versión 7.3 de Vim y usando Ruby 1.9.2. En el sitio web de Vmail tenéis todos los detalles y documentación de como usarlo. Para su instalación debemos disponer de las dependencias Ruby 1.9.0 o superior con soporte SSL, libsqlite3-dev, sqlite3 y lynx text-only-mode web browser si queremos ver las partes HTML de los correos, todo ello instalable a través de gestores de paquetes, yum en RHEL y derivados y apt en Debian, etc.

Instalación (con ruby gem):

# gem install vmail

Para ejecutarlo:

# vmail

Al igual que vim, cuenta con un fichero de configuración por usuario (.vmailrc), os recomiendo leer la documentación para sacar todo el partido a la aplicación ya que es muy completa. Por cierto, Vmail usa TLS (Transport Layer Security) para la autenticación IMAP y SMTP.

SLAMD Distributed Load Generation Engine

slamd logoPese a que Sun Microsystems ya no mantiene un desarrollo activo de la aplicación, SLAMD (SLAMD Distributed Load Generation Engine) sigue siendo una excelente opción para realizar todo tipo de pruebas de carga, rendimiento y stress a nuestras redes, servidores y aplicaciones.

SLAMD nos ofrece a apenas un click de distancia decenas de pruebas de stress, las cuales podemos personalizar según nuestros requerimientos, volumen de carga/stress a aplicar, etc. Por ejemplo tenemos distintos trabajos para hacer testing a LDAP (importar, exportar, búsquedas asíncronas, generadores de carga con búsquedas múltiples…), también HTTP (en este caso mucho más potente JMeter), pruebas SMTP, IMAP y POP3, scripting, SQL, Throughput de red, pruebas TCP, stress de CPU, etc. Una vez realizados los tests recibimos informes con una gran cantidad de información relevante que podemos exportar en HTML, PDF o texto plano, incluye cifras, máximos, mínimos y medias, gráficos…

informe  slamd

La forma más sencilla de hacerlo funcional no requiere instalación, podemos bajar todo el aplicativo, cliente, servidor y Tomcat en un único paquete, descomprimirlo y arrancar Tomcat:

$ wget http://files.unboundid.com/slamd/slamd-2.0.1.zip
$ unzip slamd-2.0.1.zip
$ cd slamd/bin/
$ ./catalina.sh  start

Accedemos a la aplicación a través de http://hostname:8080. La primera vez que accedemos tenemos que inicializar la base de datos interna, una vez realizado ya podemos comenzar las pruebas que queramos. Si necesitamos generar la carga distribuida desde varios servidores, únicamente tenemos que habilitar en ellos el cliente. Lo descomprimimos, modificamos el fichero de configuración indicando el servidor al que se conectará  y arrancamos:

$ ls -l slamd_client*
-rw-r--r-- 1 alex alex 5294716 2010-03-20 17:58 slamd_client-2.0.1.zip
$ unzip slamd_client-2.0.1.zip
$ ls -l slamd_client/slamd_client.conf
-rw-r--r-- 1 alex alex 1259 2010-03-20 17:58 slamd_client/slamd_client.conf
$ slamd_client/start_client.sh

Para poder ejecutar el cliente de forma independiente al servidor debemos tener instalado JAVA en el equipo. Os recomiendo de todas formas leer las guías de QuickStart (OpenDocument  |  PDF ) y la de Herramientas (OpenDocument  |  PDF ) para sacarle un mayor partido a la aplicación.

grafico slamd

Cómo ver el estado, modelo y número de serie de discos duros en hpacucli

En esta entrada vamos a ver como ver el estado, modelo (P/N), número de serie y características de cada uno de los discos físicos conectados a la controladora de un servidor HP Proliant. Lo vamos a hacer mediante la utilidad de HP hpacucli, de la cual ya hablé en otras ocasiones: hpacucli: gestión de RAID Array en servidores HP desde Linux.

En mi caso además de por la utilidad evidente de los datos que nos facilita es útil para los casos en el que hay que contactar con soporte de HP y necesitan el Part Number o número de serie del disco físico.

Lo primero que hacemos es acceder a hpacucli desde la shell ssh:

# hpacucli 
HP Array Configuration Utility CLI 8.40-4.0
Detecting Controllers...Done.
Type "help" for a list of supported commands.
Type "exit" to close the console.

=>

Tenemos que averiguar la controladora a la cual están conectados los discos, la mayoría de veces es el slot 0 pero conviene revisarlo:

=> controller all show    

Smart Array P410i in Slot 0 (Embedded)    (sn: XXXXXX)

Ahora ya podemos visualizar los datos de todos los discos o de cada uno en concreto. En este caso ha sido necesario para averiguar el nº de serie y P/N de un disco averiado:

=> controller slot=0 pd all show detail

Smart Array P410i in Slot 0 (Embedded)

   array A (Failed)

      physicaldrive 1I:1:1
         Port: 1I
         Box: 1
         Bay: 1
         Status: OK
         Drive Type: Data Drive
         Interface Type: SAS
         Size: 72 GB
         Rotational Speed: 15000
         Firmware Revision: HPDC
         Serial Number: XXXXXX
         Model: HP      XXXXXX
         PHY Count: 2
         PHY Transfer Rate: 6.0GBPS, Unknown
      physicaldrive 1I:1:2
         Port: 1I
         Box: 1
         Bay: 2
         Status: Failed
         Drive Type: Data Drive
         Interface Type: SAS
         Size: 72 GB
         Rotational Speed: 15000
         Firmware Revision: HPD3
         Serial Number: XXXXXX
         Model: HP      XXXXXX
         PHY Count: 2
         PHY Transfer Rate: 6.0GBPS, Unknown

Optimización de un sitio web con Firebug

firebug

Probablemente no sea el más indicado para hablar sobre esta extensión de Firefox ya que apenas llevo unos días utilizándola, pero me ha dejado tan impresionado que por lo menos intentaré dar unas pinceladas de todas las posibilidades que nos ofrece.

Firebug es una herramienta imprescindible para desarrolladores web, diseñadores y webmasters. En pocas palabras, permite depurar, optimizar y eliminar fallos de la programación y estructuración de una página web y todos los elementos que la componen (javascript, html, css, imágenes…). Todo ello gracias a detallados informes, sugerencias, visores de código, etc.

Las características más importantes que he encontrado en este poco tiempo han sido:

  • Edición a tiempo real del código de la página web:
    Podemos modificar directamente desde el navegador el código HTML del sitio web, el CSS o JavaScript sin tener que tocar el código original. Ideal para probar cambios sin alterar ni una línea de código de nuestra web.
  • Analizador de rendimiento (Page Speed):
    La sección a la que más partido he sacado, muestra un informe exhaustivo de la carga de una página web, entre otras cosas podemos ver (en otros post ya hablaré sobre como maximizar la optimización de cada punto):

    • Nivel de optimización de caché a nivel de navegador (Expiración de cabeceras, etc).
    • Peticiones DNS externa (llamadas a objetos externos a nuestro sitio web)
    • Eficiencia de CSS, JavaScript, HTML, etc (No solo te indica en que puntos mejorar, sino que te ofrece la descarga del código optimizado).
    • Niveles de compresión: Indica el % de compresión que podemos aumentar, así mismo ofrece la descarga de css, javascript y html con un nivel de compresión mejorado.
    • Optimización de imágenes: Indica el % de optimización de imagenes disponible, con la descarga a cada una de las imagenes ya optimizadas. Este punto es espectacular, reduce considerablemente el peso de las imagenes sin perder un ápice de calidad.
    • Optimización de estructura de HTML.Y muchas opciones más que todavía no he tenido la opción de descubrir…
  • Informes sobre los niveles de latencia en las peticiones web, peso de cada petición, tiempo de carga total y parcial del sitio web y sus objetos
    Informe firebug
  • Consola de errores y depuración

Esto es lo que he podido “trastear” durante este par de días con la herramienta, seguro que algunos de vosotros (programadores y desarrolladores) lleváis años trabajando con ella, así que si tenéis alguna mención especial a alguna utilidad de la misma será bienvenida.

Descarga Firebug: getfirebug.com

Firebug en acción:

HP Smart Array E200i: migración online RAID 0 a RAID 1+0

La controladora Smart Array E200i de HP, utilizada normalmente en servidores HP Proliant DL360 para discos SAS, no permite la migración de un RAID 0 a RAID 1+0 sin perdida de datos ni de disponibilidad a no ser que añadamos a la controladora el kit BBWC (battery backed cache upgrade), la cual también permite la creación de RAID 5.

Suponemos entonces que tenemos el hardware necesario y que la configuración de discos es la siguiente:

  • 1 disco en RAID 0.
  • 1 disco sin asignar.

Lo primero que tendremos que hacer es tener instalado ACU (Utilidad de Configuración de Arrays) y HP System Management. Podéis descargar ambos e instalarlos desde los CD support pack de HP o desde el sitio web. Su instalación es sencilla, en caso de RHEL o CentOS es via RPM.

Una vez instalado, arrancamos en el servidor ambos servicios:

# /usr/sbin/cpqacuxe -R
# /etc/init.d/hpsmhd restart

Bien, entrando al tema, tenemos que acceder a la interfaz web de HPSM, usando la IP o hostname de la máquina y el puerto 2381 (y via HTTPS):

https://192.168.0.222:2381/

HP System Management

 

Accedemos al ACU, Array Configuration Utility y seleccionamos la controladora:

 

hp ACU array configuration utility

 

Una vez dentro, seleccionamos el array/unidad lógica que queremos modificar, en ese caso el array SAS , si la battery backed cache está correctamente instalada y cargada debería aparecer a la derecha la opción “Expandir Array“. También veremos la unidad/disco sin asignar:

 

HP ACU RAID

 

Tras pinchar en “Expandir Array” veremos que aparece ya la posibilidad de añadir el disco sin asignar al array:

 

Expandir array acu

 

Guardamos los cambios y automáticamente veremos el % de progreso de la transformación del RAID:

Transformacion RAID ACU

 

Una vez que finalice, ya tenemos el nuevo disco asignado a la unidad lógica. Llega el momento entonces de migrar el RAID:

 

Migrar RAID HP

 

Tras pinchar ya tendremos la opción de migrar a RAID 1. Automáticamente se seleccionará el Full stripe size de 128K
 
Migrar HP RAID 1 ACU
 

Ya solo queda esperar a que termine la migración de RAID 0 a RAID 1+0. Hemos conseguido realizarlo sin parada de servicio ni perder ningún dato del anterior RAID 0.

Plugin optimizado para artículos relacionados en WordPress

Hasta el momento, los plugins más utilizados y reconocidos para mostrar artículos relacionados en las entradas de WordPress eran YARP (Yet Another Related Posts) y WordPress Related Posts.

wordpress

La gran diferencia de este nuevo plugin (Efficient Related Posts) con sus predecesores es estos procesan la lista de artículos relacionados al vuelo, es decir, cuando el usuario visita la página. Esto implica que estas consultas SQL que generan los artículos relacionados se ejecute cientos de veces y de forma innecesaria, con el consiguiente uso de CPU en el servidor y bajada de rendimiento de la velocidad del blog.

Efficient Related Posts genera los artículos aleatorios de un modo mucho más optimizado. Este listado se genera a través de la zona de administración, en el momento que publicamos el post. Tenemos la opción de seleccionar los artículos a mostrar. De este modo, logramos que estas consultas MySQL se generen una única vez y sin afectar al usuario que visita la página.

Sitio oficial del plugin: Efficient Related Posts

Regenerar clave de administrador de iLO sin saber la password

Si hemos perdido la clave del usuario Administrator en una iLO y no queremos reiniciar el sistema para cambiar la clave o generar un nuevo usuario, podemos regenerarla (sin conocer la actual) desde la línea de comandos del servidor (GNU/Linux) en cuestión.

Lo primero que necesitamos es tener instalado hponcfg (revisad este artículo para su instalación: Cambiar password de HP iLO desde Linux).

Después utilizamos el siguiente XML para solicitar una nueva clave de Administrador contra la iLO:

<RIBCL VERSION="2.0">
<LOGIN USER_LOGIN="adminname" PASSWORD="password">
<USER_INFO MODE="write">
<MOD_USER USER_LOGIN="Administrator">
<PASSWORD value="aqui_la_clave"/>
</MOD_USER>
</USER_INFO>
</LOGIN>
</RIBCL>

No es necesario especificar el usuario admin y su clave actual, eso lo dejamos tal y como está. Únicamente cambiamos el valor PASSWORD aqui_la_clave. Una vez modificado el XML lo ejecutamos contra la iLO:

# hponcfg -f resetpass.xml

Ya deberíais poder acceder a la iLO con los nuevos datos.

Consulta la reputación de una IP en cientos de listas anti-spam

Hoy os dejo un enlace de gran utilidad para consultar la reputación de una IP de un servidor de correo en listas negras anti-spam. Actualmente hace la consulta contra 219 blacklist DNSBL/RBL y nos presenta un informe indicando en cuales estamos filtrados con su respectivo enlace al sitio web de la lista.

Para acceder al sitio pinchad en la imagen.

Blacklist Email Check
Ver el perfil de Alejandro García García en LinkedIn