Tutorial: Añadir Swap en Linux como balanceo para RAM Ubuntu

Zahi Seguir

Dseda
Verificación en dos pasos desactivada
Desde
27 Jul 2012
Mensajes
1.101
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Añadir Swap en Linux como balanceo para RAM


swap_ram.jpg




Hola amigos del foro en esa oportunidad les traeré un tutorial para optimizar mas el rendimiento tanto de un servidor dedicado a como un vps, es muy importante tener en cuenta que dado las situaciones en que se enfoque el sitio web hay que hacer ciertos y pequeños cambios, dichos casos en muchas ocasiones el Swap superior con mas de 2GB de ram no hace un rendimiento normal y lo que logra es esforzar el disco.

Para todo ello he traído este tutorial y espero que sea de su entendimiento.

Como siempre tener el putty.

Vamos a escribir el primer comando:
Insertar CODE, HTML o PHP:
[COLOR=#000080][B]free -m[/B][/COLOR]

El comando free -m: Es para verificar el uso de nuestra cached, buffers memoria ram y swap usadas.

Nos deberia mostrar algo asi:
Insertar CODE, HTML o PHP:
total       used       free     shared    buffers     cached
Mem:          3953        154       3799          0          8         83
-/+ buffers/cache:         62       3890
Swap:            0          0          0

Una vez que hayamos checkeado ello, vamos a ejecutar este comando:

Insertar CODE, HTML o PHP:
[B][COLOR=#000080]sudo dd if=/dev/zero of=/swapfile bs=1G count=2[/COLOR][/B]

Luego de ello deberan esperar como unos segundos o quizas minutos depende del performance de su servidor o vps que cree el archivo y arriba o abajo les saldra un mensaje asi:

Insertar CODE, HTML o PHP:
[B][COLOR=#000080]2+0 records in
2+0 records out
2194967296 bytes (2.1 GB) copied, 14.6227 s, 211 MB/s[/COLOR][/B]

Luego de eso ya estara creado un archivo de 2GB que cuya funcion le haremos hacer es balancear la carga de la ram con la velocidad de su disco duro (SSD/Sata 7200.)

Ejecutamos ahora el siguiente comando:
Insertar CODE, HTML o PHP:
[B][COLOR=#000080]ls -lh /swapfile[/COLOR][/B]

Luego de esto debera aparecernos un mensaje mas o menos asi:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]-rw-r--r-- 1 root root 2.0G Apr 28 17:15 /swapfile[/B][/COLOR]

Perfecto creado nuestro Balanceador de Carga para la RAM, pero como asegurarnos de que nuestro servidor sea el unico que ejecute esa funcion de swap? hay que agregarle permisos 600 para que nadie mas que root lo pueda usar.

Eso lo logramos mediante el comando:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]sudo chmod 600 /swapfile[/B][/COLOR]

Ahora luego de ejecutar ese comando verificamos nuevamente los permisos con:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]ls -lh /swapfile[/B][/COLOR]

Nos mostrara algo como:

Insertar CODE, HTML o PHP:
[B][COLOR=#000080]-rw------- 1 root root 2.0G Apr 28 17:19 /swapfile[/COLOR][/B]

Ejecutamos para compilar esa configuracion de swap lo siguiente:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]sudo mkswap /swapfile[/B][/COLOR]

Perfecto! nuestro Swap balanceador de Memoria RAM creado con exito.! Aun falta mas :topsy_turvy:


Debemos configurar que nuestro Swap al momento de cualquier reinicio o apagon (Una bomba al datacenter o algo.) vuelva a funcionar sin necesidad de nosotros hacer nada para ello debemos configurar lo siguiente:

Ejecutamos:

Insertar CODE, HTML o PHP:
[B][COLOR=#4b0082]sudo nano /etc/fstab[/COLOR][/B]

Luego nos dirigimos al final y colocamos o agregamos la siguiente linea de comando:

Insertar CODE, HTML o PHP:
[B][COLOR=#4b0082]/swapfile   none    swap    sw    0   0[/COLOR][/B]

Guardamos y Todo listo, Vamos falta poco...

Que algo muy importante que hacer y aqui es la parte en la que mencione al principio en situaciones de Dedicado o VPS es la configuracion...

Por lo tanto, el Swap una vez creado trae o se crea su configuracion por defaul de 60 o 60% como quieran entenderlo.

Es decir ejecutamos este comando para ver como esta:

Insertar CODE, HTML o PHP:
[COLOR=#4b0082][B]cat /proc/sys/vm/swappiness[/B][/COLOR]

Les mostrara asi:

Insertar CODE, HTML o PHP:
[B][COLOR=#ff0000]60[/COLOR][/B]



Saber diferencia sera facil para un VPS es necesario poner 10 como maximo, por que? un vps es una virtualizacion de un disco compartido jamas un disco te dara tanto intercambio sin forzarse su virtualizacion, que debo o quiero decir con esto? que simplemente no podras obtener el 100% de rendimiento de un Swap con una virtualizacion, en muchos casos los dedicados a maximo se le pondria un 40, ya que de cualquier intercambio hacia el disco como parte de memoria es algo Bien caro o bien forzoso ya que nuestro disco haria la funcion de recibir, mandar y procesar informacion a misma vez, esto del swap es un extra rendimiento para webs que consume un 80% de cpu y esto la ayudaria a bajar hasta 25% menos. Alivia mucho mas la RAM.


Luego de todo esto y verificar en cuanto esta el swap ya verificamos y nos dio 60.

Vamos a editarlo con el siguiente comando:

Insertar CODE, HTML o PHP:
[B][COLOR=#000080]sudo sysctl vm.swappiness=10[/COLOR][/B]

Nos aparecera:

Insertar CODE, HTML o PHP:
[B][COLOR=#000080]vm.swappiness = 10[/COLOR][/B]

Para guardar esa configuracion finalmente vamos y ejecutamos:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]sudo nano /etc/sysctl.conf[/B][/COLOR]

Al final agregamos:

Insertar CODE, HTML o PHP:
[B][COLOR=#ff0000]vm.swappiness=10[/COLOR][/B]

Para terminar con la configuracion perfecta de nuestro swap configuremos bien el cache:

Ejecutando para verificarlo es:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]cat /proc/sys/vm/vfs_cache_pressure[/B][/COLOR]

Debera mostrarnos algo asi:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]100[/B][/COLOR]

Insertar CODE, HTML o PHP:
[B][COLOR=#000080]sudo sysctl vm.vfs_cache_pressure=50[/COLOR][/B]

Nos dira que quedara asi:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]vm.vfs_cache_pressure = 50[/B][/COLOR]

Entonces para que se guarde esta configuracion escribimos esto:

Insertar CODE, HTML o PHP:
[B][COLOR=#000080]sudo nano /etc/sysctl.conf[/COLOR][/B]

y Finalmente Gracias a Dios colocamos la siguiente linea:

Insertar CODE, HTML o PHP:
[COLOR=#000080][B]vm.vfs_cache_pressure = 50[/B][/COLOR]

Gracias a Dios culminamos con este post, que me canso la mano pero bueno, espero que sea de su entendimiento y disfruten su optimizacion de balanceo de ram.

Saludos y me dejan sus reviews.!:encouragement::star2:
 

InfiltratorElement

Épsilon
Verificación en dos pasos desactivada
Verificado por Whatsapp
Desde
28 Jun 2011
Mensajes
857
[MENTION=72934]Zahi[/MENTION]

Excelente tutorial para los que entienden de qué se trata! Muy bien! :encouragement:
 

Zahi

Dseda
Verificación en dos pasos desactivada
Desde
27 Jul 2012
Mensajes
1.101
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Enlace eliminado

Excelente tutorial para los que entienden de qué se trata! Muy bien! :encouragement:

Gracias amigo, estamos para ello espero que les caiga fino y que no me odien los syadmin jeje.
 

jackemathe

Mi
Verificado
Verificación en dos pasos desactivada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
9 Nov 2011
Mensajes
3.110
Gracias por el tutorial [MENTION=72934]Zahi[/MENTION]
 

Zahi

Dseda
Verificación en dos pasos desactivada
Desde
27 Jul 2012
Mensajes
1.101
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
De nada amigo encantado que les guste el post.! :)
 

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba