Hello tout le monde,
De mon coté j'ai un autre point de vue, surtout avec la généralisation
de la virtualisation.
Pour un serveur physique, il est clair que le stockage est souvent pas
cher, et ne pas mettre de swap est des fois pas une bonne idée.
Par contre la règle (vieille !) de mettre en swap 2 fois la RAM est
assez stupide, surtout quand on a des machines avec 64G ou plus... Le
temps que vas mettre l'OS a faire des I/O sera tellement trop élevé que
ça va exploser le système et que de toute façon ça va se terminer par un
downtime ou des gens qui vont râler.
Donc de mon coté en général je ne mets pas plus que 10Go de SWAP
(quelque soit l'OS) quand on est sur du bare métal.
A l'opposé sur de la machine virtuelle, je deviens plutôt facho.
En effet, du swap sur n VM sur UN disque ou une baie
SAN/NAS/iSCSI/whatever deviens un truc de qui est largement dangereux et
peux foutre en l'air un hyperviseur avec 20 vm en l'air juste parce
qu'on a un vm qui a décidé de swapper comme un malade (genre la VM qui
fait 20GO de swap, déjà vu ce genre de délires).
Donc en général, je fais la chose suivante :
- OS M$ Windows : swap = 0
- OS Linux : swap entre 0 et 1G (en général je mets 512Mo)
- OS BSD : swap 512Mo
Pourquoi ces limites de swap ? Et bien sur ESXi il y a le balloon en
RAM, on peux garantir un niveau de ram et "laisser l'hyperviseur" ranger
le bordel si besoin.
Donc typiquement, si mon appli en VM a besoin de 1G, je mets 2Go avec
une garantie de 1,2Go. Pas de swap, pas de pb....
Et puis je préfère un Out of Memory Kill que d'avoir perdu la main sur
les 20 vm de cet hyperviseur.
Dernier point, la dedup (a priori) en RAM existe sur pas mal
d'hyperviseur, donc il est potentiellement intéressant de faire 1VM = 1
service que de faire une VM avec 1000 services comme sur un serveur
physique...
Xavier
--
Xavier Beaudouin
_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/