DevOps et SRE sont toutes deux des méthodologies qui répondent aux besoins des organisations en matière de gestion de l’exploitation des produits. Contrairement à la croyance populaire selon laquelle les deux sont des adversaires, DevOps et SRE ne sont pas deux méthodes concurrentes, mais se complètent plutôt en éliminant les barrières organisationnelles afin de fournir plus rapidement de meilleurs logiciels. Toutefois, les objectifs de DevOps et de SRE se recoupent assez largement.
Qu’est-ce que DevOps ?
DevOps est une culture d’ingénierie logicielle et une pratique de collaboration entre différentes équipes, telles que le développement et les opérations, l’assurance qualité et la sécurité. DevOps est un cadre ITSM qui encourage la communication et la collaboration entre le développement de logiciels et les opérations informatiques tout au long du cycle de vie des services. Il intègre les développeurs et les équipes d’exploitation afin d’améliorer la collaboration et la productivité en automatisant l’infrastructure et les flux de travail et en mesurant en permanence les performances des applications. DevOps n’est pas une technologie ou un outil ; il s’agit plutôt d’un concept utilisé pour la gestion du cycle de vie des applications et pour s’assurer que les équipes de développement et les équipes d’exploitation travaillent en synchronisation les unes avec les autres. L’objectif est d’instaurer la confiance et de réduire les frictions dans ces transferts entre les développeurs et les équipes opérationnelles. L’équipe de développement soumettra l’application à l’équipe d’exploitation pour qu’elle soit mise en œuvre et l’équipe d’exploitation contrôlera alors l’application et fournira un retour d’information pertinent à l’équipe de développement.
Qu’est-ce que le SRE ?
SRE, abréviation de Site Reliability Engineering, est une discipline qui combine les aspects de l’ingénierie logicielle et des opérations afin de combler le fossé entre l’offre et la demande. La SRE est une méthodologie d’ingénierie logicielle qui est une extension de nombreux concepts antérieurs, qui incluent mais ne sont pas exclusifs à DevOps, l’ingénierie backend, l’ingénierie des systèmes, l’administration des systèmes, les opérations et ainsi de suite. La SRE est « le domaine qui se concentre sur l’art de travailler pour créer un site web qui fonctionne toujours bien ». Il s’agit d’une spécialisation axée sur la fiabilité des logiciels. Bien que les principes du SRE aient été établis par Google en 2003, avant le mouvement DevOps, le modèle est une version légèrement différente de nombreuses idées existantes. Benjamin Treynor, fondateur de l’équipe de fiabilité des sites de Google, déclare dans le livre Site Reliability Engineering de Google : « L’ESR est ce qui se passe lorsque vous demandez à un ingénieur logiciel de concevoir une équipe d’exploitation ». Compte tenu du succès de Google en matière de fiabilité, l’idée a fait son chemin dans de nombreuses entreprises.
Différence entre DevOps et SRE
Définition
– DevOps est un cadre ITSM qui encourage la communication et la collaboration entre le développement de logiciels et les opérations informatiques tout au long du cycle de vie des services. Il s’agit d’une culture d’ingénierie logicielle et d’une pratique de collaboration entre différentes équipes, telles que le développement et les opérations, l’assurance qualité et la sécurité. L’ingénierie de la fiabilité des sites (SRE) est une extension de nombreux concepts antérieurs qui s’appliquent à de nombreux rôles, y compris, mais sans s’y limiter, DevOps, l’ingénierie des systèmes, l’ingénierie backend, l’administration des systèmes, les opérations, etc. La SRE est un cadre permettant d’exploiter de grands systèmes critiques de manière fiable.
Rôle
– DevOps est un ensemble de pratiques et une culture organisationnelle conçus pour combler le fossé entre les développeurs, les opérateurs et les autres parties de l’organisation afin d’améliorer la collaboration et la productivité et de s’assurer que les équipes sont parfaitement synchronisées les unes avec les autres. SRE, comme DevOps, est souvent utilisé pour décrire des rôles qui incluent une grande diversité de travail. Ainsi, si vous considérez DevOps comme une philosophie, SRE est un moyen d’accomplir cette philosophie. SRE est une spécialisation axée sur la fiabilité des logiciels.
Objectif
– DevOps et SRE ne sont pas deux méthodes concurrentes, mais se complètent plutôt en faisant tomber les barrières organisationnelles pour livrer plus rapidement de meilleurs logiciels. DevOps consiste à briser le mur entre les développeurs et les opérateurs afin de réduire les délais de livraison pour les utilisateurs finaux. L’objectif est d’instaurer la confiance et de réduire les frictions dans les transferts entre les développeurs et les opérateurs. Le SRE est une mise en œuvre spécifique de DevOps avec quelques extensions importantes. L’objectif est de créer des systèmes logiciels évolutifs et hautement fiables afin de rendre l’informatique fiable, robuste et gratifiante.
Champ d’application
– Au sein de l’entreprise, le DevOps a un champ d’application limité qui commence par le développement de logiciels et passe par le check-in du code source jusqu’au déploiement automatisé. La portée de DevOps est minimale au-delà du déploiement au sein des entreprises. La SRE est l’occasion de tirer parti de l’élan amorcé par DevOps et de poursuivre les efforts tout au long du cycle de vie post-déploiement. DevOps reconnaît qu’aucun système n’est fiable à 100 % et que les pannes sont inévitables. SRE encourage à trouver des moyens de s’assurer qu’il n’y a pas trop d’échecs.
Résumé
Les objectifs de DevOps et de SRE se recoupent assez largement. On pourrait considérer la SRE comme une mise en œuvre spécifique de DevOps avec quelques extensions. DevOps est un ensemble de pratiques et une culture qui réduisent les barrières entre les développeurs et les opérateurs afin de réduire les délais de livraison. Comme DevOps, SRE est souvent utilisé pour décrire des rôles qui incluent une grande diversité de travaux. Si DevOps est une philosophie, SRE consiste à trouver des moyens d’accomplir cette philosophie. SRE est une spécialisation axée sur la fiabilité des logiciels.