none
Consumo eccessivo RAM windows server 2008 RRS feed

  • Domanda

  • Ciao a tutti,

    da un po' di tempo un cliente ha questo problema: il consumo di ram cresce rapidamente (diciamo in circa 10 gg) fino a occupare interamente gli 8gb disponibili, il server si siede e sono costretti a riavviare.

    Successivamente al riavvio la memoria in uso è circa 2gb (secondo task manager)

    Il server è un server IBM x3500 M3 con 2 cpu E5640 dotato di 2008 R2 STANDARD, installato sql 2008R2 express, un'applicativo per la gestione di mail & fax, cobian backup (10 mi sembra comunque l'ultimo) per il backup su disco usb, F-secure antivirus ed è un DC, DNS e DHCP.

    Il problema principale è che non riesco a capire chi utilizza la RAM, nel task manager indica che la ram è pienamente occupata ma se sommo tutti i processi e la relativa ram indicata non arrivo a 8GB. Ho fatto anche la prova di chiudere tutti (tutti compresi molti di rete) i servizi fino a renderlo pressoché inutilizzabile ma rimanevano occupati circa 3,7 Gb. Come già detto riavviato il server, tutti i servizi attivi, usa circa 2gb.

    Mi serve aiuto per capire cosa succede, sarebbe stupendo che qualcuno mi desse la soluzione su piatto d'argento (anche di plastica andrebbe bene) ma sarei anche contento di capire se mal comprendo le indicazioni di task manager e dove è finita la ram che manca.

    Marco

    lunedì 2 aprile 2012 13:41

Risposte

  • Io ti suggerirei piuttosto Process Explorer per vedere in un "albero" i vari processi e fare un po' di diagnostica

    http://technet.microsoft.com/en-us/sysinternals/bb896653


    Fabrizio Volpe
    MVP Directory Services
    MCITP Windows 2008
    MCSE (NT4)(2000)(2003) - MCSA (2003)
    Fabrizio[_dot_]Volpe[_at_]GMX[_dot_]com

    • Contrassegnato come risposta Anca Popa lunedì 9 aprile 2012 09:41
    martedì 3 aprile 2012 08:50
  • Ho scoperto l'arcano. Un software del cliente (una specie di server di posta specializzato per l'attività) genera un sacco di file, in particolare la cartella di solo questo sw contiene quasi 1.400.000 file. Inoltre il sistema di backup del cliente prevede in prima battuta la copia dei file di tutto il server in 5 cartelle quotidiane di una unità disco separata, che poi vengono periodicamente salvate ed esportate.

    In pratica il problema è questo server gestisce circa 10 / 12 milioni di file e questo comporta da parte del sistema di cache di windows una occupazione di ram per ogni file gestito.....

    ora voglio caprie se eiste un modo automatico per far "sgonfiare" la ram occupata dai metafile (con rammap posso fare empty system working set ma manualmente credo) o se devo fare acquistare altra ram

    comunque grazie a tutti x il supporto e spero che questa nuova esperienza sia di aiuto a qualcuno.

    marco

    • Contrassegnato come risposta Marcottt venerdì 27 aprile 2012 08:08
    venerdì 27 aprile 2012 08:08

