Aplicación Lanza PuTTY

Lanza Putty nació hace un par de años por la necesidad de tener que agregar un usuario con permisos específicos en más de doscientos blades distribuidos en aproximadamente veinte enclosures de la marca HP (Hewlett Packard) en la compañía para la cual me desempeñaba como administrador de infraestructura. Una tarea que por supuesto no tenía ningún sentido realizar manualmente en cada uno de los blades desde la interfaz de administración. Por esta razón, decidí desarrollar una herramienta que utiliza PuTTY.exe y Plink.exe para lanzar múltiples conexiones SSH, Telnet, Rlogin o RAW; y envía uno o varios comandos a una lista de instancias remotas desde una única interfaz.

clip_image001[5]

Lanza Putty es una herramienta desarrollada en lenguaje LabVIEW y aunque fue inicialmente pensada para facilitar la administración de chasis y bahías en la infraestructura, puede ser también útil para administrar cualquier sistema basado en Linux, incluso en ocasiones la utilizo para enviar comandos ESXCLI a múltiples hipervisores.

¿Por qué en LabVIEW?

La respuesta es muy simple, necesitaba resolver el problema rápidamente y el lenguaje de desarrollo que mejor manejaba en ese entonces por su ventajas en cuanto al tiempo de desarrollo era LabVIEW. Hoy en día aunque nos apoyamos con herramienta más especializadas como PowerShell y PowerCLI para la implementación y administración de vSphere, me sigue siendo de gran utilidad esta herramienta.

FUNCIONAMIENTO

1. Descargue el Run-Time Engine de LabVIEW (versión 2011) de la página oficial o desde aquí, e instálelo en su ordenador para poder ejecutar el .exe de la aplicación.

2. Descargue la aplicación desde el repositorio compartido haciendo click Aquí.

3. Cree un archivo *.txt con la lista de FQDNs o IPs de las instancias remotas que desea administrar, y guárdelo en la carpeta \Lanza_PuTTY_APP\Data

image

image

4. Ejecute la aplicación LanzaPuTTY.exe que se encuentra en el directorio raíz y seleccione el archivo creado anteriormente.

clip_image001

5. Ingrese usuario y contraseña de las instancias remotas

clip_image001[5]

6. Seleccione el protocolo a utilizar. El valor por defecto es el protocolo SSH

7. Ingrese los comandos que desea ejecutar en las instancias remotas. Por ejemplo si utilizamos la herramienta para verificar el driver, firmware o vendor ID de varios hipervisores podemos incluir los siguientes comandos en el campo “Comandos a Ejecutar”

#ESXi Hostname
hostname
#ESXi Version
vmware -v -l
#NICs
esxcli network nic list
#Drivers y firmware NICs
esxcli network nic get -n vmnic0
#Vendor ID NICs
for a in $(esxcfg-nics -l |awk '{print $1}' |grep [0-9]) ;do vmkchdev -l |grep $a; done

8. Haga click en Archivo->Ejecutar para realizar ejecución con salida en Command Prompt (cmd), se recomienda que la primera vez que se accede a la instancia remota a través de esta herramienta se realice con este modo de
ejecución debido a que la sesión solicita una confirmación de seguridad de PuTTY, que debe ser aceptada escribiendo Y y luego presionando Enter.

clip_image001[7]

image

9. La opción Archivo->Ejecutar sin CMD, realiza una ejecución con salida en el indicador “Salida de Comandos”, que automáticamente crea un fichero con el nombre Log_Putty.txt con estas salidas de comando. Este modo de ejecución se debe utilizar si ya se ha accedido a las instancias por lo menos una vez con PuTTY.exe, de lo contrario el programa se quedara esperando la confirmación de la alerta de seguridad de PuTTY, sin mostrar ninguna notificación debido a que el programa estará ejecutándose de manera oculta. Esta opción se recomienda para generar Logs después de haber realizado acciones con el modo indicado en el paso anterior.

clip_image001[9]

10. Verifique el contenido del Log_Putty.txt ubicado en la carpeta raíz de la aplicación

image

clip_image001[11]

Anuncio publicitario