{"id":226,"date":"2012-10-07T11:14:16","date_gmt":"2012-10-07T10:14:16","guid":{"rendered":"http:\/\/dev.qualilogy.com\/fr\/?p=226"},"modified":"2013-09-24T15:01:26","modified_gmt":"2013-09-24T14:01:26","slug":"plus-avec-moins","status":"publish","type":"post","link":"http:\/\/qualilogy.com\/fr\/plus-avec-moins\/","title":{"rendered":"Plus avec moins"},"content":{"rendered":"<p><a href=\"http:\/\/vicken.deviantart.com\/\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-full wp-image-2402\" title=\"More With Less\" alt=\"Plus avec moin\" src=\"http:\/\/qualilogy.com\/wp-content\/uploads\/2012\/10\/QualMoreWithLess.jpg\" width=\"276\" height=\"415\" \/><\/a>Une question que je vois pos\u00e9e r\u00e9guli\u00e8rement : comment am\u00e9liorer la productivit\u00e9 des d\u00e9partements IT ? En notre \u00e9poque de crise \u00e9conomique, de comp\u00e9titivit\u00e9 accrue, de globalisation, comment r\u00e9duire encore les co\u00fbts, o\u00f9 trouver de nouvelles sources d\u2019optimisation ? Bref, comment faire \u00ab plus avec moins \u00bb ?<\/p>\n<p>Je suis s\u00fbr que beaucoup vont instantan\u00e9ment penser \u00e0 \u00ab comment am\u00e9liorer la productivit\u00e9 des d\u00e9veloppeurs et des projets ? \u00bb mais je crois que, de plus en plus, ce sont les d\u00e9partements de Production qui sont \u00e0 m\u00eame de mieux r\u00e9pondre \u00e0 cette question, et ce gr\u00e2ce \u00e0 la virtualisation.<\/p>\n<p><!--more--><\/p>\n<p>Auparavant, la Production \u00e9tait vue comme une contrainte, parce qu\u2019il fallait une bonne dose de bureaucratie, de proc\u00e9dures et de patience pour pouvoir disposer de la moindre ressource, serveur ou espace disque.<\/p>\n<p>Et lorsque survenait un probl\u00e8me dans l\u2019environnement de production, il fallait vraiment que ce soit s\u00e9rieux pour que quelqu\u2019un se d\u00e9cide \u00e0 investiguer. Je veux dire, si votre serveur de d\u00e9veloppement ou de QA \u00e9tait lent, personne n\u2019allait vraiment se pencher dessus.<\/p>\n<p>Maintenant, lorsque vous avez besoin d\u2019une machine, ou de plus de CPU ou d\u2019espace disque, vous envoyez un mail et vous vous attendez \u00e0 voir votre demande satisfaite ASAP, le plus souvent en moins de 48 heures, voire la veille pour le lendemain. La r\u00e9ponse de la Production aux besoins des utilisateurs s\u2019est r\u00e9ellement am\u00e9lior\u00e9e. Gr\u00e2ce \u00e0 la virtualisation, une nouvelle VM (Virtual Machine ou machine virtuelle) s\u2019installe en 3 clicks de souris, et l\u2019ajout de ressources dans votre VM actuelle en encore moins de temps.<\/p>\n<p>Voil\u00e0 pour la partie \u00ab plus \u00bb de l\u2019\u00e9quation.<\/p>\n<p>Mais il existe une loi naturelle selon laquelle plus il est facile d\u2019obtenir une ressource et plus le niveau de gaspillage de celle-ci augmente. Et cette loi se v\u00e9rifie encore avec la virtualisation, sous la forme d\u2019un ph\u00e9nom\u00e8ne connu sous le nom de \u2018prolif\u00e9ration des VM\u2019, principale pr\u00e9occupation des d\u00e9partements de Production \u00e0 l\u2019heure actuelle, car principale source de co\u00fbts, avec la croissance exponentielle du stockage (en moyenne 30% chaque ann\u00e9e).<\/p>\n<p>Comment \u00e9viter l\u2019inflation des budgets et faire \u00ab plus avec moins \u00bb ? La r\u00e9ponse se trouve dans la Gestion de la Capacit\u00e9 (Capacity Management), dont nous allons pr\u00e9senter les principaux axes tels que d\u00e9finis par ITIL.<\/p>\n<h3><strong>Conna\u00eetre ce que l\u2019on a<\/strong><\/h3>\n<p>La virtualisation est un march\u00e9 nouveau, en forte croissance et la comp\u00e9tition est tr\u00e8s forte entre ses diff\u00e9rents acteurs pour obtenir des parts plus importantes de ce march\u00e9. Les directions de Production le savent bien qui font jouer la concurrence au maximum, afin d\u2019acqu\u00e9rir aux meilleurs co\u00fbts les ressources hardware (CPU, m\u00e9moire, cabines de disques, etc.) et logicielles (OS, solutions de virtualisation, etc.) n\u00e9cessaires \u00e0 leurs infrastructures.<\/p>\n<p>Ces derni\u00e8res, en contrepartie, se scindent d\u00e9s lors en silos technologiques diff\u00e9rents. On va fr\u00e9quemment trouver au sein d\u2019un m\u00eame d\u00e9partement des serveurs Solaris, IBM, x86, des OS AIX, Linux, Windows, etc. et des solutions de virtualisation VmWare ou HyperV ou autres selon que telle ou telle offre s\u2019av\u00e8re plus int\u00e9ressante d\u2019une ann\u00e9e sur l\u2019autre. Sans parler de solutions de stockage SAN, NAS, etc. Certainement, le segment de march\u00e9 o\u00f9 les avanc\u00e9es technologiques sont les plus importantes et la comp\u00e9tition la plus f\u00e9roce. Si ce dernier sujet vous int\u00e9resse, vous connaissez certainement <a title=\"Le blog de Philippe Nicolas\" href=\"http:\/\/filestorage.blogspot.fr\/\" target=\"_blank\">le blog de mon ex-coll\u00e8gue et n\u00e9anmoins ami Philippe Nicolas.<\/a><\/p>\n<p>Cette multiplication des technologies permet \u00e9galement de mieux r\u00e9pondre aux besoins des d\u00e9partements Etudes et D\u00e9veloppement. Une base de donn\u00e9es Oracle critique, avec un volume de transactions tr\u00e8s \u00e9lev\u00e9 sera plus \u00e0 l\u2019aise sur un serveur Unix alors que pour un serveur de mails non critique, une machine virtuelle sous Windows fera l\u2019affaire. Et l\u2019on trouvera probablement une solution de stockage hautement performante mais \u00e9galement co\u00fbteuse pour la base de donn\u00e9es et des disques moins rapides mais \u00e9galement moins chers pour le serveur de mails.<\/p>\n<p>G\u00e9rer un tel parc h\u00e9t\u00e9rog\u00e8ne n\u00e9cessite d\u00e9s lors une solution de Capacity Management, capable de reconna\u00eetre ces diff\u00e9rentes technologies et de fournir des m\u00e9triques normalis\u00e9es : la valeur d\u2019un MIPS varie selon les constructeurs et \u00e9diteurs.<\/p>\n<h3><strong>Conna\u00eetre l\u2019\u00e9tat de ce que l\u2019on a<\/strong><\/h3>\n<p>Conna\u00eetre son infrastructure n\u2019est pas suffisant, il faut \u00e9galement conna\u00eetre son \u00e9tat : quels sont les serveurs et les machines virtuelles en saturation, les contentions de ressources, bref les incidents. Mieux encore, il est crucial de pouvoir identifier les risques sur ces ressources avant que ne survienne une anomalie qui va mettre en d\u00e9faut la base de donn\u00e9es critique ou toute autre application indispensable \u00e0 la bonne marche de l\u2019entreprise. Lorsqu\u2019un syst\u00e8me de paiements bancaires ne peut pas respecter les \u00e9ch\u00e9ances en attente parce qu\u2019un backup ne s\u2019est pas termin\u00e9 \u00e0 l\u2019heure, il vaut mieux le savoir le plus t\u00f4t possible avant que le t\u00e9l\u00e9phone ne commence \u00e0 sonner.<\/p>\n<p>La premi\u00e8re t\u00e2che d\u2019un Capacity Manager, lorsqu\u2019il arrive au travail le matin, consiste \u00e0 v\u00e9rifier l\u2019\u00e9tat de son infrastructure. L\u00e0 encore, une solution de Capacity management doit :<\/p>\n<ul>\n<li>Donner une vue d\u2019ensemble qui permette d\u2019identifier imm\u00e9diatement si une machine a connu ou va conna\u00eetre un probl\u00e8me (alerte sur un seuil de ressources).<\/li>\n<li>Permettre un drill-down, depuis le CPD, le cluster, le serveur, la machine virtuelle au sein du serveur, la ressource en probl\u00e8me sur cette VM, etc.<\/li>\n<\/ul>\n<h3><strong>R\u00e9pondre aux demandes des utilisateurs<\/strong><\/h3>\n<p>Nous l\u2019avons d\u00e9j\u00e0 dit, la virtualisation am\u00e8ne un niveau d\u2019exigence plus \u00e9lev\u00e9 des utilisateurs, et la r\u00e9ponse \u00e0 une demande de ressources de la part du \u2018business\u2019 doit \u00eatre satisfaite le plus rapidement possible. Il ne s\u2019agit pas seulement de faire plus, mais aussi mieux et plus vite.<\/p>\n<p>Il faut donc pouvoir identifier les ressources inutilis\u00e9es qu\u2019il est possible d\u2019employer \u00e0 cet effet, par exemple :<\/p>\n<ul>\n<li>Une machine virtuelle inactive ou \u00e9teinte, mais qui consomme de l\u2019espace disque.<\/li>\n<li>Une machine virtuelle dormante, inutilis\u00e9e depuis plus de 20 semaines : un environnement de tests mis \u00e0 disposition de tel projet, qui a termin\u00e9 sa QA mais a \u2018oubli\u00e9\u2019 de le signaler.<\/li>\n<\/ul>\n<p>Un autre d\u00e9fi consiste \u00e9galement \u00e0 r\u00e9pondre rapidement aux demandes correspondant \u00e0 une hausse de l\u2019activit\u00e9, par exemple, une application qui voit son nombre d\u2019utilisateurs augmenter brusquement, \u00e9v\u00e8nement dont la Production est rarement inform\u00e9e \u00e1 l\u2019avance. Dans ce cas, le Capacity Manager doit \u00eatre capable d\u2019identifier quel cluster est disponible pour h\u00e9berger une machine virtuelle avec un profil de consommation de ressources plus \u00e9lev\u00e9e. Tout en respectant les seuils de disponibilit\u00e9 HA (High Availability), bien s\u00fbr.<\/p>\n<h3><strong>Capacity Planning<\/strong><\/h3>\n<p>Le Capacity Planning constitue la forme la plus avanc\u00e9e de la gestion de la capacit\u00e9, lorsque le Capacity Manager doit \u00eatre capable, non plus seulement de r\u00e9agir \u00e0 des incidents ou des demandes utilisateurs, mais de planifier de mani\u00e8re proactive la consommation de ressources futures.<br \/>\nG\u00e9n\u00e9ralement, il s\u2019agira de fournir au Directeur de Production une pr\u00e9vision des besoins futurs pour \u00e9laborer le budget de l\u2019ann\u00e9e ou la p\u00e9riode suivante. La solution consiste alors \u00e0 utiliser les donn\u00e9es historiques dont on dispose afin de pouvoir en d\u00e9gager des tendances et planifier l\u2019\u00e9volution de la demande de ressources.<\/p>\n<p>Mais il existe aussi des cas particuliers plus complexes : suite \u00e0 la fusion avec une autre entit\u00e9, il va falloir g\u00e9rer 400 nouveaux utilisateurs. Comment chiffrer ce besoin en ressources, en plus de la croissance organique habituellement constat\u00e9e ?<\/p>\n<p>Autres cas plus fr\u00e9quents : la p\u00e9riode de soldes sur un site web marchand entra\u00eene une augmentation du nombre de visiteurs et de transactions sur le site. Comment faire en sorte que celui-ci tienne le choc et \u00e9viter des temps de r\u00e9ponse d\u00e9grad\u00e9s, voire m\u00eame l\u2019indisponibilit\u00e9 du site ? Ces surcro\u00eets d\u2019activit\u00e9 en p\u00e9riode atypique surviennent dans tous les secteurs : vacances scolaires dans le domaine des transports, un \u00e9v\u00e9nement climatique ou un d\u00e9sastre pour une entreprise d\u2019assurances, voire tout simplement la fin de mois ou d\u2019ann\u00e9es pour les ressources humaines ou le d\u00e9partement comptable.<\/p>\n<p>Il faut alors pouvoir utiliser les informations dont on dispose afin d\u2019effectuer une simulation et fournir au management des donn\u00e9es les plus objectives possibles lui permettant de prendre les d\u00e9cisions appropri\u00e9es.<\/p>\n<p>Quand on regarde ces diff\u00e9rentes activit\u00e9s de la Gestion de la Capacit\u00e9 selon ITIL, il est int\u00e9ressant d\u2019effectuer un parall\u00e8le en mati\u00e8re de qualit\u00e9 des applications. Ce sera l\u2019occasion d\u2019un prochain post, afin de r\u00e9pondre \u00e0 des questions telles que :<\/p>\n<ul>\n<li>Comment conna\u00eetre son patrimoine applicatif ?<\/li>\n<li>Quelle est la qualit\u00e9 de ce patrimoine ?<\/li>\n<li>Comment r\u00e9pondre aux demandes des utilisateurs ?<\/li>\n<li>Comment planifier l\u2019\u00e9volution du patrimoine applicatif ?<\/li>\n<\/ul>\n<p>Comment faire plus et mieux avec moins, pour vos applications ?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Une question que je vois pos\u00e9e r\u00e9guli\u00e8rement : comment am\u00e9liorer la productivit\u00e9 des d\u00e9partements IT ? En notre \u00e9poque de crise \u00e9conomique, de comp\u00e9titivit\u00e9 accrue, de globalisation, comment r\u00e9duire encore les co\u00fbts, o\u00f9 trouver de nouvelles sources d\u2019optimisation ? Bref, comment faire \u00ab plus avec moins \u00bb ? Je suis s\u00fbr que beaucoup vont instantan\u00e9ment [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[14,2],"tags":[],"class_list":["post-226","post","type-post","status-publish","format-standard","hentry","category-cloud","category-qualite-des-applications"],"_links":{"self":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts\/226"}],"collection":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/comments?post=226"}],"version-history":[{"count":2,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts\/226\/revisions"}],"predecessor-version":[{"id":1178,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/posts\/226\/revisions\/1178"}],"wp:attachment":[{"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/media?parent=226"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/categories?post=226"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/qualilogy.com\/fr\/wp-json\/wp\/v2\/tags?post=226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}