DevOps
18 août 2020

Le futur du DevOps: Partie 2

Par Jean-Marc Amon

Quelles sont les tendances en matière de DevOps?

Des tendances croissantes se produisent également dans le monde du cloud computing et de sa relation avec le DevOps:

  • Il y a une augmentation de la diversité des services cloud qui conduisent à des infrastructures hybrides et polyvalentes.
  • Les gestionnaires de données sont confrontés à plus d’exigences concernant l’émergence de DataOps.

Les méthodes émergentes de DataOps s’inspirent directement des principes clés de DevOps – l’automatisation pour aider les équipes distribuées à prendre en charge une intégration et une livraison fréquente et continue. De la même manière que DevOps aide les développeurs, l’assurance qualité et les opérations collaboratives de manière fluide et sécurisée, DataOps offre les mêmes avantages aux efforts conjoints des développeurs, des scientifiques des données, des ingénieurs des données et des opérations. »

Kit Merker

Lorsque plusieurs plates-formes de gestion du cloud sont utilisées dans un même environnement informatique, il s’agit d’une solution polyvalente. Cela se produit pour plusieurs raisons, notamment:

  1. pour minimiser les temps d’arrêt grâce à la redondance
  2. réduire la perte et l’étalement des données
  3. éviter le blocage du fournisseur
  4. fournir la polyvalence pour répondre aux différents besoins de projet d’une équipe

En conséquence, les équipes DevOps doivent travailler pour répondre aux besoins multi-cloud en devenant plus évolutives et agiles. Il est possible d’atteindre cet objectif en utilisant une version et une intégration continues, ainsi que l’automatisation.

Il peut y avoir des problèmes avec DevOps qui tente de suivre le rythme en continuant à faire la même chose, mais plus rapidement. La raison principale est que les applications DevOps traditionnelles sont monolithiques. Par conséquent, les applications basées sur le cloud sont plus sages à utiliser. De cette façon, ils sont plus faciles à mettre à l’échelle, à automatiser et à déplacer.

Focus sur l’automatisation

Le DevOps est en train de devenir une norme de l’industrie pour de nombreuses entreprises. Selon un rapport publié par Capgemini, 60% des entreprises ont soit adopté DevOps, soit prévu de le faire en 2018. Des statistiques comme celle-ci démontrent que DevOps est une partie nécessaire de votre business plan si vous prévoyez de répondre rapidement aux demandes du marché , améliorez le temps de mise sur le marché de votre entreprise et mettez régulièrement à jour vos solutions logicielles.

De nombreuses entreprises se demandent si l’automatisation peut être continue, à la demande, toujours optimale et contextuelle. Connaissez-vous les six «C» du cycle DevOps? Comprendre ce cycle vous aidera à mieux les appliquer entre les différentes étapes de l’automatisation. Les voici:

  • Planification commerciale continue
  • Développement collaboratif
  • Test continu
  • Libération et déploiement soutenus
  • Surveillance continue
  • Commentaires et optimisation collaboratifs des clients

La mise en œuvre intelligente de l’automatisation signifie que des mises à jour continues de la structure DevOps peuvent se produire lorsque les développeurs fournissent du contenu aux utilisateurs malgré les changements. Cependant, cela signifie également que le travail d’un DevOps est en cours. L’automatisation va continuer à s’imposer dans le futur de DevOps. Le problème est que de nombreuses organisations s’automatisent trop. En conséquence, les communications se décomposent entre les équipes.

Alors que l’industrie continue de croître, de plus en plus d’outils d’automatisation DevOps vont être déployés. C’est là que les développeurs auront besoin de compétences pour savoir lesquels possèdent des fonctionnalités qui peuvent être automatisées et lesquelles nécessitent un ingénieur. Sinon, les entreprises se retrouveront à mettre en œuvre ce qui est nouveau et à créer des problèmes d’automatisation au lieu de la faire fonctionner à leur avantage.

