Les infrastructures (1: La consolidation)
Par Médéric Morel le 30 mars 2008, 22:00 - Articles - Lien permanent
Voici le premier d'une série de billets sur les infrastructures IT. Celles-ci sont le socle sur lequel fonctionnent toutes les applications de l'entreprise. Ce socle est constitué de 2 couches distinctes : - L'infrastructure matérielle composée par les serveurs, les systèmes de stockage et le réseau,
- L'infrastructure logicielle qui comprend les logiciels qui offrent des services aux autres applications. Il s'agit par exemple des bases de données, des annuaires ou encore des bus d'échange de message (ESB).
- De l'explosion de la demande de capacité de traitement et de stockage,
- De la pression sur les coûts en raison notamment des prix élevés des m² de salles blanches,
- De l'augmentation des prix de l'énergie, car les centres de production en consomment beaucoup, à la fois pour les serveurs, mais aussi pour la climatisation.
Qu'est ce que la consolidation ?
La consolidation est une démarche qui consiste à réorganiser, en plusieurs étapes, les infrastructures en vu de réduire les coûts, d’augmenter la cohérence et d’améliorer (un peu) le taux d’utilisation des ressources.
La situation initiale avant consolidation ressemble généralement à la figure suivante avec un SI où les équipements sont très fortement hétérogènes et sont dispersés sur plusieurs sites de production sans cohérence d’ensemble. Dans ce type d'organisation, il n'y a pas (encore) de datacenter et plusieurs équipes exploitent les sites de production.
La démarche de consolidation se conduit en 3 étapes:
Etape 1 : le regroupement. Cette étape consiste à rassembler tous les équipements dans un centre de production unique appelé datacenter. Cette opération permet la réalisation d’économies substantieles puisqu’elle toutes les équipes d’administrations travaillent désormais sur le même site.
Etape 2 : la mutualisation. Cette étape repose sur la mise en place d’outils d’administration et de supervision unifiés pour l’ensemble des serveurs et équipements réseaux. Les économies proviennent de la réduction du nombre d’outils utilisés. C’est aussi à cette étape que l’on cherche à réduire la diversité des OS, des bases de données et des serveurs d’application afin d’augmenter la cohérence de l’infrastructure.
Etape 3 : la rationalisation. Il s’agit ici de rationaliser l’utilisation des serveurs en regroupant les applications de façon à améliorer le taux d’utilisation des équipements. Cette étape peut par exemple prendre la forme du regroupement des bases de données ou des applications J2EE sur quelques (gros) serveurs.
Conclusion
La consolidation est une démarche que nombres d’entreprises ont démarrée au début des années 2000 après la fin de la première bulle Internet. En effet, cette période a coïncidée avec la multiplication des solutions logicielles hétérogènes au détriment de la cohérence générale et au prix de coûts d’exploitation exorbitants. Aujourd’hui, la plupart des entreprises ont atteints les étapes de mutualisation (2) ou de rationalisation (3). La phase de consolidation est donc en train de s’achever.Il n’en demeure pas moins que si la consolidation a permis une réduction significative des coûts, le taux d’utilisation des équipements reste très bas. Il faut donc se tourner vers d'autres approches pour augmenter sensiblement l'utilisation des serveurs. L'une d'entre elles est la virtualisation, nous en reparlerons dans le prochain billet.


Commentaires
A la lecture de se billet je me demandais s'il y avait éventuellement lieu de faire un parallèle entre le constat de gaspillage de CPU des serveurs (15 et 20%) et le constat que je fais au sujet des architectures logicielles dans mon papier sur Java 5 au sujet de la multitude d'API non-maîtrisées par les concepteurs.
Le point commun serait la tendance actuelle pour résoudre tous les problèmes, qu'ils soient d'ordre logiciel ou d'infrastructure à faire appel au "toujours plus". Une sorte de fuite en avant irréfléchie. Les principaux maux de l'informatique serait donc l'obésité et l'anarchie. Lié à l'absence de vue globale des SI, à la disponibilité de ressources CPU pratiquement sans limite et à une culture technique qui ne valorise pas la sobriété.
A ce sujet, je suis toujours admiratif de la sobriété d'un langage de commande d'un OS comme UNIX conçu il y a bientôt 40 ans. Quelle efficacité ! Quelle sens de l'économie !
Peut-être pourrait-on même aller plus loin et souhaiter que les idées de parcimonie et d'économie introduites par le soucis actuel de développement durable fassent leur chemin jusque dans la conception de SI.
Et si le futur des infrastructure c'était le cloud computing ? http://www.fredcavazza.net/2008/04/...
Effectivement le cloud-computing semble clairement l'avenir des infrastructures.
Nous en parlerons de façon détaillée dans le troisième article de cette série.
Pour travailler depuis plus de 2 ans sur des infrastructures de ce type (consolidée ou mutualisée) il faut bien reconnaître que cela à quelques avantages. Pirmin parle de gaspillage des CPU, je préfère une vision plus optimiste qui porte sur l’utilisation par un serveur des ressources qui ne sont pas utilisées par d’autres. Typiquement le serveur batch (qui travaille plutôt la nuit) peut partager ces ressources avec le serveur http (qui est généralement sollicité le jour). Autre avantage : le temps de mise à disposition d’une infrastructure. Que ce soit sur de la consolidation ou de la virtualisation, on gagne rapidement le temps de mise à disposition des ressources (puisque l’on « économise » le délai d’achat du matériel).
Maintenant, ce type de plateforme demande une attention et une mise en œuvre bien particulière. En effet, on ne configure pas une VM de la même manière qu’un serveur stand-alone. Pour illustrer mon propos un petit exemple vécu. Lors de la virtualisation de nos serveurs Windows (via VMWare) et surtout avec la migration vers de la volumétrie SAN, nous n’avons pas changé la planification du scan antivirus. Et là patatraque ! 200 serveurs qui attaquent en lecture la baie aux mêmes horaires provoquent l’effondrement des performances de cette dernière. Dommage pour les serveurs de traitement qui faisait tourner des batchs au même moment !!
Donc la virtualisation et la consolidation oui mais attention à bien revoir toutes les procédures d’administration/déploiement/paramétrage/ « and so on ». Et je ne parlerai pas de capacity planning parce que c’est un autre sujet.
Fil des commentaires de ce billet