Fermer

octobre 26, 2020

DevOps, DevSecOps et le développeur d'applications Telerik


Si vous avez été très attentif, Progress (la société derrière vos composants Telerik UI préférés) a récemment a finalisé l'acquisition de Chef .

] Chef existe depuis 2008 et est une société DevOps / DevSecOps bien établie (nous en parlerons un peu plus). L'ajout de Chef au portefeuille Progress permet de compléter une offre complète d'outils et de services de développement, de gestion et de déploiement d'applications.

Qu'est-ce que cela signifie pour vous, développeur d'applications qui souhaite simplement écrire et expédier du code?

] Traditionnellement, les gens des opérations informatiques n'étaient pas les mêmes qui écrivaient le code d'application. En fait, ils (encore une fois, traditionnellement) peuvent ne pas écrire du tout de code. Cela fait partie de ce qui distingue Chef: l'infrastructure informatique et la livraison des applications sont lancées et gérées sous forme de code . Cela invite les développeurs à collaborer directement avec les opérations informatiques et à coopérer sur la gestion de l'infrastructure et la livraison des applications.

Avant de continuer, assurons-nous que nous sommes tous sur la même longueur d'onde concernant ces termes "DevOps" et "DevSecOps".

Alors qu'est-ce que DevOps exactement?

Permettez-moi de vous épargner un voyage sur Wikipedia :

DevOps est un ensemble de pratiques qui combine le développement logiciel ( Dev ) et les opérations informatiques ( Ops ).

DevOps est un aspect fondamental de la collaboration entre l'ingénierie et les opérations informatiques pour déployer un meilleur code, plus rapidement, de manière automatisée. DevOps aide à améliorer la vitesse d'une organisation pour fournir des applications et des services. Tout est question d'alignement: alignement de l'ingénierie et des opérations informatiques via une collaboration et une communication améliorées.

Quelques exemples seraient peut-être utiles?

Dans l'ancien modèle d'allocation d'infrastructure vous allouez soit l'espace serveur existant ou acheter de nouveaux serveurs. L'équipe de développement termine la création de son application et la transition vers les tests. Ops travaille sur les serveurs de provisioning et les procédures étendues requises pour déployer cette nouvelle infrastructure. Dans le modèle DevOps d'allocation d'infrastructure l'ingénierie et les opérations travaillent ensemble pour allouer et fournir l'accès aux infrastructures cloud, sur site ou hybrides.

De même, le manque de transparence dans la transparence de l'infrastructure a conduit les équipes d'ingénieurs à rencontrer des problèmes de basculement, de redondance, d'emplacements de centres de données inconnus et de stockage opaque. C'est ironique car ce sont eux qui ont une connaissance approfondie des applications qu'ils déploient! Avec un modèle DevOps approprié tous ces problèmes peuvent être résolus facilement, au moins en partie, grâce à une nouvelle collaboration entre l'ingénierie et les opérations.

Un autre exemple est celui des tests de charge. Avant de passer en production, les tests de charge pouvaient planter l'application dans un environnement intermédiaire. Les versions seraient alors retardées, ce qui exaspère les parties prenantes et oblige d'autres groupes comme le marketing et les ventes à ajuster leurs délais. Avec DevOps, bien avant que les tests de charge de production ne soient effectués sur des serveurs pré-provisionnés, identifiant les problèmes tôt . Cela permet d'ajuster les plans plus tôt et de mieux gérer les attentes.

Les pratiques DevOps améliorent la communication

Une grande partie de ce que fournit DevOps est une collaboration améliorée et une communication améliorée . Vous êtes également probablement intimement familiarisé avec l'intégration continue ou la livraison continue (CI / CD). Ces concepts s'intègrent également parfaitement dans la conversation DevOps. Encore une fois, cela signifie que les produits sont lancés plus rapidement et de meilleure qualité sur le marché.

Un processus informatique typique implique des clients / parties prenantes, des développeurs et des opérations. Je pense que nous pouvons tous être d'accord là-dessus. 👇

 lacunes de communication dans le développement "data-displaymode =" Original "title =" lacunes de communication dans le développement "/> </p>
