Unix Kill Process
- Tipo de tarea:
ssh_killprocess
La tarea Unix Kill Process permite terminar un proceso mediante PID (ID de Proceso), ejecutando la operación en la máquina local (modo Default) o en un servidor remoto mediante SSH.
Permite detener procesos en ejecución en sistemas Unix/Linux.
Configuración
La configuración define la modalidad de ejecución (local o remota) y los parámetros necesarios para identificar el proceso que se va a terminar. Los campos pueden ser valorizados manualmente o mediante parámetros y variables del flujo de trabajo.
Conexión al Servidor
- Modo de conexión: Define el origen de las credenciales utilizadas para la conexión. Puede asumir tres modos operativos:
- Default: El comando se ejecuta desde la máquina local.
- Manual: Permite la inserción manual de los parámetros de conexión.
- Environment: Utiliza un entorno de conexión preconfigurado. En esta modalidad se muestra un menú que enumera las conexiones disponibles en base al rol asociado al Workflow.
- Dirección IP: Dirección IP del servidor remoto.
- Hostname: Nombre del host del servidor remoto.
- Usuario: Nombre de usuario utilizado para establecer la conexión SSH.
- Contraseña: Contraseña asociada al usuario de conexión.
- Puerto: Puerto utilizado para la conexión SSH (el valor predeterminado es 22).
Ejecutar comando como otro usuario
Activando esta casilla de verificación, es posible ejecutar la búsqueda con un usuario diferente al utilizado para la conexión SSH.
- Usuario: Nombre del usuario con el que se ejecutará el comando.
- Contraseña: Contraseña del usuario utilizado para la ejecución del comando.
Detalles del Proceso
- Señal: La señal de terminación que se enviará al proceso. La elección de la señal determina la "forma" en que se solicita al proceso que se cierre:
- SIGTERM: (Predeterminado) Señal de terminación estándar. Pide amablemente al proceso que se cierre, permitiéndole completar las operaciones de limpieza. Es el método preferido.
- SIGKILL: Señal de terminación forzada. Detiene inmediatamente el proceso sin darle la posibilidad de hacer limpieza. Se debe usar cuando SIGTERM no funciona.
- SIGINT: Señal de interrupción (equivalente a presionar Ctrl+C).
- SIGQUIT: Señal de "quit" del teclado.
- SIGHUP: Señal de "hang up", a menudo utilizada para hacer recargar la configuración a un demonio.
- PID Proceso: Identificador numérico (ID de Proceso) del proceso que se va a terminar. Es posible especificar múltiples PID separándolos con un espacio.
Parámetros de Salida
Al finalizar la ejecución, la tarea expone los siguientes parámetros de salida:
- result: Contiene un mensaje de texto que describe el resultado de la operación o un mensaje de error (ej. “Missing server address”).
- resultJson: Representa el resultado de la ejecución de la tarea en formato JSON, incluyendo información general, configuraciones y detalles sobre la ejecución.
- exitStatus: Devuelve el código de salida del comando kill ejecutado en el servidor remoto. Típicamente, un valor de 0 indica que el comando se ha ejecutado con éxito.
Ejemplo parámetro resultJson
{
"run_info": {
"status": "Completed",
"run_result": "Success"
},
"output_parameters": {
"exitStatus": "0"
}
}
Notas Importantes
- El usuario utilizado para la conexión SSH (o el usuario especificado en "Ejecutar como") debe tener los permisos necesarios para enviar señales al proceso objetivo.
- El PID de un proceso puede ser recuperado dinámicamente a través de otras Tareas, como "Unix Search Process" o ejecutando un comando ps a través de una Tarea SSH genérica, haciendo que todo el proceso de apagado sea completamente automatizado.
- Si se utiliza la autenticación mediante claves SSH, es necesario que la clave pública esté registrada en el servidor remoto. Si la opción “Ejecutar comando como otro usuario” está habilitada, el comando se ejecuta con un usuario diferente al del usuario SSH principal.