Cómo saber si tu VPS se quedó chico antes de pagar más
En pocas palabras
Un VPS se quedó chico cuando alguno de sus recursos está al límite de forma sostenida, no por un pico aislado. Revisá cuatro cosas en el momento en que el sitio anda lento: la carga promedio de 15 minutos contra la cantidad de vCPU (uptime y nproc), la memoria disponible y el uso de swap (free -h), la espera de disco (iostat -x) y si PHP o el servidor web rechazan pedidos por falta de procesos. Si nada de eso está al tope y el sitio igual tarda, el problema está en la aplicación o en la base, y un plan mayor solo lo disimula un tiempo.
Medí cuando duele, no a la mañana siguiente
Un VPS que anda lento a las 11 de la mañana no muestra nada raro a las 3 de la tarde. Las mediciones sirven si las tomás durante el problema, o si el sistema las guarda para mirarlas después. Para eso está sysstat: una vez activo, registra CPU, memoria y disco cada diez minutos, y sar muestra cómo estuvo el servidor a cualquier hora del día.
# Debian y Ubuntu
sudo apt install sysstat
sudo sed -i 's/ENABLED="false"/ENABLED="true"/' /etc/default/sysstat
sudo systemctl enable --now sysstat
# AlmaLinux
sudo dnf install sysstat
sudo systemctl enable --now sysstat
# después: CPU, memoria y disco del día
sar -u
sar -r
sar -dLas cuatro señales y cómo leerlas
| Recurso | Comando | Preocupa si | Suele significar |
|---|---|---|---|
| Procesador | uptime y nproc | La carga de 15 minutos pasa la cantidad de vCPU durante horas | Falta procesador, o un proceso se desbocó |
| Memoria | free -h y vmstat 5 | La columna available se acerca a cero y las columnas si y so dejan de estar en 0 | Falta RAM, o un servicio está mal dimensionado |
| Disco | iostat -x 5 y df -h | %util cerca de 100, await alto, o el disco por encima del 90 % | El disco es el cuello, o se está llenando |
| Procesos web | Registros de PHP-FPM y del servidor web | "server reached pm.max_children" o errores 502 y 504 en los picos | Faltan procesos, o cada uno tarda demasiado |
iostat viene con sysstat. Si ninguna de las cuatro está al límite y el sitio igual tarda, el problema está en la aplicación o en la base, y un plan mayor no lo arregla.
Los números que engañan
- La carga de Linux incluye procesos que esperan al disco, no solo los que usan CPU. Una carga alta con el procesador ocioso apunta al disco.
- La memoria libre de
freecasi siempre es baja, porque Linux usa lo que sobra como caché de archivos. La que importa es available. - Swap en uso no es alarma por sí sola: pueden ser páginas viejas estacionadas ahí. La alarma es que si y so, en
vmstat, muestren movimiento constante. - En
top, la columna st (steal) es el tiempo que el hipervisor le dio a otras máquinas. En los Cloud VPS de InHosting los recursos están garantizados, no sobrevendidos, así que tendría que estar en cero o casi; si la ves alta de forma sostenida, avisanos. - Si el kernel se quedó sin memoria, lo deja escrito:
journalctl -k | grep -i "out of memory"muestra qué proceso cerró y cuándo.
Lo que parece falta de recursos y es otra cosa
| Síntoma | Causa real | Cómo confirmarlo |
|---|---|---|
| Pico de carga todos los días a la misma hora | Un respaldo o una tarea programada pesada | crontab -l y systemctl list-timers |
| Lentitud de golpe, sin cambios en el sitio | Una consulta sin índice sobre una tabla que creció | El registro de consultas lentas de la base |
| Servidor tranquilo pero páginas lentas | Un plugin que espera la respuesta de un servicio externo | Tiempo de respuesta alto con CPU baja |
| Miles de visitas a direcciones raras | Rastreadores recorriendo combinaciones de filtros del catálogo | Las IP y los agentes que más aparecen en el registro de accesos |
| Carga alta y muchos POST a la página de login | Fuerza bruta contra el acceso del CMS | El mismo registro de accesos |
| El disco se llena solo | Registros o respaldos que se acumulan | sudo du -xh / --max-depth=2 | sort -h | tail |
Para ver quién pide tantas páginas, esta línea cuenta las IP con más pedidos en el registro de accesos de Nginx. En Apache, el registro suele estar en /var/log/apache2/ o en /var/log/httpd/.
sudo awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head -20En qué orden actuar
- Encontrá el proceso:
topordena por CPU con P y por memoria con M, yps aux --sort=-%mem | headda la lista quieta. - Si es la base, revisá las consultas lentas antes que nada; en servidor para bases de datos está cómo medirla.
- Si es PHP, averiguá qué dirección se estaba ejecutando: el registro lento de PHP-FPM (
request_slowlog_timeout) anota el script y la función que tardaron. - Si es un proceso que no reconocés, revisá la seguridad antes de ampliar nada.
- Con la causa identificada, decidí: corregir, ajustar la configuración o crecer.
Cuándo sí toca crecer, y hacia dónde
Si el recurso que se agota es el mismo todas las semanas y ya no queda nada que optimizar, el plan quedó chico. En InHosting, un Cloud VPS pasa a un plan mayor sin reinstalar: el sistema, los datos y la configuración quedan como estaban. Si lo que crece es el disco, después hay que extender la partición para usar el espacio nuevo, como se explica en ampliar el disco de tu VPS.
Cuando el plan más grande de VPS no alcanza, o necesitás hardware dedicado, RAID y más memoria, el paso siguiente es un servidor cloud. A veces rinde más separar: la base en un equipo y la web en otro, cada uno dimensionado para lo suyo.
| Plan | Incluye | Por mes |
|---|---|---|
| Cloud VPS VM1 | 1 vCPU · 1 GB de RAM · 15 GB | Sin stock |
| Cloud VPS VM2 | 2 vCPU · 2 GB de RAM · 30 GB | $ 26.910US$ 18 |
| Cloud VPS VM3 | 3 vCPU · 3 GB de RAM · 45 GB | $ 40.365US$ 27 |
| Cloud VPS VM4 | 4 vCPU · 4 GB de RAM · 60 GB | $ 53.820US$ 36 |
Con el 10 % de descuento del código INH, que ya va en los enlaces de contratación. Los precios se leen de la tienda. Ver el detalle de cada plan.
Preguntas frecuentes
¿Qué es el steal time y por qué importa en un VPS?
Es el tiempo en que tu VPS quería usar el procesador y el hipervisor se lo dio a otra máquina. Un valor alto y sostenido significa que el equipo físico está sobrecargado, y ninguna optimización tuya lo arregla. En un VPS con recursos garantizados tiene que estar cerca de cero.
¿Conviene tener swap en un VPS chico?
Sí, como red de seguridad: un archivo de swap de 1 o 2 GB evita que un pico de memoria termine con el motor de la base cerrado por el kernel. Si el servidor usa swap todo el tiempo, en cambio, le falta RAM.
¿Más vCPU o más RAM?
Lo dice la señal que esté al límite. Carga alta con memoria holgada pide procesador; available baja, swap en movimiento o procesos cerrados por falta de memoria piden RAM. Si las dos están justas, el plan siguiente suele sumar de ambas.
¿Un plugin de caché puede evitar la ampliación?
En un WordPress, muchas veces sí. Una caché de páginas sirve la mayoría de las visitas sin ejecutar PHP ni consultar la base, y eso baja la carga de golpe. No ayuda con lo que no se puede cachear, como el carrito o el panel de administración.
Seguí leyendo
Cuánta memoria RAM necesita tu VPS: cómo calcularla antes de contratar
Qué consume cada parte de un VPS (sistema, base de datos, PHP, correo, panel), un cálculo con ejemplo y cómo darte cuenta de que te falta memoria.
6 min de lectura
Ampliar el disco del VPS cuando df no muestra el espacio nuevo
Pasaste a un plan con más disco y el sistema no lo ve: cómo agrandar la partición, el LVM y el sistema de archivos en Linux, y la unidad C: en Windows.
6 min de lectura
VPS o servidor dedicado: cómo saber cuándo hace falta el salto
Señales concretas de que un VPS ya no alcanza, cómo confirmarlas con tres comandos y qué gana y qué no gana tu proyecto con hardware exclusivo.
6 min de lectura