<p> Agile est extrêmement important et comble les lacunes dans la communication entre les clients et les développeurs. 👇 </p>
<p> <img decoding= Selenium et Telerik Test Studio pour identifier et corriger les bogues dans le nouveau code, et pour effectuer des tests de régression sur l'ancien code.

  • Intégration: Dans la phase d'intégration, une nouvelle fonctionnalité est intégrée au code hérité et les tests de régression susmentionnés peuvent avoir lieu. Le développement continu n'est possible qu'avec une intégration continue et des tests continus!
  • Déploiement: Le déploiement a également lieu de manière continue. Chaque fois que le code change, cela ne devrait pas avoir d'incidence sur le fonctionnement d'une application ou d'un site Web très utilisé.
  • Surveillance: Lors de la phase de surveillance, l'équipe des opérations prendra en charge tout comportement système inapproprié ou bogue qui est (inévitablement ) découvert en production.
  • Et DevSecOps …?

    Une entrée relativement nouvelle dans l'espace DevOps est ce concept de DevSecOps. Le «Sec» dans DevSecOps est synonyme de sécurité. Et si vous avez appris quelque chose jusqu'à présent, vous pouvez probablement deviner que DevSecOps ajoute la sécurité à votre méthodologie DevOps.

    Encore une fois, selon Wikipedia :

    DevSecOps est une augmentation de DevOps pour permettre l'intégration des pratiques de sécurité dans l'approche DevOps.

    J'aime cette description, mais un moyen encore plus simple de comprendre cela est de penser que l'objectif de DevSecOps est de considérer la sécurité à tous les stades du développement et processus de livraison . Il s'appuie vraiment sur ce nouvel état d'esprit selon lequel tout le monde, à chaque étape, est responsable de l'intégrité et de la sécurité des applications et des données.

    Alors, où le chef entre-t-il en jeu?

    Une grande partie du portefeuille de Chef s'intègre bien dans l'infrastructure . as-code royaume. Besoin de faire tourner 200 machines virtuelles CentOS exécutant Apache Tomcat? Vous pouvez facilement coder cela (ou mieux encore: utilisez un livre de recettes Chef !).

    Ce qui peut être plus intriguant pour les développeurs d'applications, c'est Chef Habitat . Pourquoi?

    Le développement d'applications modernes peut être incroyablement compliqué. Nous commençons avec de bonnes intentions et nous nous retrouvons avec divers microservices, un mélange d'environnements sur site et cloud, peut-être Docker ou Kubernetes, et une variété d'outils et de frameworks de développement faiblement couplés. Habitat vous permet de définir le packaging des applications (quelle que soit la plateforme) et la livraison des applications. Vous spécifiez tout ce dont l'application a besoin pour s'exécuter: le code, la façon de la créer, les tests, etc. Ensuite, vous pouvez le déployer à l'aide d'Habitat pour vous assurer que le déploiement est solide.

    N'oubliez pas de consulter toutes les ressources d'apprentissage gratuites disponibles sur Learn Chef !

    What else is dans le garde-manger du chef?

    • Chef Infra automatise la configuration de l'infrastructure.
    • Chef Desktop automatise le déploiement, la gestion et la maintenance des ressources informatiques.
    • Chef InSpec fournit un langage pour décrire la sécurité et des règles de conformité qui peuvent être partagées.
    • Chef Automate permet la collaboration pour apporter des modifications aux applications et à l'infrastructure.
    • Chef Compliance aide les entreprises à maintenir la conformité et à prévenir les incidents de sécurité.

    En particulier, lorsque vous combinez InSpec et Automate, vous commencez à prendre en compte la conformité continue dans vos flux de travail CI / CD:

     chef inspec et automatisez pour une conformité continue "data-displaymode =" Original "title =" chef inspec et automa te pour une conformité continue "/> </p>
<p> Chef fournit une vue du tableau de bord pour rassembler les informations de configuration de l'infrastructure de Chef Infra, l'état de conformité de Chef InSpec et les données de livraison des applications de Chef Habitat, offrant une vue unique sur l'ensemble de <a href= Enterprise Automation Stack :

     chef dashboard "data-displaymode =" Original "title =" chef dashboard "/> </p>
<h2> La prochaine étape de votre aventure DevOps </h2>
<p> J'espère que vous avez maintenant un <em> un peu </em> meilleure idée de ce qu'est DevOps et de la manière dont les pratiques DevOps peuvent vous aider, vous et votre organisation. Si vous souhaitez en savoir plus sur ce qui se passe chez Chef, je vous invite à consulter une ressource fantastique (gratuite): <a href= Learn Chef .

    Learn Chef est une collection de cours approfondis qui abordez tous les aspects importants de DevOps et de leurs produits associés dans le portefeuille Chef. Par exemple, si vous souhaitez améliorer la livraison des applications, vous voudrez regarder Chef Habitat et le cours Learn Chef, Deliver Applications with Chef Habitat .

    Sinon, cliquez sur ] Chef de la communauté sur Slack et profitez des nombreuses autres ressources communautaires . Joyeux DevOpsing! 🏗️





    Source link