Principale utente con più risposte
Consumo eccessivo RAM windows server 2008

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
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
-
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
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
- Modificato Fabrizio GiammariniMVP, Moderator lunedì 2 aprile 2012 14:14
- Proposto come risposta Edoardo BenussiMVP, Moderator lunedì 2 aprile 2012 14:25
- Proposta come risposta annullata Edoardo BenussiMVP, Moderator lunedì 2 aprile 2012 15:38
-
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.
-
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.
-
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.
-
Curioso, ho risposto prima io ma la risposta giusta è quella di Fab.. ;-)
Edoardo Benussi
Microsoft MVP - Management Infrastructure
edo[at]mvps[dot]org -
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?
- Contrassegnato come risposta Edoardo BenussiMVP, Moderator martedì 3 aprile 2012 10:35
- Contrassegno come risposta annullato Edoardo BenussiMVP, Moderator martedì 3 aprile 2012 10:35
-
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!- Modificato GastoneCanaliModerator lunedì 2 aprile 2012 16:24
-
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....
-
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
-
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 -
Ciao Marcottt,
Visto che non ci sono stati altri feedback, per ora evidenzio la risposta di Fabrizio.
Grazie di tenerci aggiornati sul tuo percorso,
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.
-
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
-
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! -
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
-
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
-
grazie per aver postato la soluzione, ciao.
Edoardo Benussi
Microsoft MVP - Management Infrastructure
edo[at]mvps[dot]org