Cómo Instalar y Configurar PM2 para Gestionar Aplicaciones Node.js


Aprende a instalar y configurar PM2 en Ubuntu para gestionar y monitorear tus aplicaciones Node.js de forma eficiente. Sigue esta guía paso a paso para mantener tus procesos en producción.

oscar Escrito por oscar 04 September 2024 276 0

En este post aprenderemos cómo instalar y configurar PM2 en Ubuntu. Comenzaremos con una introducción para entender qué es PM2 y sus principales funciones. Luego, realizaremos la instalación de Node.js utilizando NodeSource o NVM, seguido de la instalación de PM2. Finalmente, crearemos una pequeña aplicación en Node.js para probar el funcionamiento de PM2.

Introducción

PM2 es una herramienta indispensable para desarrolladores Node.js que buscan garantizar la estabilidad, el rendimiento y la escalabilidad de sus aplicaciones en entornos de producción.

Funciones principales:

  • Ejecución y gestión de aplicaciones: Inicia, detiene y reinicia aplicaciones Node.js de forma sencilla.
  • Monitoreo: Supervisa constantemente el estado de las aplicaciones y los recursos del sistema.
  • Reinicio automático: Reacciona ante fallas y reinicia las aplicaciones para garantizar la continuidad del servicio.

Características destacadas:

  • Clustering: Permite ejecutar múltiples instancias de una aplicación en diferentes núcleos de CPU, mejorando el rendimiento.
  • Monitoreo de recursos: Proporciona información detallada sobre el uso de memoria y CPU.
  • Gestión de logs: Centraliza los registros de las aplicaciones para facilitar la depuración.

Beneficios clave:

  • Fiabilidad: Asegura la disponibilidad continua de las aplicaciones.
  • Rendimiento: Optimiza el uso de los recursos del servidor.
  • Facilidad de uso: Simplifica la gestión de aplicaciones Node.js en producción.

Instalación de PM2 en Ubuntu

Para trabajar con PM2, es necesario tener Node.js instalado. A continuación, te presento dos opciones para instalar Node.js.

Instalación desde nvm

Para mas detalle puede consultar Cómo instalar y usar NVM para gestionar versiones de Node.js en Ubuntu y Windows

Instalación desde node source

Antes de instalar cualquier paquete, es importante asegurarnos de que nuestro sistema esté actualizado. Para ello, ejecuta los siguientes comandos en tu terminal:

sudo apt update sudo apt upgrade 

Instalar Node.js y NPM: Para instalar la versión 18 de Node.js, puedes ejecutar los siguientes comandos:

curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - sudo apt install -y nodejs

Después de la instalación, verifica las versiones de Node.js y NPM para asegurarte de que están correctamente instaladas:

node -v npm -v

Instalar PM2

Una vez que tienes Node.js y NPM instalados, puedes proceder a instalar PM2 globalmente con el siguiente comando:

npm install pm2@latest -g 

Para verificar que PM2 se ha instalado correctamente, usa el comando:

pm2 -v

pm2 ejecutándose

 Crear app Node.js de prueba

Inicializa un proyecto Node.js

npm init -y

Esto generará un archivo package.json con la configuración predeterminada.

Instala Express (un framework minimalista para Node.js)

npm install express

Crea el archivo principal index.js, En el directorio de tu proyecto, crea un archivo llamado index.js con el siguiente contenido:

const express = require('express');
const app = express();
const port = 3000;

// Ruta principal que responde con "Hello World"
app.get('/', (req, res) => {
  res.send('Hello World from PM2 App!');
});

// Inicia el servidor
app.listen(port, () => {
  console.log(`App listening at http://localhost:${port}`);
});

Ejecuta la aplicación con PM2

Nota: en un futuro post, explicaremos a detalle cada uno de los siguientes comandos, por el momento seguir el paso a paso para ejecutar la primera aplicacion.

Una vez que hayas configurado tu archivo app.js, puedes iniciar la aplicación usando PM2:

pm2 start app.js 

Este comando iniciará la aplicación bajo la gestión de PM2. Si todo ha ido bien, deberías ver algo como esto:

[PM2] Starting /path/to/app.js in fork_mode (1 instance) [PM2] Done. 

Verifica que la aplicación está en ejecución, puedes verificar el estado de la aplicación con el siguiente comando:

pm2 list 

Deberías ver tu aplicación en la lista con un estado de "online".

Accede a la aplicación, abre tu navegador y visita:

curl http://localhost:3000

Verás el mensaje: "Hello World from PM2 App!"

Monitorea la aplicación, puedes monitorear el rendimiento y uso de recursos de la aplicación en tiempo real con:

pm2 monit

Conclusión

PM2 es una herramienta esencial para cualquier desarrollador que gestione aplicaciones Node.js en producción. Su capacidad de mantener aplicaciones activas, optimizar el uso de recursos mediante el clustering, y proporcionar un monitoreo completo en tiempo real, lo convierte en la opción preferida para entornos de alta disponibilidad. Siguiendo esta guía, habrás aprendido cómo instalar y configurar PM2 en Ubuntu, asegurando que tus aplicaciones Node.js funcionen de manera eficiente y sin interrupciones.

Palabras clave: PM2 Ubuntu, instalación PM2, gestor de procesos Node.js, PM2 Node.js, cómo instalar PM2, tutorial PM2 Ubuntu, configuración PM2

Comentario

Debe aceptar antes de enviar