Jack Wallen le muestra cómo utilizar el comando smem de Linux para obtener información útil sobre el uso de la memoria en los servidores de su centro de datos.

    Es crucial entender lo que está sucediendo con los servidores de su centro de datos. Usted necesita saber qué tan bien se están desempeñando y cómo sus sistemas operativos están haciendo uso de los recursos. Un recurso muy crítico es la memoria. Cuando algo va mal con la memoria, un servidor puede quedar inutilizado y, por lo tanto, causar un tiempo de inactividad no deseado en su empresa. Para ello, necesita disponer de las herramientas de monitorización adecuadas.

    Si su centro de datos incluye máquinas Linux, tiene muchas herramientas a su disposición. Muchas de esas herramientas no se conocen. Una de las herramientas menos conocidas para controlar el uso de la memoria es el smem. El comando smem informa sobre el uso de la memoria física, pero a diferencia de la parte superior, smem tiene en cuenta las páginas de memoria compartida.

    Pero lo que hace del smem una solución mucho mejor para los informes de uso de memoria es que puede generar gráficos para facilitar aún más el uso de la memoria de lectura. Por supuesto, para hacer uso de la función de gráficos, su servidor debe tener una interfaz gráfica de usuario. Si trabajas con un servidor Linux sin cabeza, smem puede reportar el uso, pero con una tarifa más estándar.

    El comando smem incluye lo siguiente:

    • Listado de resumen del sistema
    • Procesamiento, mapeo, o listado y filtrado de usuarios
    • Salida configurable desde múltiples fuentes de datos
    • Unidades de salida y porcentajes configurables
    • Lee datos en vivo de /proc
    • Puede leer instantáneas de datos de réplicas de directorios o tarballs comprimidos
    • Suficientemente ligero para sistemas empotrados
    • Generación de gráficos integrada

    Vamos a instalar esta herramienta y ver cómo se utiliza.

    Instalación de

    Estaré instalando smem en la plataforma Debian 9, uno con la GUI de GNOME. La instalación de smem puede ser fácilmente instalada en sistemas como CentOS, simplemente modificando el comando de instalación para que se adapte al gestor de paquetes de su plataforma (es decir, cambiar apt por yum.

    Para instalar smem en Debian, abra una ventana de terminal y ejecute el siguiente comando:

    sudo apt install smem

    NOTA: El comando anterior requiere que su usuario sea miembro de sudoers. Si no lo son, puede primero hacer un su al usuario root y luego emitir el comando de instalación.

    Una vez que el comando se complete, estará listo para comenzar a usar smem.

    Uso

    Primero voy a mostrarte cómo usar el smem para reportar el uso de la memoria dentro de la ventana de la terminal. El comando básico es simplemente smem. Esto reportará Swap, USS (Unique Set Size-la porción de memoria principal que está ocupada por un proceso y que está garantizada como privada), PSS (Proportional Set Size-la porción de memoria principal que está ocupada por un proceso y compuesta por una memoria privada), y RSS (Resident Set Size-la porción de memoria que está ocupada por un proceso mantenido en la memoria principal. Este comando también informará sobre todos los PID en ejecución (.

    Hagamos que el smem sea un poco más útil. Supongamos que desea comprobar el uso de memoria de un PID específico. En primer lugar, echemos un vistazo al uso de la memoria en todo el sistema. Emita el comando smem -w para ver cómo áreas como hardware, kernel, memoria de espacio de usuario, memoria libre están usando la memoria .

    ¿Qué sucede si desea ver el uso de la memoria por usuario? Para que este comando funcione correctamente, tenemos que evocarlo usando sudo, de lo contrario sólo reportará el uso de memoria del usuario que llama al comando. El comando para esto es sudo smem -u .

    Ahora, digamos que necesita averiguar el uso de memoria de una aplicación en particular. Digamos, por ejemplo, que su equipo incluye un servidor web y desea saber cómo maneja la memoria el servidor. Para ello, puede ejecutar el comando sudo smem -processfilter=»apache2″. Los resultados serían la memoria que utiliza el servidor web en ejecución .

    Adición de gráficos

    Todos los comandos anteriores se pueden utilizar en un servidor Linux sin cabeza. Pero si su servidor tiene una GUI, puede aprovechar la capacidad de smem para presentar información en forma de gráfico. Supongamos que quiere ver el uso de la memoria de Apache en un gráfico de barras. Para eso, el comando sería:

    sudo smem --processfilter="apache2" --bar pid -c"pss rss"

    La salida de ese comando se presentaría en un gráfico de barras fácil de leer .

    Sigue aprendiendo

    Hay un poco más de lo que se puede tener con el smem. Te recomiendo encarecidamente que emitas el comando man smem y leas toda la página man para averiguar qué tiene que ofrecer todo smem. Esta es una herramienta muy poderosa y útil, una que cualquier administrador estaría encantado de tener en los servidores de su centro de datos.

    Boletín de noticias de Data Center Trends

    DevOps, virtualización, la nube híbrida, el almacenamiento y la eficiencia operativa son sólo algunos de los temas del centro de datos que destacaremos. Entregado Lunes y Miércoles

    mismo

    Vea también