Que es la swap memory y para que sirve

La swap (memoria de intercambio) es un espacio en el disco duro o SSD que el sistema operativo Linux utiliza como extension de la memoria RAM cuando esta se agota. Cuando un proceso necesita mas RAM de la disponible, el kernel mueve paginas de memoria poco utilizadas al espacio de swap, liberando RAM para los procesos activos. Aunque la swap es significativamente mas lenta que la RAM (especialmente en discos HDD), su presencia puede evitar que el servidor quede sin memoria y los procesos comiencen a ser terminados por el OOM Killer (Out of Memory Killer).

En VPS con poca RAM (1-2 GB), configurar swap es especialmente importante como medida de seguridad ante picos de uso de memoria. En servidores con mucha RAM, la swap puede configurarse con un tamaño mas pequeño simplemente como red de seguridad.

Crear un archivo de swap

# Crear un archivo de 2 GB para swap
sudo fallocate -l 2G /swapfile

# Establecer los permisos correctos
sudo chmod 600 /swapfile

# Formatear el archivo como swap
sudo mkswap /swapfile

# Activar el swap
sudo swapon /swapfile

# Verificar que el swap esta activo
free -h
swapon --show

Hacer el swap permanente (persiste tras reinicios)

Agregar la siguiente linea al archivo /etc/fstab para que el swap se active automaticamente al reiniciar el servidor:

/swapfile none swap sw 0 0

Configurar el parametro swappiness

El parametro swappiness controla que tan agresivamente el kernel mueve paginas de RAM al swap. Los valores van de 0 a 100:

  • Valor 0: El kernel evitara usar swap a menos que sea absolutamente necesario.
  • Valor 10-20: Recomendado para servidores de aplicaciones. Prioriza la RAM.
  • Valor 60: Valor predeterminado en muchas distribuciones. Equilibrado.
  • Valor 100: El kernel usa swap de forma muy agresiva.
# Ver el valor actual de swappiness
cat /proc/sys/vm/swappiness

# Cambiar temporalmente a 10
sudo sysctl vm.swappiness=10

# Hacer el cambio permanente
echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf

Tamaño de swap recomendado segun la RAM disponible

RAM del servidor Swap recomendada
512 MB 1 GB
1 GB 2 GB
2 GB 2 a 4 GB
4 GB 4 GB
8 GB o mas 4 a 8 GB (como medida de seguridad)
Was this answer helpful? 0 Users Found This Useful (0 Votes)