En este módulo, aprenderás a monitorear y optimizar el rendimiento de un sistema Linux. Estas habilidades son cruciales para mantener un sistema eficiente y detectar problemas antes de que afecten a los usuarios.

  1. Introducción al Monitoreo del Sistema

Conceptos Clave

  • Monitoreo del Sistema: Proceso de supervisar el rendimiento y la salud de un sistema.
  • Métricas de Rendimiento: Datos que indican el estado del sistema, como uso de CPU, memoria, disco y red.

Herramientas Comunes

  • top: Muestra los procesos en ejecución y el uso de recursos.
  • htop: Versión mejorada de top con una interfaz más amigable.
  • vmstat: Proporciona estadísticas sobre procesos, memoria, paginación, bloqueos de E/S y CPU.
  • iostat: Muestra estadísticas de entrada/salida del sistema.
  • netstat: Muestra estadísticas de red.
  • sar: Recopila, reporta y guarda información sobre la actividad del sistema.

Ejemplo Práctico: Uso de top

top
  • PID: Identificador del proceso.
  • USER: Usuario que ejecuta el proceso.
  • PR: Prioridad del proceso.
  • %CPU: Porcentaje de CPU utilizado por el proceso.
  • %MEM: Porcentaje de memoria utilizado por el proceso.
  • TIME+: Tiempo total de CPU utilizado por el proceso.

  1. Monitoreo de CPU

Comandos y Herramientas

  • mpstat: Muestra estadísticas de CPU.
  • sar -u: Muestra el uso de CPU.

Ejemplo Práctico: Uso de mpstat

mpstat
  • %usr: Tiempo de CPU en modo usuario.
  • %sys: Tiempo de CPU en modo sistema.
  • %idle: Tiempo de CPU inactivo.

  1. Monitoreo de Memoria

Comandos y Herramientas

  • free: Muestra la cantidad de memoria libre y usada en el sistema.
  • vmstat: Proporciona estadísticas de memoria.

Ejemplo Práctico: Uso de free

free -h
  • total: Memoria total.
  • used: Memoria usada.
  • free: Memoria libre.
  • shared: Memoria compartida.
  • buff/cache: Memoria en buffers y caché.
  • available: Memoria disponible para nuevos procesos.

  1. Monitoreo de Disco

Comandos y Herramientas

  • df: Muestra el uso del sistema de archivos.
  • du: Muestra el uso del disco por directorio.
  • iostat: Muestra estadísticas de entrada/salida del disco.

Ejemplo Práctico: Uso de df

df -h
  • Filesystem: Sistema de archivos.
  • Size: Tamaño total del sistema de archivos.
  • Used: Espacio usado.
  • Avail: Espacio disponible.
  • Use%: Porcentaje de uso.
  • Mounted on: Punto de montaje.

  1. Monitoreo de Red

Comandos y Herramientas

  • ifconfig: Configura interfaces de red.
  • netstat: Muestra estadísticas de red.
  • ss: Muestra estadísticas de sockets.

Ejemplo Práctico: Uso de netstat

netstat -tuln
  • Proto: Protocolo (TCP/UDP).
  • Recv-Q: Cola de recepción.
  • Send-Q: Cola de envío.
  • Local Address: Dirección local.
  • Foreign Address: Dirección remota.
  • State: Estado de la conexión.

  1. Optimización del Rendimiento

Conceptos Clave

  • Optimización de CPU: Ajustar la prioridad de los procesos.
  • Optimización de Memoria: Liberar memoria no utilizada.
  • Optimización de Disco: Desfragmentar y limpiar el disco.
  • Optimización de Red: Ajustar parámetros de red para mejorar el rendimiento.

Ejemplo Práctico: Ajuste de Prioridad de Procesos

renice -n 10 -p 1234
  • -n 10: Ajusta la prioridad del proceso a 10.
  • -p 1234: Identificador del proceso.

  1. Ejercicios Prácticos

Ejercicio 1: Monitoreo de CPU

  1. Ejecuta el comando mpstat y analiza la salida.
  2. Identifica el porcentaje de tiempo que la CPU está inactiva.

Ejercicio 2: Monitoreo de Memoria

  1. Ejecuta el comando free -h y analiza la salida.
  2. Identifica cuánta memoria está disponible para nuevos procesos.

Ejercicio 3: Monitoreo de Disco

  1. Ejecuta el comando df -h y analiza la salida.
  2. Identifica el sistema de archivos con mayor uso.

Ejercicio 4: Monitoreo de Red

  1. Ejecuta el comando netstat -tuln y analiza la salida.
  2. Identifica las conexiones activas en el sistema.

Soluciones

Ejercicio 1

mpstat
  • %idle: Indica el porcentaje de tiempo que la CPU está inactiva.

Ejercicio 2

free -h
  • available: Indica la cantidad de memoria disponible para nuevos procesos.

Ejercicio 3

df -h
  • Use%: Indica el porcentaje de uso del sistema de archivos.

Ejercicio 4

netstat -tuln
  • State: Indica el estado de las conexiones activas.

Conclusión

En esta sección, has aprendido a utilizar diversas herramientas para monitorear el rendimiento del sistema y a aplicar técnicas de optimización. Estas habilidades te permitirán mantener un sistema Linux eficiente y detectar problemas antes de que se conviertan en críticos. En el próximo módulo, profundizaremos en la configuración de redes y la seguridad en Linux.

Maestría en Linux: De Principiante a Avanzado

Módulo 1: Introducción a Linux

Módulo 2: Comandos Básicos de Linux

Módulo 3: Habilidades Avanzadas en la Línea de Comandos

Módulo 4: Scripting en Shell

Módulo 5: Administración del Sistema

Módulo 6: Redes y Seguridad

Módulo 7: Temas Avanzados

Módulo 8: Proyectos Prácticos

© Copyright 2024. Todos los derechos reservados