Current time: 12-27-2024, 03:05 PM Hello There, Guest! (LoginRegister)


Post Reply 
Reinicio automatico
Author Message
tecfernandez92 Offline
Junior Member
*

Posts: 78
Joined: Sep 2009
Reputation: 0
Post: #1
Reinicio automatico
Hola de nuevo!
Bueno resulta que me he dado cuenta de una cosa.

Cuando mi server lleva 2-3 dias trabajando, en el panel me aparece que me tengo libres 250mb de Ram! (de 4gb).

Lo que hago es hacer un "reboot" y se soluciona. Despues del reboot me quedan libres 3.50gb de Ram.

Supongo que para vosotros que entendeis bastante os sobraria con meteros en el ssh, cambiar unos parametros y arreando. Yo como no tengo ni pajolera idea lo que veo más "facil" es hacer alguna cosa para que el server ejecute un reboot automaticamente (cada 2 dias o 3)

Se puede hacer? Como? Un saludo y gracias!

pd: siento ser tan preguntón pero no tengo ni idea y me tengo que enseñar a base de preguntaros jeje.
01-25-2010 02:19 AM
Find all posts by this user Quote this message in a reply
kurgans Offline
Moderator
*****
Moderators

Posts: 1,565
Joined: Feb 2008
Reputation: 23
Post: #2
RE: Reinicio automatico
Eso es normal en todas las maquinas con linux.
El sistema cachea la memoria de forma que el acceso es mas agil,

total used free shared buffers cached
Mem: 8199684 8152464 47220 0 23828 7543376
-/+ buffers/cache: 585260 7614424
01-25-2010 02:28 AM
Visit this user's website Find all posts by this user Quote this message in a reply
shiizpa Offline
Junior Member
*

Posts: 69
Joined: Mar 2009
Reputation: 2
Post: #3
RE: Reinicio automatico
Puedes limpiar la memoria agregando esto en tu crontab

Code:
crontab -e

Code:
0 */2 * * * echo 3 > /proc/sys/vm/drop_caches

echo 1 > /proc/sys/vm/drop_caches : Libera la pagecache.
echo 2 > /proc/sys/vm/drop_caches : Libera inodos y dentries.
echo 3 > /proc/sys/vm/drop_caches : Libera pagecache, inodos y dentries.

Esto limpiara tu memoria RAM cada 2 horas sin tener que reiniciar la máquina recuerda hacerlo como administrador.
01-25-2010 11:21 PM
Find all posts by this user Quote this message in a reply
kilburn Offline
Development Team
*****
Dev Team

Posts: 2,182
Joined: Feb 2007
Reputation: 34
Post: #4
RE: Reinicio automatico
A ver, solo por si a alguien no le ha quedado claro:

La memoria no usada no sirve para nada.

Por lo tanto, esa manía con intentar tener el máximo de memoria libre es una tontería. Deja que el kernel se encargue de gestionar la memoria que tiene tu sistema, que sabe hacerlo mejor que tú...
01-25-2010 11:27 PM
Visit this user's website Find all posts by this user Quote this message in a reply
shiizpa Offline
Junior Member
*

Posts: 69
Joined: Mar 2009
Reputation: 2
Post: #5
RE: Reinicio automatico
En los sistemas que utilizan el Kernel de Linux existe una forma de limpiar la memoria cacheada en RAM, que es información que está ahí por si hace falta, pero que no tiene por qué necesariamente estar ahí, es totalmente prescindible.

Apache es una aplicación que utiliza mucho ese tipo de memoria, y claro, en un servidor web puede provocar que se utilice más RAM de la cuenta y puede provocar problemas no deseados como el empezar a paginar, que no es otra cosa que empezar a utilizar el disco duro con información que debería estar en RAM y como la velocidad de acceso a disco es muy inferior al acceso a RAM pues el equipo puede parecer que se ha quedado “colgado”, de forma que ni siquiera podamos llegar a logarnos en el mismo.

Pero en el kernel 2.6.16 se introdujeron cambios y gracias a estos cambios la solución es muy sencillita, en el directorio /proc/sys/vm/ tenemos un fichero llamado drop_caches que es el encargado de decirle al kernel qué hacer con esa información que está en memoria, por defecto se permite el utilizar este tipo de memoria, pero para reducir RAM nos puede interesar que el kernel actúe de otra manera, modificando el valor del fichero con los siguientes valores:

* 0: No libera nada.
* 1: Libera la pagecache.
* 2: Libera inodos y dentries.
* 3: Libera pagecache, inodos y dentries.

La pagecache es la memoria la caché de páginas, un inodo es la representación de ficheros y directorios en memoria y las dentries son las entradas de directorio, componentes de un path, todos estos valores en RAM.

Para liberar podemos ejecutar estos comandos como root o con un sudo delante:

echo 1 > /proc/sys/vm/drop_caches : Libera la pagecache.
echo 2 > /proc/sys/vm/drop_caches : Libera inodos y dentries.
echo 3 > /proc/sys/vm/drop_caches : Libera pagecache, inodos y dentries.
(This post was last modified: 01-25-2010 11:50 PM by shiizpa.)
01-25-2010 11:43 PM
Find all posts by this user Quote this message in a reply
kilburn Offline
Development Team
*****
Dev Team

