Les fondements d'une équipe DevOps performante
Ceci est le dernier article de notre série sur la transition vers une culture DevOps (pour le moment). Pour commencer, consultez : Pourquoi vous devriez établir une culture DevOps .
Lorsqu'on parle de DevOps, on évoque souvent la collaboration et la culture. L'un des aspects les plus importants de l'adoption d'une approche DevOps au sein de votre organisation réside dans les outils et les procédures qui pilotent ce mouvement. Plus important encore, vos relations avec vos outils et votre culture sont essentielles pour créer une base de libre-service, de priorisation et de collaboration.
Libre-service pour les développeurs avec automatisation de l'infrastructure
Dans un modèle DevOps, les développeurs sont autonomes, alors qu'auparavant ils devaient s'appuyer sur une équipe opérationnelle. Pour une transition efficace vers une culture DevOps, les ingénieurs opérationnels aident les développeurs en créant des outils qui leur permettent de résoudre les problèmes par eux-mêmes.
Ces outils en libre-service assurent la cohérence des performances, des caractéristiques fonctionnelles et physiques de vos produits. Ils assurent également la maîtrise de vos exigences, de votre conception et de vos informations opérationnelles tout au long du cycle de vie de votre produit. Des outils comme Chef (que nous utilisons chez PagerDuty) nous permettent de traiter notre infrastructure comme du code afin de garantir la cohérence de nos environnements de test, de développement et de produit grâce au contrôle de version, aux tests automatisés et aux évaluations par les pairs.
En fournissant aux développeurs les outils dont ils ont besoin pour éteindre leurs propres incendies, vous pouvez consacrer plus de temps à l’amélioration de votre produit, de vos services et de vos processus.
Établir une priorisation pour ce que vous surveillez
Suivre les priorités de vos clients vous aidera à prioriser vos indicateurs de surveillance. Chez PagerDuty, nous privilégions notre capacité à accepter les événements et à envoyer des alertes à nos clients avant tout autre système et processus. Nous accordons une grande importance à la fiabilité et savons à quel point nos clients dépendent de nous pour recevoir des alertes. S'ils ne reçoivent pas d'alertes, ils risquent de ne pas détecter une erreur dans leurs systèmes, ce qui peut entraîner des pannes prolongées. Parce que nous surveillons et priorisons les indicateurs importants pour nos clients, nous sommes immédiatement alertés d'un incident par l'un de nos outils de surveillance.
Nos ingénieurs ne tarderont pas à résoudre un problème d'alerte sous prétexte qu'ils sont en train de traiter un incident non client. En établissant des priorités, nous pouvons rapidement adapter notre service pour vous garantir une disponibilité permanente.
Nous vous recommandons d'identifier les aspects de vos produits et services qui comptent le plus pour vos clients et de concentrer votre suivi et vos alertes sur ces aspects. Vous constaterez que votre taux de satisfaction augmentera avec moins de perturbations sur les services les plus importants pour vos clients.
Connectez les gens entre eux et à vos systèmes
Être autonome et collaborer est essentiel à l'adoption d'une culture DevOps. Les outils sont censés faciliter et renforcer nos relations. Par exemple, GitHub permet à votre équipe non seulement de stocker du code, mais aussi de collaborer et de partager une source centralisée de connaissances, tout en assurant le contrôle des versions en cas de problème nécessitant une restauration.
Chez PagerDuty, nous nous efforçons d'être le lien entre vos outils et vos équipes afin que vous puissiez réagir plus rapidement aux incidents et réduire votre temps moyen de réparation. Nous espérons que notre service responsabilisera vos équipes et leur permettra de collaborer pour une cause commune (par exemple, la résolution d'un incident critique). Sans vos équipes, votre entreprise et vos produits ne prospéreront pas.
Pour que vos collaborateurs puissent avoir un impact efficace sur votre entreprise, ils doivent pouvoir travailler quand on a besoin d'eux. Mettre des collaborateurs d'astreinte à votre disposition pour les tenir informés des systèmes dont ils sont responsables est un bon début.
« Grâce à la disponibilité des développeurs, nous ciblons les équipes concernées avec des alertes exploitables. » – Eduardo Saito, directeur de l'ingénierie chez GREE
Ceux qui n'ont jamais été de garde auparavant peuvent être réticents, mais ils verront bientôt l'intérêt d'être de garde, car chacun aligne ses difficultés avec celles de ses clients.
Nous avons beaucoup parlé récemment de la transition vers un modèle DevOps au sein de votre organisation. Si vous débutez, n'oubliez pas qu'une culture collaborative est essentielle. Un modèle DevOps ne peut pas fonctionner avec des services cloisonnés. C'est peut-être le principal obstacle pour votre entreprise. Mais si vous concentrez votre énergie sur la responsabilisation de votre équipe grâce au libre-service, à l'utilisation d'outils qui connectent les individus à leurs systèmes et à l'identification de priorités parmi vos objectifs communs, vous serez sur la bonne voie.
Mise à jour 10/04/14 – Suite de la lecture de la série sur la transition vers DevOps :