Pets VS Cattle
Le DevOps est un concept majeur pour l’industrie informatique mais pour beaucoup assez mystérieux. Il n’y a pas de réèl définition pour expliquer le DevOps, l’interprétation est libre mais si la communauté s’accorde sur les grands principes. L’un des principes concerne le “Pets VS Cattle”.
Pets VS Cattle
La première fois que j’ai entendu parler de Pets VS Cattle, je me suis demandé ce que l’élevage de bétail avait à voir avec l’informatique. L’informatique à évoluer et l’analogie entre les animaux de compagnie vs le bétail permet d’expliquer facilement cette évolution.
Pets
J’ai commencé l’informatique dans le centre de recherche d’un cimentier. Nous avions quelques serveurs pour le calcul scientifique et chaque serveurs avait son petit nom. Mon chef adorait les films américians et nous avions donnés à nos serveurs les noms de Chuck, Rambo ou encore Rocky. Nos serveurs/cluster/stockages/équipements/… étaient considérés comme des briques indispensables ne pouvant jamais tomber en panne. Les mises à jours étaient faite à la main tout les lundis matins et nous regardions régulièrements leurs charges et leurs états de santés. Que se soit nos baies de stockages, nos cluster de calcul 2d ou 3d, nos load balancer ou nos bases de données étaient construit, gérés et utilisés manuellement et les maj kernel sont planifiés la nuit pour avoir le moins d’impact sur les utilisateurs.
Nous considérions nos serveurs comme des personnes de nountre famille. Si un serveur tombait en panne, nous l’analisions et le réparions pendant des heures jusqu’à le faire fonctionner de nouveau, comme un animal malade que nous emenons chez le vétérinaire, soignons et bichonons.
Cattle
Maintenant (et encore suivant l’entreprise) nos serveurs ou équipements sont construit et géré en double/tripe et le plus souvent automatiquement. Un serveur web est toujours accompagné de son ou ses jumeaux. Pendant une défaillance aucune opération humaine n’est requise. L’outil de supervision détecte la panne, exclus les serveurs du load balancer injoignables et rédemarre les serveurs défaillants. Si le service n’arrive pas à étre mis en route, le serveur est détruit et un nouveau fraichement installé vient prendre ça place. La panne est la plupart du temps pas analysé.
Nous considérons nos serveurs comme du bétail en ne s’attachant pas à eux,ni en en leur donnant un petit nom. Le bétail est considéré comme un animal devant prendre du poids rapidement et d’être vendu à l’abatoir. Si une vache ne peut le faire, elle est alors éliminé et remplacé.
Avec l’arrivé du cloud, ce constat est d’autant plus vrai, les serveurs sont considérés comme du bétail plutôt que des animaux domestiques. Cela signifie que si le serveur tombe malade, nous nous occuperont très peu de lui et nous le détruirons et en élèverons un autre pour le remplacer.
Conclusion
Cette analogie tels que présenté ci-dessus, à permis d’éduquer une génération de CTO et autres sur l’avènement du cloud et des conteneurs.