J'ai fait / créé de nombreuses présentations liées à SCM, et maintenant j'essaie de "mettre à niveau" vers un successeur DevOps de celui-ci.
Ce que j'essaie toujours de faire dans mes présentations, c'est de produire une diapositive d'introduction qui comprend en quelque sorte le message que je veux livrer (et que j'élabore ensuite dans le reste de ma présentation). Ce faisant, j'essaie de répondre à ma propre question du type "Quelles seraient les phrases de 1 à 3 que je voudrais utiliser si je disposais de 10 à 20 secondes (seulement!) Pour l'expliquer à quelqu'un de nouveau? * ".
Je pensais que je savais ce que signifie réellement DevOps et de quoi il s'agit. Mais j'ai vu des usages / contextes bizarres de DevOps (même sur DevOps.SE ...). Je me demande si ce que je pense que DevOps est peut-être complètement faux.
Quelle est donc généralement la définition de DevOps?
la source
Réponses:
DevOps en bref
De Wikipédia :
De l' aperçu :
Bien qu'il n'y ait pas un seul "outil" pour DevOps, mais plutôt un ensemble d'outils, également connu sous le nom de chaîne d'outils DevOps :
Illustrations de DevOps
Voici quelques citations de certaines des questions sur DevOps.SE , qui semblent toutes en quelque sorte correspondre / confirmer une partie de la description de DevOps ci-dessus:
De ' Quelle est la différence entre SRE et DevOps? «:
De (une réponse à) ' Comment puis-je embaucher un bon DevOps, adapté à mon entreprise? «:
De ' Est-ce que mon organisation doit adopter Agile Soft. Dev. avant d'adopter DevOps? «:
DevOps n'est PAS un rôle
Voici quelques citations de certaines des questions sur DevOps.SE , qui semblent toutes illustrer que DevOps n'est PAS un rôle:
De (une réponse à) ' Quelle est la différence entre Sysadmin et DevOps Engineer? «:
De (une réponse à) ' Comment puis-je embaucher un bon DevOps, adapté à mon entreprise? «:
la source
Je pratique et conseille DevOps en tant que consultant auprès de différents clients depuis près de cinq ans maintenant, avant mon poste actuel, j'ai occupé des postes dans le développement de logiciels, les opérations Web et l'administration de systèmes. D'après mon expérience personnelle , DevOps se décline en plusieurs versions.
Modèles d'organisation
DevOps Antipatterns:
NoOps et NoDevs - pas strictement DevOps au sens le plus strict, cependant, ces équipes construisent et exploitent des logiciels sans séparation entre le développement et les opérations. Les défis avec ces équipes sont à maturité, les équipes de développement peuvent être des développeurs de logiciels experts mais des opérateurs novices et vice versa.
Le pont DevOps - c'est là un ou plusieurs équipes chargée de reprendre le travail des équipes de développement et « Productionizing » pour le rendre utilisable. Le défi se résume à présent à deux transferts, à savoir Développement → DevOps et DevOps → Opérations.
L'équipe DevOps - cela peut sans doute fonctionner si l'équipe a la responsabilité de créer des outils qui prennent en charge le modèle d'exploitation compatible DevOps, cependant, cela devrait probablement être appelé une "équipe d'outils" ou une "équipe de plate-forme".
Modèles DevOps:
DevOps intégrés - plus communément appelé Platform Engineering, selon lequel un membre de l'équipe est responsable mais non responsable de la fourniture de l'automatisation, des outils et de l'infrastructure pour l'approvisionnement et le déploiement de la solution, y compris parfois l'exploitation du logiciel - dans mon esprit , c'est ce dernier qui est en fait représentatif de DevOps.
DevOps institutionnalisés - où une équipe de projet est conjointement responsable à la fois du développement et de l'exploitation d'un progiciel de création de propriété partagée et de boucles de rétroaction positive.
Les pratiques
La pratique actuelle de DevOps s'appuie sur plusieurs autres pratiques, à savoir:
Chacune des pratiques ci-dessus s'appuie sur l'autre, il est possible de ne pas suivre une pratique, cependant, cela signifie qu'un cycle de rétroaction important est manquant, ce qui peut indiquer une "opportunité manquée". Le principal facteur de différenciation entre le suivi de l'une des autres pratiques et DevOps est le fonctionnement du logiciel en production .
Les trois voies
Dans The Phoenix Project, Gene Kim et ses co-auteurs décrivent les trois méthodes de DevOps :
Pensée systémique
D'après mon expérience, commencer à amener les développeurs à prendre en compte les préoccupations opérationnelles et les exigences non fonctionnelles atteint cet objectif. Cela fait partie intégrante des aspects culturels de DevOps.
Amplification des boucles de rétroaction
J'y parviens généralement grâce à l'intégration / la livraison / le déploiement continus et à la surveillance et aux alertes partagées, ce qui correspond parfaitement au composant outils de DevOps.
Culture d'expérimentation continue et d'apprentissage
Cela s'intègre très bien dans l' espace culturel , même si cela dépend fortement des outils et des processus permettant à la culture de se développer.
la source
J'ai entendu beaucoup, beaucoup de définitions différentes de DevOps. Ils incluent:
Il n'y a pas de consensus public sur ce fait Devops est . Il y a quelques années, nous avions des problèmes similaires avec "Agile", et cela a une définition écrite .
Lors de la présentation de vos concepts à un nouveau venu, je me concentrerais sur l'introduction des concepts, plutôt que sur l'application d'une étiquette, sinon ils finiront par entendre des définitions contradictoires et seront confus. Par exemple, si vous essayez de parler d' infrastructure en tant que code , dites-leur que vous parlez d'infrastructure en tant que code. Plus vous pouvez être précis, mieux c'est, car même avec des définitions convenues, la plupart des entreprises se concentrent davantage sur certaines parties d'une philosophie.
la source
La définition que j'utilise toujours dans cette situation est la suivante:
«Une culture de création de logiciels qui met l'accent sur la communication et la collaboration entre les équipes de développement logiciel et d'exploitation tout en automatisant le processus de livraison de logiciels et les changements d'infrastructure. L'objectif de DevOps est de rendre le processus de création, de test et de déploiement de logiciels aussi fréquent, rapide et possible. »
Cependant, avec la définition, il est également important qu'ils comprennent POURQUOI nous avons besoin de DevOps. Assurez-vous de leur dire que DevOps atténue les défauts logiciels plus rapidement, permet une meilleure gestion des ressources, moins d'erreurs humaines, un meilleur contrôle des versions, un environnement d'exploitation stable, etc.
la source
Par le document de recherche scientifique suivant pour explorer exactement cette question, «Qu'est-ce que DevOps», la définition dérivée proposée de DevOps est:
[Jabbari et al.] "Qu'est-ce que DevOps?: Une étude de cartographie systématique des définitions et des pratiques" (2016)
la source
Devops est la pratique de développement de l'écriture d'applications dont le domaine d' activité est les opérations. Lorsque la plupart des développements d'applications se concentrent sur la création d'applications qui financent ou les soins de santé ou la logistique ou les vidéos de chat, devops se concentre sur les applications qui permettent les générations, les déploiements, la surveillance et la collecte de métriques.
L'objectif primordial doit toujours être de permettre aux décideurs de devenir des décideurs . Imaginez l'application mobile de votre banque. Lorsque vous demandez un transfert, cela se produit lorsque vous appuyez sur le bouton. Vous avez pris une décision, puis vous avez pris la décision. Même chose pour vos opérations. Lorsque la personne appropriée décide qu'un travail est prêt à être déployé en production, elle devrait être en mesure d'appuyer sur un bouton et sur "Right Things Happen". De même, ils devraient disposer de toutes les informations nécessaires pour prendre les bonnes décisions commerciales.
Il ne s'agit pas de donner aux gens d'affaires un accès shell aux serveurs - c'est un objectif confondant avec la mise en œuvre. Il s'agit de fournir aux bons boutons et leviers les bonnes informations et les bons garde-corps aux bonnes personnes afin que les décideurs soient des décideurs.
la source
whose business domain is operations
: Possible de développer cela ou de donner quelques exemples?