Tu sistema Linux es una excelente plataforma para servidores y escritorios. Pero, como cualquier otro sistema complejo, es crucial tener una supervisión adecuada para mantener tu sistema en su mejor rendimiento. Afortunadamente, Sysdig está a la vuelta de la esquina.
Sysdig es una herramienta integral de monitoreo para Linux que puede vigilar tu sistema en busca de amenazas, errores, patrones de uso y mucho más. Y en este tutorial, aprenderás a instalar Sysdig, destacando opciones de configuración particulares para mejorar la supervisión de tu sistema Linux.
¡Sigue leyendo y nunca te pierdas una ‘alerta’ de nuevo!
Prerrequisitos
Este tutorial será una demostración práctica. Si quieres seguirlo, asegúrate de tener lo siguiente.
- A Linux machine – This tutorial uses Ubuntu 20.04 LTS, but any Linux distributions will work.
- A non-root user with sudo privileges.
Instalación de Sysdig en Linux
La herramienta de línea de comandos Sysdig suele estar disponible en la mayoría de las distribuciones Linux modernas, y puedes instalar Sysdig como otros paquetes que hayas instalado hasta ahora en tu máquina.
1. Abre tu terminal y ejecuta el comando apt update
a continuación para asegurarte de tener las últimas actualizaciones de los repositorios de tu distribución. Este comando actualiza las listas de paquetes de tu sistema y puede tardar unos minutos en completarse.

2. A continuación, ejecuta el comando apt install
a continuación para descargar (curl
) e instalar
los paquetes necesarios para Sysdig. Este comando también instala algunos módulos adicionales utilizados más adelante en este tutorial de la siguiente manera:
gnupg
– El Guardián de Privacidad de GNU es una herramienta para comunicación segura y almacenamiento de datos. Este paquete permite la descarga de la clave pública de GPG de Sysdig para verificar la validez de los paquetes de Sysdig.
software-properties-common
– Proporciona una forma rápida de administrar tus fuentes de software a través del entorno de línea de comandos o GUI. Este paquete te permite usar el comandoadd-apt-repository
para agregar los repositorios de paquetes de Sysdig.
linux-headers-$(uname -r)
– Proporciona los archivos necesarios para construir módulos de kernel para tu kernel en ejecución. Este paquete es necesario porque es posible que instales Sysdig en una máquina con un kernel stock más antiguo.

3. Ejecuta el comando curl
a continuación para agregar la clave pública GPG de Sysdig (GPG
) a tu llavero APT. Este comando te permite verificar que los paquetes descargados de sysdig.com sean válidos y no estén modificados.
Recibirás un mensaje de OK después de haber agregado correctamente la clave, como se muestra a continuación.

4. Ahora, ejecuta el comando curl
a continuación para descargar silenciosamente (-s
) los repositorios de Sysdig como draios.list
y agregarlo a tu sistema. La extensión .list
indica a tu APT que el archivo es una lista de URL para repositorios, en lugar de solo una URL.
5. Vuelve a ejecutar el comando apt update
a continuación para descargar los nuevos repositorios de Sysdig y actualizar las listas de paquetes de APT con la información de los nuevos repositorios.
Verás la siguiente salida si tu APT está configurado correctamente.

6. Después de descargar los repositorios de Sysdig, ejecuta el comando apt install
a continuación para instalar sysdig
en tu máquina. Este comando descarga e instala el paquete sysdig
y sus paquetes de soporte.

7. Finalmente, ejecuta el comando sysdig
a continuación para verificar la versión de Sysdig instalada en tu máquina.
El número de versión ayuda a determinar si tu paquete de Sysdig está actualizado. La versión también proporciona información sobre si el lanzamiento de Sysdig afecta el rendimiento del sistema.
Como se muestra a continuación, 0.28.0 es la última versión de sysdig hasta la fecha de esta redacción. Tu número de versión podría ser diferente.

Monitoreo de sistemas Linux con csysdig
Ahora que tienes Sysdig instalado, puedes usar Sysdig para ver qué está sucediendo en tu sistema. La herramienta de línea de comandos de Sysdig tiene muchas opciones que te dan diferentes vistas de tu sistema y su actividad. El ejemplo más básico es el comando csysdig
.
Ejecuta el comando csysdig
sin ninguna opción para ver qué está sucediendo en tu sistema en este momento. El comando te mostrará la actividad de todos los procesos que se están ejecutando actualmente.
Ten en cuenta que debes ejecutar los comandos de Sysdig con privilegios de
sudo
para tener acceso completo a tu sistema. Algunas actividades del sistema pueden estar ocultas de forma predeterminada para los usuarios sin privilegios de root, como la salida del sistema de archivos /proc. Sysdig también requiere privilegios desudo
para cargar automáticamente los símbolos del kernel necesarios para realizar muchas de sus funciones, como el módulo del kernel sysdig-probe
Si encuentras el siguiente error, deberás reinstalar el paquete ncurses-term
. El paquete ncurses-term
tiende a corromperse después de una instalación fresca de Sysdig. Sysdig depende del paquete ncurses-term
para admitir su interfaz de usuario ncurses.

Si el comando csysdig
tiene éxito, obtendrás la siguiente salida organizada en pestañas.
Description | |
PID | The Process ID that assigned by the Linux kernel. You use PIDs to identify and manage processes. |
PPID | The parent process ID of the process. You use PPID to trace the process back through its parent processes. Together, PID and PPID uniquely identify a process on your system. |
CPU | The percentage of CPU used by the application since it started can be seen on a scale from 0 to 100%, where 100% equals total CPU usage. You use CPU usage to find applications that are hogging system resources. |
USER | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
TH | The name of the user that started the process. You use USER to find out who is executing a process you are interested in. |
VIRT | The total amount of virtual memory used by the application. You use VIRT to find applications that are hogging your system’s memory. |
RES | The number of resident memory pages a process has, as mapped to physical memory. You use RES to find applications that are hogging your system’s memory. |
FILE | The disk’s file descriptor used by the application. You use FILE to see which files are being read or written frequently, usually an indication of I/O activity. |
NET | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
Command | The network socket descriptor used by the application. You use NET to see which network connections are being used by the process, and how much data is being transferred in bytes per second. |
Al primer vistazo, la interfaz de csysdig se asemeja a herramientas de monitoreo como htop.

