Harness.io fait le pari d'automatiser les procédures de Continuous Delivery
La start-up californienne bâtit une plateforme de CD-as-a-Service pour automatiser la création de pipelines de déploiement et en vérifier le déroulement. Harness, né dans l'esprit du fondateur d'AppDynamics, souhaite rapprocher les développeurs de cette procédure, quitte à éluder les coûteux ingénieurs DevOps.
Dans DevOps (et de ses étapes CI/CD), il existe encore un maillon mal outillé : c’est celui du Continuous Delivery – le CD - ,une procédure clé du déploiement d’applications en continu qui permet de tester et de déployer le code issu des phases d’intégration continue – le CI. C’est justement à cette partie que la start-up californienne Harness.io a décidé de s’attaquer en prônant une approche très automatisée.
Cette société, qui a sorti sa plateforme des phases bêta le 1er février, est en fait le fruit de la réflexion d’un cadre du secteur : le fondateur d’AppDynamics Jyoti Bansal qui a démarré Harness dans le sillage de la revente d’AppDynamics à Cisco pour 3,7 milliards de dollars. D’ailleurs chez Harness, AppDynamics est toujours sous-jacent, à commencer par un responsable de la communication ou celui du marketing que nous avons pu rencontrer dans leur siège de San Francisco. Jyoti Bansal s’est toutefois entouré de Rishi Singh, qui avait la charge de la chaîne DevOps chez Apple.
En finir avec les configurations manuelles
C’est donc une approche pragmatique que Harness doit apporter à un segment du Continuous Delivery désormais clé qui manquait cruellement d’automatisation, explique Steve Burton, vice-président marketing de la jeune société. Selon lui, dans leur majorité, les procédures de CD étaient l’objet de scripting et de procédures manuelles, sources d’inévitables erreurs et de temps de déploiement à rallonge. Il faut dire que la mise en place de pipeline de CD nécessite la configuration d’une kyrielle d’applications Open Source.
Alors que, justement, dans un monde porté par le numérique, les entreprises doivent pouvoir proposer des mises à jour de leurs applications en continu et sans interruption de service.
La plateforme de CD-as-a-Service d’Harness vise justement à répondre à cette problématique en donnant la possibilité aux développeurs de non seulement créer des pipelines de CD multi-environnement, mais aussi d’en automatiser leur exécution et leur vérification – « sans rien casser donc », lance le responsable marketing.
Au départ, Harness s’appuie logiquement sur les artefacts générés par les outils de CI. La société s’inscrit ainsi dans le prolongement de Jenkins, Travis CI, Bamboo, CircleCI, ou encore CodeShip (récemment racheté par Cloudbees, face à qui d’ailleurs Harness peut s’inscrire). De là, les ou le développeur peut initier son pipeline de CD via des templates qui décrivent le processus de déploiement. Harness se veut, toujours selon le responsable, multi-environnement : il supporte aussi bien les applications dites cloud-natives (où s’entre-mèlent Docker, Kubernetes, ou AWS ECS) que les environnements traditionnels, comme Java, Node.JS, PHP, Ruby, Tomcat, Glassfish, Linux - .NET est en cours d’intégration. Le déploiement est également possible sur AWS, Azure et Google Cloud, assure le responsable.
Du ML pour vérifier les phases de déploiement
Le déploiement est donc automatique et est ensuite vérifié en continu via du Machine Learning qui s’appuie par exemple sur les logs des applications comme AppDynamics, Splunk ou encore Elastic, raconte Steve Burton. « Cela permet de desceller le bruit dans un pipeline de déploiement », pour ensuite effectuer un rollback, si besoin. Harness évalue à 90% la réduction de défaillance comparé à des procédures manuelles.
Enfin, la plateforme Harness propose également des outils de sécurité pour gérer par exemple la conformité et les accès.
Harness compte bien agiter l’argument de l’automatisation pour éviter aux entreprises d’avoir à investir dans des équipes de gestion des releases dédiées, pour se concentrer sur les seuls développeurs. Et « cela coutera moins cher qu’un ingénieur DevOps », lance encore le responsable. La plateforme est facturée selon trois modes : par instance serveur, par tranche de 1 million d’appels par jour pour les environnements Serverless et enfin, 25$ par instance et par mois (pour une souscription d’un an).