Posts: 2,182
Joined: Feb 2007
Reputation: 34
Post: #6
RE: Reinicio automatico
Quote:En los sistemas que utilizan el Kernel de Linux existe una forma de limpiar la memoria cacheada en RAM, que es información que está ahí por si hace falta, pero que no tiene por qué necesariamente estar ahí, es totalmente prescindible.

Verdadero. Por eso, el mismo kernel se encarga de "descachear" esta memória si hace falta.

Quote:Apache es una aplicación que utiliza mucho ese tipo de memoria, y claro, en un servidor web puede provocar que se utilice más RAM de la cuenta y puede provocar problemas no deseados como el empezar a paginar, que no es otra cosa que empezar a utilizar el disco duro con información que debería estar en RAM y como la velocidad de acceso a disco es muy inferior al acceso a RAM pues el equipo puede parecer que se ha quedado “colgado”, de forma que ni siquiera podamos llegar a logarnos en el mismo.

Falso. Apache no "consume" ese tipo de memoria. El kernel asigna esa memoria a los procesos siguiendo sus propias heurísticas. Como apache suele ser uno de los programas que más memoria consume, el kernel le asigna más cache habitualmente.

Eso sí, el kernel no es gilipollas, así que antes de empezar a forzar swaping liberará memoria cacheada para apache y la destinará a un mejor uso (por ejemplo, a hacer de cache de disco para reducir la carga de I/O).

Los problemas de swaping se dan cuando entre todos los programas consumen (ojo, consumen de verdad, no en cachés!) más memoria de la disponible en el sistema. Obviamente, en estos caso solo se puede o (1) pasar una parte de memoria al disco, lo que implica lentitud del sistema cuando se quiera recuperar esa parte de la memoria; o (2) matar procesos, que es lo que hace el kernel si se termina el espacio swap o simplemente no existe.

Quote:echo 1 > /proc/sys/vm/drop_caches : Libera la pagecache.
echo 2 > /proc/sys/vm/drop_caches : Libera inodos y dentries.
echo 3 > /proc/sys/vm/drop_caches : Libera pagecache, inodos y dentries.

Estas opciones fueron añadidas al kernel para realizar benchmarks o en casos muy muy muy específicos, no para ser usados como parámetros de "mantenimiento". Los hackers del kernel han trabajado (y discutido) mucho para que el sistema haga el mejor uso posible de la memória disponible, y nosotros no somos más listos que ellos.

Resumiendo: deja que el kernel se encargue de gestionar la memoria que tiene tu sistema, que sabe hacerlo mejor que tú.
01-26-2010 12:07 AM
Visit this user's website Find all posts by this user Quote this message in a reply
kurgans Offline
Moderator
*****
Moderators

Posts: 1,565
Joined: Feb 2008
Reputation: 23
Post: #7
RE: Reinicio automatico
Y yo me pregunto.....
Estando la memoria cacheada o libre notas cambio en el rendimiento de la maquina o es solo paranoico que veo que mi sistema dice que esta sin memoria libre por que esta asignada de la manera mas eficiente.
01-26-2010 12:11 AM
Visit this user's website Find all posts by this user Quote this message in a reply
kilburn Offline
Development Team
*****
Dev Team

Posts: 2,182
Joined: Feb 2007
Reputation: 34
Post: #8
RE: Reinicio automatico
No acabo de entender la pregunta Kurgans. En cualquier caso, debería haber un aumento del rendimiento... solo que no lo notarás demasiado porque cuando el sistema funciona bien la reserva de memoria no suele ser el "cuello de botella". Aun así ya te digo, si los kernel hackers lo decidieron así, es porque el rendimiento es mejor.
01-26-2010 12:18 AM
Visit this user's website Find all posts by this user Quote this message in a reply
kurgans Offline
Moderator
*****
Moderators

Posts: 1,565
Joined: Feb 2008
Reputation: 23
Post: #9
RE: Reinicio automatico
Nooo, si lo que me refiero es que no entiendo el tema de que no tengo memoria libre, yo dejo que el sistema gestione la memoria como tú opino que la grandes mentes que decidieron hacerlo así sus grandes razones tendrían y es evidente que funciona.

Entonces la pregunta que le hago al resto, es que si de verdad hay diferencia entre tener la memoria libre o cacheada, por que yo francamente no lo he notado, el servidor funciona igual de bien recién reiniciado como si lleva 100 días sin parar, si me preocupo como todos de lo que gasta cada proceso y si lo puedo remediar un poco trasteando aquí y allí, pero jamas me he preocupado por tener 8 gb de ram y que mi sistema diga que los 8 están en uso y menos viendo que funciona perfectamente y la carga de trabajo es asimilada sin problemas.
(This post was last modified: 01-26-2010 02:13 AM by kurgans.)
01-26-2010 02:04 AM
Visit this user's website Find all posts by this user Quote this message in a reply
kilburn Offline
Development Team
*****
Dev Team

Posts: 2,182
Joined: Feb 2007
Reputation: 34
Post: #10
RE: Reinicio automatico
Por si alguien todavía tiene dudas, aquí van un par de capturas de uno de mis servidores (que va bastante sobrado para la carga que tiene). En ellas podeis ver como el "uso" (cached) de ram sube hasta "gastarla" prácticamente toda, y tiene sus subidas y bajadas.... pero el servidor NUNCA ha tocado la swap:

   

   
01-26-2010 02:43 AM
Visit this user's website Find all posts by this user Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 2 Guest(s)