Ces besoins seront éventuellement satisfaits par AIOps, qui signifie intelligence artificielle pour les opérations informatiques. Les organisations doivent comprendre que l’automatisation a atteint un point d’inflexion concernant l’adoption et la mise en œuvre. Pour cette raison, il n’est pas encore intégré à AIOps. En conséquence, il est logique d’examiner attentivement comment l’automatisation doit être utilisée pour mieux répondre aux demandes.

Torsten Volk, directeur général de la recherche pour les conteneurs, le DevOps, l’apprentissage automatique et l’IA chez Enterprise Management Associates, déclare: «L’avenir de DevOps nécessite ce que j’aime appeler« tout continu ». Cela signifie que la sécurité, la conformité, les performances, la convivialité, coût, et tous les autres composants logiciels critiques sont automatiquement et continuellement mis en œuvre sans ralentir le processus de publication. En bref, le processus DevOps optimal est entièrement automatisé et directement synchronisé avec les exigences d’entreprise en évolution rapide. »

devops engineer

Le code deviendra une compétence requise

Les statistiques indiquent qu’en 2018, 86% des entreprises ont mis en œuvre DevOps ou prévoient de le faire. En conséquence, cela signifie que les organisations doivent investir dans leurs ingénieurs DevOps. Cependant, en raison du rythme rapide, les technologies évoluent, il est difficile pour les particuliers et les entreprises de suivre leurs compétences DevOps.

Les trois catégories suivantes aideront les professionnels DevOps à acquérir une solide emprise sur la culture de leur expertise:

  • Capacité: Il s’agit du niveau auquel un professionnel DevOps peut effectuer ses tâches. La capacité est naturelle, par opposition aux compétences et aux connaissances acquises. Souvent, de nombreux professionnels DevOps travaillant actuellement dans le domaine possèdent des capacités naturelles.
  • Connaissance: c’est quelque chose qui a été appris. Par exemple, un professionnel DevOps est né avec la connaissance du fonctionnement interne de Jenkins. Par conséquent, ils doivent en acquérir la connaissance en utilisant l’instruction et l’étude personnelle. Il est essentiel que les professionnels du DevOps apprennent, examinent et comprennent en permanence les dernières informations concernant les meilleures pratiques, les systèmes et les technologies DevOps.
  • Compétence: c’est quelque chose qui s’apprend par l’expérience ou la formation. En fin de compte, les professionnels du DevOps appliquent les connaissances qu’ils ont acquises à des situations qu’ils vivent dans la vie réelle. Ces compétences ne peuvent être améliorées que par un professionnel DevOps expérimenté.

Code d’apprentissage: le besoin critique

L’une des exigences les plus importantes de DevOps concerne les testeurs qui savent coder et automatiser les scripts. Ils font cela pour tester divers cas. Si vous ne savez pas comment ces compétences, il est recommandé d’apprendre à coder immédiatement. Vous constaterez que, lorsque vous comprendrez les différents outils de DevOps et comment automatiser les scripts, ces compétences jouent un rôle essentiel dans le développement logiciel actuel.

On s’attend à ce que si les testeurs n’apprennent pas le code dans leurs scripts automatisés, ils périront. Les tests manuels prennent du temps et on s’attend à ce qu’ils deviennent obsolètes avant 2020. L’automatisation garantit non seulement que le marché reçoit les fonctionnalités plus rapidement, mais elle augmente également l’efficacité des tests.

Selon Andrae Raymond, programmeur et consultant logiciel chez Software Stewards, «Lorsque les tests appropriés sont en place, vous pouvez être assuré que chaque fonction fait ce pour quoi elle a été écrite. De toutes les étapes du développement au déploiement, nous pouvons exécuter des tests pour nous assurer que l’ensemble du système est intact avec de nouvelles fonctionnalités. »

Qu’il s’agisse de JavaScript, Perl, Python ou Ruby, les ingénieurs DevOps performants bénéficieront de l’écriture de code. Du remplacement des processus manuels, en passant par l’attribution de codes DNS ou d’adresses IP ou l’écriture de codes manuels, quelqu’un doit être disponible pour les écrire.

Partie 1