Bonjour à tous.
Voila j'ai un probleme avec un serveur vds qui rame tout le temps, et même avec une load average de 0.04.
En regardant avec top je vois que 3,5Go sur 3,8Go sont occupé hors les processus actif n'utilise que 3% de rame?ps aux me dis la même que les processus n'utilise a peu près rien.
Free me dis:
total used free shared buffers cached
Mem: 3865560 3508924 356636 0 344788 2622668
-/+ buffers/cache: 541468 3324092
Swap: 2095096 0 2095096
et cat /proc/meminfo me dis:
MemTotal: 3865560 kB
MemFree: 356280 kB
Buffers: 344796 kB
Cached: 2621460 kB
SwapCached: 0 kB
Active: 1380212 kB
Inactive: 1790844 kB
Active(anon): 96936 kB
Inactive(anon): 110440 kB
Active(file): 1283276 kB
Inactive(file): 1680404 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2095096 kB
SwapFree: 2095096 kB
Dirty: 1132 kB
Writeback: 0 kB
AnonPages: 204800 kB
Mapped: 14944 kB
Shmem: 2576 kB
Slab: 241164 kB
SReclaimable: 228124 kB
SUnreclaim: 13040 kB
KernelStack: 1712 kB
PageTables: 8696 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 4027876 kB
Committed_AS: 721668 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 20000 kB
VmallocChunk: 34359715588 kB
HardwareCorrupted: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 10240 kB
DirectMap2M: 3921920 kB
Quel qu'un pourrais me dire ou passe ma mémoire?
En cache?
# Mémoire ram occupée
Posté par saintamand . Évalué à 1.
Gagné.
[^] # Re: Mémoire ram occupée
Posté par NeoX . Évalué à 2. Dernière modification le 03 juin 2013 à 20:48.
pas mieux, c'est marqué dessus
# 4Go de cache?
Posté par jd440 . Évalué à -1.
Mais c'est enorme ?? 3G en cache?
Comment c'est possible
[^] # Re: 4Go de cache?
Posté par wismerhill . Évalué à 3.
Pourquoi?
Ton disque dur fait moins de 3Go?
[^] # Re: 4Go de cache?
Posté par jd440 . Évalué à 0. Dernière modification le 03 juin 2013 à 20:27.
Euh pas compris?
Mon probleme est:
- un serveur qui rame
- je recherche la source
- la ram semble occupé par du cache à 90%
Quel est le rapport avec le disque dur?
[^] # Re: 4Go de cache?
Posté par wismerhill . Évalué à 3.
Non, ta RAM est utilisée à 14% par les programmes et le système. Et comme il y a plein de RAM inutilisée, le noyau s'en sert comme cache disque, pour éviter de devoir lire plusieurs fois la même chose depuis le disque dur.
[^] # Re: 4Go de cache?
Posté par Zylabon . Évalué à 3. Dernière modification le 03 juin 2013 à 20:39.
Linux utilise toute la RAM libre pour mettre en cache ce qu'il lit sur le disque. Le rapport avec le disque dur (je pense) c'est qu'un disque qui ne contient que 3Go de donnée ne peux pas occuper plus de 3Go mis en cache.
Si ça rame, c'est pas à cause de ça, dès que la RAM est nécessaire pour autre chose elle est libérée.
Please do not feed the trolls
[^] # Re: 4Go de cache?
Posté par matthieu bollot (site web personnel, Mastodon) . Évalué à 3.
Le rapport avec le disque dur est faible, je pense que c'était une blague pour dire que tu n'as pas tout ton disque dur qui tient dans la ram…
Enfin bref, si t'as plein de cache c'est pas grave, ça veut dire que ça ram pas, c'est à un autre endroit qu'il faut chercher les lenteurs.
# regarde avec top, le % de wai
Posté par NeoX . Évalué à 3.
ce sont les attentes d'entrées/sorties
un disque dur qui pedale fera pedaler toute la machine,
meme si tu as plein de ram disponible
[^] # Re: regarde avec top, le % de wai
Posté par jd440 . Évalué à 0.
Voila le top
Je sais plus ou chercher car je suis mpassé d'un
mutu à vds1Go
1Go ==> 2Go
2Go ==> 4Go et 4 core
Pour faire tourner un prestashop avec 7 boutique et 7 Wp ca me parais pas mal et malgré ca ca continue de ramer?
Je comprend pas et ne sais plus ou chercher
Les cache sont activé, quasi tout les module on été activé?
[^] # Re: regarde avec top, le % de wai
Posté par NeoX . Évalué à 3.
ben il est bien ton top
charge à 0.09,
il passe 92.5% de son temps à "dormir"
qu'est ce qui te fait dire que ca "rame" ?
# Identification
Posté par Olivier (site web personnel) . Évalué à 8.
Il faut que tu arrives à identifier plus finement la source du problème:
- commence par essayer d'arrêter les processus qui ne servent à rien, à couper X (si il est présent), etc…, afin de voir si par hasard une des ces applications est la cause des problèmes
- utilise "iotop" pour identifier les gros consommateurs d'I/O, qui sont des bons candidats aux ralentissements
- d'ailleurs, dans la commande "top", regarde la valeur du "wait" time. C'est le temps que le kernel passe à attendre le hardware. Si il est excessif, c'est qu'il y a un problème de disque, de réseau, etc… Qu'ils soient physiques ou virtuels
- utilise "strace" (perso, j'aime bien "strace -f -e open -p") afin d'identifier si un process s'amuse à beaucoup ouvrir/lire/écrire des fichiers. Récemment, sur un soft "métier", j'ai trouvé une application qui faisait 1200 ouvertures/fermetures par seconde d'un même fichier…
- coté réseau, utilise "tcpdump/wireshark" pour voir si tu n'as pas des trafics réseaux inhabituels. Notamment, si par exemple tu as du mal à trouver un serveur DNS (UDP port 53), que tu as du trafic ipv6 "mal configuré", etc… Si une appli passe son temps à attendre des informations du réseau, cela peut expliquer les ralentissements.
- pour ce qui est du fait que tu as une vds, regarde si ton hôte peut t'indiquer/comparer les consommations d'I/O entre les vds, voir si cette vds n'est pas moins prioritaire que les autres
Quand à la mémoire vive:
- Utilises en temps que root "sync ; echo 3 > /proc/sys/vm/drop_caches", ce qui va vider tous les caches (lecture/écriture) de la vds. Ainsi, en regardant l'évolution de "free", tu pourras voir si tu as des applis qui font beaucoup de lectures/écritures
- enfin, tu as plus de 500Mo de cache en écriture ( -/+ buffers/cache: 541468 3324092). Cela fait beaucoup. Tu dois avoir un process qui écrit beaucoup, "iotop" devrait donc t'aider à dénicher le coupable.
[^] # Re: Identification
Posté par jd440 . Évalué à 0.
Merci beaucoup,
Je suis en train de décortiquer tout tes conseils
Pour les processus y a pas grand chose sortit de http/mysql/smtp
iotop.
Je connaissais pas, et en lancant iotop j'ai découvert.
Je vois bien le mysql qui lit et écris mais ca semble raissonable (il apparait (read 500K/s), reste `seconde, puis disparait 1s seconde etc..)
Wait time dans le top je suis au alentour de 0.2%wa
pour le strace il me dis:
root@vds:~# strace -f -e open -p
strace: option requires an argument—'p'
Malheureusement le tcdump ne me dis pas grand chose..
Coté mémoire vive.
juste après "sync ; echo 3 > /proc/sys/vm/drop_caches" ma vive est déjà à 300Mo puis reste relativement Stable
Pour le processus écrivant beaucoup je pense que c'est le mysql
[^] # Re: Identification
Posté par barret benoit . Évalué à 1.
VDS ?
alors peut être que je me fourvoie, mais amha :
ça veut dire que l'espace disque alloué est sur du stockage réseau ?
des serveurs virtuels (dans le sens ressources virtualisées) j'ai eu à en administrer, et c'est une horreur côté entrées/sorties disques…
haaa les inconvénients du virtual hosting sur plateforme mutualisée…
[^] # Re: Identification
Posté par jd440 . Évalué à 0.
Merci.
voici le hdparm
hdparm -tT /dev/sda1
/dev/sda1:
Timing cached reads: 9832 MB in 2.00 seconds = 4920.36 MB/sec
Timing buffered disk reads: 258 MB in 3.12 seconds = 82.72 MB/sec
Pour le traffic on est à : 8000/j pour l'ensemble, donc la charge visiteur n'est pas énorme
Pour mysql non jh'ia pas fait d'optimisation mysql, mais les cache sont actié
oui prestashop a un solution de cache activé comme les wordpress
[^] # Re: Identification
Posté par barret benoit . Évalué à 1. Dernière modification le 04 juin 2013 à 08:28.
Bon niveau disque c'est bon…
Comment est-ce que tu voies que ton serveur rame tout le temps ?
Le temps d'affichage d'une page ?
C'est quelle distribution Linux ? et quelle version de noyau ?
Là ça relève des compétences d'un admin sys et réseaux linux…
Mise en place de monitoring, nettoyage et sécurisation
En général on vérifie basiquement :
- mises à jour de sécurité activées
- services activés à quels utilisateurs
- utilisateurs/comptes système par défaut inutilisés désactivés/supprimés
- ports publiques ouverts
- logs de chacun de ces services, et du auth.log, secure.log, messages.log, etc.
pour voir si l'un de ces services ne subirait pas des attaques
- sécurisation du ssh et désactivation du ftp suivant qui peut uploader sur le serveur
- logs apache access et errors : un fichier par virtualhost
C'est pas ton apache qui a du mal à fournir sinon ?
[^] # Re: Identification
Posté par Olivier (site web personnel) . Évalué à 2.
man strace …
le paramètre "-p" doit être suivit du numéro de process que l'on veut étudier. Tu retrouveras ce numéro de process avec la commande "ps -edf" (2nd colone)
regarde aussi du coté du paramètre "-e", pour voir les filtres (ici, c'est "open"), que tu veux utiliser.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.