Tutte le risposte

  • Il consumo di RAM è probabilmente causato da SQL Server 2008 R2.

    Imposta il valore max memory usage e l'LPIM (Lock pages in memory): http://msdn.microsoft.com/en-us/library/ms178067.aspx

    Per la memoria suggerita leggi questo articolo: http://www.sqlservercentral.com/blogs/glennberry/2009/10/29/suggested-max-memory-settings-for-sql-server-2005_2F00_2008/

    Il consumo di memoria comunque non è necessariamente dovuto ad un malfunzionamento, è un comportamento normale di SQL Server. Leggi qui per ulteriori informazioni: http://sqlblog.com/blogs/jonathan_kehayias/archive/2009/08/24/troubleshooting-the-sql-server-memory-leak-or-understanding-sql-server-memory-usage.aspx

    lunedì 2 aprile 2012 14:09
    Moderatore
  • Ciao, io punterei su sql. Controlla i dbase quanto sono grandi ed eventualmente senti da chi gestisce il gestionale\dbase un'eventuale compattazione. E' anche vero che se hai 4GB di database ad esempio sei già corto come Ram ed anche compattandolo non risolvi molto. Li ti tocca upgradare.

    Ciao.

    A.

    lunedì 2 aprile 2012 14:10
    Moderatore
  • Curioso, ho risposto prima io ma la risposta giusta è quella di Fab.. ;-) aggiungo comunque che PRIMA dovrebbe guardare la dimensione dei suoi Dbase del suo gestionale (che ipotizzo abbia installato) e poi andare ad impostare l'LPIM perchè se il dbase è già più della metà della ram gli si pianta SQL se tocca la memoria...Può essere benissimo che sia arrivato al limite massimo e debba fisicamente aggiungere banchi. 8 Gb per un server che fa un po di robina sono proprio pochini...dove c'è un SQL poi... :-) Ciao bella gente.

    A.

    • Contrassegnato come risposta Marcottt lunedì 2 aprile 2012 15:09
    • Contrassegno come risposta annullato Marcottt lunedì 2 aprile 2012 15:09
    lunedì 2 aprile 2012 14:55
    Moderatore
  • rispondo ad entrambi.

    innanzitutto grazie.

    Si anche io puntavo al sql, poichè l'applicativo di mail e fax è fornito da terzi ed anche l'installazione dello stesso volevo trovare un riscontro oggettivo prima di dichiararlo al cliente. Il sql è la versione express 2008, il fornitore dice che non può andare oltre un tot e nel task manager dichiara di occupare 1,2 gb. In effettti se buttiamo giù sql la ram disponibile aumenta di circa 1,2 gb... il problema è che ne rimane comunque allocata parecchia anche con il servizio sql giù e questo non lo capisco.

    Ora mi leggo meglio i link che mi avete indicato.

    lunedì 2 aprile 2012 15:14
  • Curioso, ho risposto prima io ma la risposta giusta è quella di Fab.. ;-)

    se guardi la differenza in minuti sei stato anticipato di un minuto da Fab88

    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    lunedì 2 aprile 2012 15:38
    Moderatore
  • Hum...il DB del technet non funziona!! quando ho risposto ero 2 minuti avanti e non c'erano altre risposte nel thread! Poi mi ritrovo 2 min indietro!! ah ah, per questo dicevo "curioso" non è un problema! Però è strano, si vede che quando le risposte sono contemporanee indiscriminatamente assegna 1 min di differenza.

    BUG!!!! A parte le amenità

    Attento Marco che quando hai 1,2 GB di DB parte prendendosi tutta quella ram, poi si gonfia ancora con le operazioni. per questo dicevo "se supera la metà".

    Buon lavoro!

    A.

    P.S Voglio un server NTP con l'ora ufficiale al millesimo in pagina iniziale. ;-)

    OT @ Edoardo, come sei messo col Lync?

    lunedì 2 aprile 2012 15:53
    Moderatore
  • Hai provato con  il task manager a controllare l' allocazione di memoria di tutti i processi, per capire chi ruba "ram" anche dopo lo spegnimento di sql?

    anche perfmon ti può aiutare nell'analisi...


    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!


    lunedì 2 aprile 2012 16:24
    Moderatore
  • Ciao, in effetti è quello che abbiamo provato a fare spegnendo tutti i servizi (sql, cobian, dns, windows update, programmi vari, antivirus) ma alla fine il task manager indica ancora impeganti 3,7 gb (per un server quasi compeltamente fermo) ma la somma dei processi nel task manager non fa 3,7 gb..... al massimo 800 mb.......

    più tardi provo ad installare ed eseguire vmmap x vedere se si capisce qualcosa....

    martedì 3 aprile 2012 07:51
  • Io ti suggerirei piuttosto Process Explorer per vedere in un "albero" i vari processi e fare un po' di diagnostica

    http://technet.microsoft.com/en-us/sysinternals/bb896653


    Fabrizio Volpe
    MVP Directory Services
    MCITP Windows 2008
    MCSE (NT4)(2000)(2003) - MCSA (2003)
    Fabrizio[_dot_]Volpe[_at_]GMX[_dot_]com

    • Contrassegnato come risposta Anca Popa lunedì 9 aprile 2012 09:41
    martedì 3 aprile 2012 08:50
  • OT @ Edoardo, come sei messo col Lync?

    il Lync è su ma non ho molto tempo da dedicarci... lo farò più avanti.

    ciao.


    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    martedì 3 aprile 2012 10:36
    Moderatore
  • Ciao Marcottt,

    Visto che non ci sono stati altri feedback, per ora evidenzio la risposta di Fabrizio.

    Grazie di tenerci aggiornati sul tuo percorso,


    Anca Popa Follow ForumTechNetIt on Twitter

    La Conferenza Italiana sulla Virtualizzazione

    Microsoft offre questo servizio gratuitamente, per aiutare gli utenti e aumentare il database dei prodotti e delle tecnologie. Il contenuto viene fornito “così come è” e non comporta alcuna responsabilità da parte dell'azienda. 

    lunedì 9 aprile 2012 09:44
  • Ciao oggi non mi è stato possibile verificare, andrò domani e nel frattempo spero che si sia "gonfiato" un po' il server così da evidenziare meglio il problema.

    al momento non vedo una soluzione diretta, devo analizzare con process explorer. comunque il sql montato è l'express quindi credo che non possa "sforare" più di tanto a causa delle limitazioni stesse della versione express.

    Appena possibile vi aggiorno

    martedì 10 aprile 2012 10:50
  • Che risultati hai ottenuto con vmmap?

    Gastone Canali >http://www.armadillo.it

    Se alcuni post rispondono al tuo quesito (non necessariamente i miei), ricorda di contrassegnarli come risposta e non dimenticare di contrassegnare anche i post utili . GRAZIE!

    martedì 10 aprile 2012 19:25
    Moderatore
  • Oggi ho fatto una verifica ma il server non aveva un particolare uso della memoria in atto quindi non ho potuto rilevare molto.

    con vmmap in verità non avevo riscontrato niente di rilevante, probabilmente devo prima usare process explorer per identificare quale processo si mangia la ram di nascosto.

    Su qeusto server gira unìapplicazione che genera moltissimi file, avevo riscontrato che il backup genera una cartella con i file cancellati che nel tempo aveva ragginto una dimensione non particolare ma conteneva circa 600k file. Ho modificato alcuni paramentri così da cancellare i file più vecchi di circa 90 giorni, così mi attesto sui 150k file. Stavo pensando che forse questo numero di file (in una sola delle cartelel di backup!!)  consisitente possa generare dentro a windows i problemi di ram ( e spiegherebbe anche perchè non capisco a quale processo attibuire la ram mancante). L'antivirus non effettu scansione su questa cartella quindi non dovrebbe essere lui il problema.

    Ora attendo di vedere cosa fa il server... nei gg scorsi era festa quindi difficile da capire....

    ciao a tutti.

    Marco

    mercoledì 11 aprile 2012 10:21
  • Ho scoperto l'arcano. Un software del cliente (una specie di server di posta specializzato per l'attività) genera un sacco di file, in particolare la cartella di solo questo sw contiene quasi 1.400.000 file. Inoltre il sistema di backup del cliente prevede in prima battuta la copia dei file di tutto il server in 5 cartelle quotidiane di una unità disco separata, che poi vengono periodicamente salvate ed esportate.

    In pratica il problema è questo server gestisce circa 10 / 12 milioni di file e questo comporta da parte del sistema di cache di windows una occupazione di ram per ogni file gestito.....

    ora voglio caprie se eiste un modo automatico per far "sgonfiare" la ram occupata dai metafile (con rammap posso fare empty system working set ma manualmente credo) o se devo fare acquistare altra ram

    comunque grazie a tutti x il supporto e spero che questa nuova esperienza sia di aiuto a qualcuno.

    marco

    • Contrassegnato come risposta Marcottt venerdì 27 aprile 2012 08:08
    venerdì 27 aprile 2012 08:08
  • grazie per aver postato la soluzione, ciao.

    Edoardo Benussi
    Microsoft MVP - Management Infrastructure
    edo[at]mvps[dot]org

    venerdì 27 aprile 2012 08:14
    Moderatore