Presiona F2 y las pestañas superiores cambiarán para mostrar un nuevo conjunto de información organizada en pestañas a la izquierda, como se muestra a continuación.
Sysdig llama a estas “vistas” porque son diferentes perspectivas del sistema, organizadas por el tipo de información que muestran, ofreciendo más contexto. Y dado que estas vistas están basadas en scripts LUA, puedes personalizar los scripts para extraer datos diferentes del sistema y cambiar la vista según tus preferencias.

Por defecto, los scripts LUA se encuentran en el directorio /usr/share/sysdig/chisels, como se muestra a continuación.

Monitoreando Procesos que Consumen CPU con Sysdig Chisels
Sysdig ofrece varios cinceles listos para usar que recopilan automáticamente información específica del sistema, conocidos como “cinceles.” Quizás estés experimentando un rendimiento lento en tu CPU. Si es así, ejecutar el comando sysdig
con un cincel específico te permite ver qué aplicaciones/procesos están utilizando la mayor parte de tu CPU.
1. Ejecuta el comando sysdig
a continuación para listar los cinceles disponibles.
La captura de pantalla siguiente muestra solo algunos cinceles. Pero puedes encontrar y aprender la lista completa de todos los cinceles disponibles en la documentación.
Los cinceles de Sysdig también son scripts LUA. Puedes crear tus propios cinceles para monitorizar información específica del sistema o implementar tu propia vista, pero este tema está fuera del alcance de este tutorial.

2. A continuación, ejecuta el siguiente comando para ver la información detallada (-i
) sobre un cincel específico, como topprocs_cpu
en este demo.
Puedes ver toda la información sobre el cincel topprocs_cpu a continuación, incluyendo el nombre del cincel, la categoría y una breve descripción de lo que hace el cincel.
En este ejemplo, el cincel topprocs_cpu está categorizado como Uso de CPU y muestra el proceso principal definido por la mayor utilización de CPU.
Una vez que entiendas la funcionalidad de un cincel, puedes comenzar a usarlo.

3. Ejecuta el comando sysdig
a continuación, especificando el cincel correcto (-c topprocs_cpu
) para encontrar las aplicaciones que utilizan la mayor cantidad de CPU en tu sistema.
Sysdig captura los 10 procesos que consumen más CPU en este demo y los imprime en la terminal. El proceso más intensivo en CPU se mostrará en la parte superior (sshd), lo que los hace más rápidos de encontrar.

Monitoreo de Información del Sistema Filtrada
En algunos casos, la salida es enorme, lo que dificulta filtrar la información del sistema basada en un cincel específico. Afortunadamente, Sysdig ofrece una poderosa opción de filtrado que utiliza la sintaxis Lua para que puedas realizar filtrados efectivos.
Supongamos que solo estás buscando procesos sshd que contribuyan a un alto uso de la CPU. Puedes definir una expresión de filtro por un PID específico o nombre de proceso.
Ejecuta el siguiente comando sysdig
para mostrar solo el proceso sshd
que utiliza mucha CPU.
Como se muestra a continuación, obtendrás una salida filtrada sin obtener ninguna otra información de proceso.
A partir de la salida, puedes obtener más información sobre el proceso sshd, como por qué el proceso sshd utiliza más CPU o memoria, y así sucesivamente.

Creando un archivo de registro de eventos para monitorear tu sistema
Una de las excelentes características que ofrece Sysdig son los archivos de registro de eventos, que te permiten recopilar toda la información sobre lo que hace tu aplicación o el sistema para su análisis posterior. Los archivos de registro de eventos proporcionan la misma información que las salidas de línea de comando en los ejemplos anteriores, pero se guardan en un archivo en el disco.
1. Ejecuta el siguiente comando para crear un archivo (-w
) llamado ata.scap
en tu directorio principal, donde Syslog almacenará todas las salidas de sysdig
.
La extensión de archivo .scap permite guardar flujos de datos en forma de texto legible para humanos.
2. A continuación, ejecuta el comando ls -la
a continuación para listar todos los archivos en el directorio de trabajo.
Notarás un nuevo archivo llamado ata.scap en tu directorio de inicio, como se muestra a continuación.

3. Finalmente, ejecuta el siguiente comando para que Sysdig lea (-r
) el archivo de registro de eventos de Sysdig (ata.scap
) e imprima el comportamiento de tu sistema cuando te conectas por SSH a tu servidor.

Conclusión
En este artículo, aprendiste cómo instalar Sysdig en Ubuntu 20.04 y cómo usar csysdig para recopilar información sobre tu sistema, aplicaciones y seguridad. También exploraste la creación de un archivo de registro de eventos que te permite grabar el comportamiento de tu sistema.
En este punto, te has dado cuenta de que tener Sysdig instalado en tu sistema te proporciona herramientas potentes. Y estas herramientas te ayudan a obtener más información sobre cómo funciona tu sistema, aplicaciones e infraestructura.
Ahora, con este nuevo conocimiento, ¿por qué no aprender a decodificar tu tráfico HTTP con Sysdig? ¿O cómo rastrear cuellos de botella de aplicaciones con trazadores Sysdig?