2 puntos por GN⁺ 2024-03-25 | 1 comentarios | Compartir por WhatsApp

Herramientas de crisis para Linux

  • Se proporciona una lista de "herramientas de crisis" que deberían instalarse por defecto en un servidor Linux, junto con los nombres de los paquetes (Ubuntu) que las incluyen.
  • Incluye herramientas para estadísticas básicas, registros del sistema, información de dispositivos, estadísticas de dispositivos, herramientas de red, estadísticas NUMA, sniffers de red, profilers y estadísticas de PMU, entre otras.
  • bpfcc-tools (bcc) y bpftrace ofrecen herramientas eBPF; bcc tiene más funciones y bpftrace puede editarse en tiempo real.
  • Según el servidor, también se recomienda preinstalar herramientas específicas para analizar aceleradores o herramientas de depuración.
  • Estas herramientas esenciales de análisis no cambian con frecuencia, por lo que solo necesitan actualizarse una vez cada varios años.

La importancia de instalar herramientas durante una crisis

  • Se explican con ejemplos los problemas que pueden surgir al instalar software en una situación de crisis en un entorno de producción.
  • El sistema puede volverse lento, haciendo que instalar las herramientas necesarias tome mucho tiempo, y la instalación puede dificultarse por varios problemas de configuración o políticas de seguridad.
  • Para diagnosticar y resolver rápidamente los problemas en una situación crítica, es recomendable instalar con anticipación las herramientas de crisis.

Opinión de GN⁺

  • Este artículo ofrece información muy útil para administradores de sistemas o SRE (ingenieros de confiabilidad del sitio). Destaca la importancia de prepararse con anticipación para poder usar rápidamente las herramientas necesarias en una situación real de crisis.
  • La preinstalación de herramientas de crisis contribuye a aumentar la disponibilidad y resiliencia del sistema, y ayuda a minimizar el tiempo de inactividad potencial.
  • Sin embargo, es importante encontrar un equilibrio entre seguridad y rendimiento. Por ejemplo, si hay herramientas innecesarias instaladas en el sistema, un atacante podría aprovecharlas.
  • Las distribuciones de Linux podrían considerar incluir herramientas de crisis por defecto para entornos empresariales, aunque esto puede variar según las políticas de seguridad y las necesidades de cada organización.
  • La comunidad de código abierto ya ofrece diversas herramientas de monitoreo y análisis de rendimiento; por ejemplo, Prometheus y Grafana se usan ampliamente para monitorear el rendimiento del sistema. Integrar estas herramientas con las herramientas de crisis puede hacer más efectiva la administración del sistema.

1 comentarios

 
GN⁺ 2024-03-25
Opiniones de Hacker News
  • 4:07pm falló la instalación del paquete, no se puede resolver el repositorio. Hay un problema con la configuración de /etc/apt…

    • Hay desventajas en los entornos en la nube, pero esto es útil en una situación así. En vez de hacer una reparación compleja, se puede resolver el problema apagando la máquina con fallas o sacándola del pool y usando una máquina nueva.
  • Hay muchos servidores en contenedores, pero todavía existen desafíos.

    • Muchas herramientas dentro de una imagen de Docker son marcadas como riesgos por las herramientas de escaneo de seguridad. Herramientas como gdb generan preocupación, pero muchas otras no.
    • Para evitar esto, se colocan las herramientas como binarios estáticos en un volumen separado, o se compilan e instalan usando una ruta montada como prefijo de instalación. Cuando hace falta depurar, el equipo de operaciones monta temporalmente el volumen en modo de solo lectura.
  • Si hay herramientas de depuración que requieren activar funciones específicas del kernel, existe preocupación por el impacto en otros contenedores que se ejecutan en el mismo host.

  • En los sistemas FreeBSD existe el directorio /rescue/, que ofrece un único archivo binario enlazado estáticamente de unos 17MB que combina alrededor de 150 herramientas esenciales.

  • Cuando trabajaba en Netflix, Brendan y su equipo tenían instaladas por todas partes herramientas de depuración como bpftrace, bcc y una versión funcional de perf, y eso salvó la situación muchas veces.

  • Me sorprende que strace no esté en la lista. Es una herramienta especialmente útil cuando un programa devuelve errores inútiles o equivocados.

  • Cuando entrevisto para puestos de tipo SRE, siempre cubro estas herramientas. Me importa más lo que el candidato entiende que es posible, qué tipos de herramientas hay disponibles y cómo usarlas, que un comando específico que se sepa de memoria.

  • En una situación de crisis donde no es posible instalar herramientas, se pueden ejecutar muchas utilidades a través de Docker. Por ejemplo, se propone una forma de construir y ejecutar un contenedor Docker que corra tcpdump conectado a la red del host.

  • Se prefiere yum install, pero si Docker está disponible, también es una alternativa viable aunque requiera mapeos adicionales. Puede que no funcione en una configuración rootless/podman.

  • No se mencionaron nmap, netstat ni nc. Estas herramientas han ayudado muchas veces a resolver problemas.

  • ¿Se puede obtener acceso root? Solo puedo hacer cualquier cosa si levanto un ticket al administrador del sistema.

  • Lo que yo agregaría es nmap. Los problemas de conectividad de red pueden no ser evidentes en algunas apps.