Sommaire
Après deux ans de pause, la HashiConf Europe était de retour à Amsterdam les 21 et 22 juin derniers. Nos consultants Vincent et Guillaume étaient sur place pour représenter WeScale qui est partenaire d’HashiCorp. Dans cet article, vous trouverez un condensé de l’ensemble des annonces faites par HashiCorp et un résumé des conférences qu’ils ont le plus apprécié.
Annonces jour 1
La Keynote du premier jour a démarré avec David McJannet, CEO d’HashiCorp, qui nous a présenté une rétrospective des 3 dernières années très chargées :
- Nombre d’employés multiplié par 4
- 20 000 certifications
- 41 000 membres des communautés HUG (Hashicorp User Group)
Ensuite Armon Dadgar, CTO et co-fondateur, est venu nous présenter les annonces autour de leurs solutions de livraison d’applications.
Les premières annonces sur Terraform concernent la version Cloud : détection automatique des changements effectués hors IaC (appelé Automatic Drift Detection), Run Tasks pour intégrer des contrôles de partenaires externes, amélioration de l’intégration à HCP Packer. Sur la version OSS, la principale annonce concerne l’arrivée des pre/post conditions pour implémenter des tests d'infrastructure. Il y aura aussi prochainement la possibilité de partager des policies Sentinel via la registry Terraform.
Côté Nomad on rappelle l’arrivée des Nomad Packs pour partager des templates de déploiement et la gestion du service discovery sans consul depuis la 1.3. Un nouveau paramètre max_client_disconnect fait son apparition pour faciliter la gestion des clients at edge.
Pas de nouvelles fonctionnalités annoncées sur Waypoint, mais la sortie en beta privée d’une version managée HCP Waypoint.
Annonces jour 2
Le deuxième jour, Armon Dadgar est de retour lors de la Keynote pour parler cette fois des solutions de sécurité fournies par HashiCorp.
On commence par Vault avec la sortie de la version 1.11 qui apporte un nouveau secret engine pour générer des secrets Kubernetes, des améliorations sur le moteur de PKI (Public Key Infrastructure) et sur la fonctionnalité autopilot du stockage intégré.
L’actualité de Consul est chargée avec la version 1.13 qui sort en tech preview. Cette dernière introduit le cluster peering qui permet de fédérer des clusters Consul plus facilement qu’aujourd’hui. Dans le même temps, le service managé HCP Consul termine sa phase de beta et devient GA.
Enfin, comme pour Waypoint, pas de nouvelles fonctionnalités sur Boundary mais le lancement du service HCP Boundary en beta publique.
The path to modern infrastructure automation
Après avoir établi un état des lieux de la réalité pour une majorité des entreprises, Harold Giménez, nous a proposé 3 pistes pour moderniser l’automatisation de nos infrastructures avec Terraform et Packer.
Golden Workflow : Définir, Publier, Revoir, Tester et Automatiser. Il faut un workflow complet composé d’étapes pertinentes :
- Pour aider il existe maintenant les conditions pre/post dans Terraform pour ajouter du sens à certains use-case
- Mettre en place une golden image utilisable comme source de construction d’autres est un must-have
Extensible System : Promouvoir l’innovation. Une infrastructure se doit de pouvoir évaluer, grandir ou changer :
- Run Tasks pour ajouter des étapes de vérification
- Sentinel, LE framework de policy-as-code de HashiCorp peut être un atout
Lifecycle Management : Maîtriser le cycle de vie de son infrastructure. Détecter et traiter les décalages entre l’IaC et la réalité :
- La nouvelle solution de Drift Detection peut être un atout
Pour conclure, Terraform-Packer est LE couple qu’HashiCorp souhaite promouvoir pour atteindre l’état de l’art de la modernisation de l’automatisation de l'infrastructure.
Non-Technical Challenges of Platform Engineering
Poppy Rowse et Chris Sheperd sont venus nous présenter les quatre éléments qui, selon eux, sont indispensables pour réussir la construction de sa plateforme Cloud :
- Se concentrer sur les utilisateurs
- Construire une vision technique et la communiquer
- Mettre en place une stratégie pour aligner ses sponsors
- Faire du service design
Pour chaque point, un ensemble d’outils sont à notre disposition :
- Event storming, personas
- Architectural Decision Records, C4 model
- Lean Value Tree, Weighted Shortest Job First
- User journey mapping
Poppy et Chris terminent en rappelant que ces éléments ne sont pas “silver bullet”, mais qu’ils restent très utiles pour construire une plateforme qui sera utilisée.
Terraforming for today and tomorrow
Écrire du code d’IaC pour une infrastructure existante n’est pas chose aisée. Le faire en prévoyant ses usages futurs est encore plus difficile. C’est pourtant la problématique à laquelle a dû répondre Peter Barta pour le fonds souverain norvégien (NBIM).
Quand le projet a démarré, NBIM avait plus de 600 identités d’applications créées manuellement dans Azure AD, plus de 100 configurations SSO et une dizaine d’administrateurs.
Pour répondre à leurs nouvelles exigences de développement (As-Code, change control, least privilege) ils ont choisi de migrer la gestion de cet AD vers Terraform. Choix étonnant, pour faciliter l’onboarding des utilisateurs la configuration est dans des fichiers yaml, qui sont ensuite convertis en hcl.
Le bilan final est très positif car le nombre de tickets de support a diminué de moitié, et la vélocité de l’équipe à grandement augmenté.
How a Top European Cloud Provider Migrated to TFE
OVH était présent à la HashiConf avec ce slot de Horacio Gonzalez qui est venu retracer l’histoire de comment et pourquoi OVH a choisi de se diriger vers Terraform Entreprise pour sa solution de déploiement en tant que service.
L’histoire commence en 2014 où OVH constate que son architecture de déploiement est relativement hétérogène (un peu de bash par-ci, Python par-là). La volonté de créer un véritable DaaS (Deployment-as-a-Service) émerge, un outil est développé par OVH, pour OVH. Sa mise en place et son adoption au sein de l’entreprise en croissance exponentiel se fait rapidement.
Seulement, “un” problème se manifeste relativement rapidement. Cet imposant projet est maintenu par une petite équipe qui croule rapidement sous les tickets.
Les gens partent, cette technologie propriétaire la rend peu attractive est l’outil se zombifie, plus d’évolutions mais toujours exploité au sein d’OVH.
Une nouvelle équipe est mandatée, elle identifie 3 problèmes techniques majeurs avec ce DaaS :
- Code obsolète
- Architecture complexe
- Performance et Scalabilité
L’équipe veut donc créer un nouvel outil, sans arriver au résultat du premier. La réflexion a évolué tel que :
- Recréer un nouvel outil ex nihilo
- Difficilement maintenable et coûteux de par expérience
- Terraform : Il manque plusieurs éléments (RBAC, GUI, etc.) et recréer toute l’architecture autour paraît difficilement maintenable
- Terraform Cloud : OVH est un Cloud européen et doit répondre à des exigences en matière de souveraineté
- Terraform Entreprise : It’s a match !
Aujourd’hui de nombreuses équipes d’OVH utilisent TFE et en sont satisfaites. OVH fait tourner ~2000 runs/semaine. Les étapes suivantes sont plus de documentations et améliorer l’onboarding autour de l’outil.
Le mot de la fin !
Comme le soulignait David McJannet lors de la Keynote, HashiCorp a beaucoup changé depuis la dernière HashiConf Europe en 2019. Après être entrée dans les entreprises par les techs grâce à la qualité de ses solutions OSS, HashiCorp s’adresse désormais aussi aux décideurs avec ses solutions entreprise et Cloud. Nous notons une volonté de créer des synergies entre les différentes offres comme HCP Packer et Terraform Cloud pour augmenter grandement la valeur apportée par ces solutions.
Seul petit bémol pour des techs comme nous, c’est que les conférences sont très orientées produit et ne vont pas aussi loin qu’on le voudrait. Néanmoins, nous avons pu poser nos questions techniques et échanger avec les ingénieurs qui avaient fait le déplacement depuis les US.
Un événement réussi et de superbes interactions avec l’ensemble de la communauté HashiCorp, on en redemande !
Merci HashiCorp et à l’année prochaine !
Pour aller plus loin
Si vous souhaitez avoir plus de détails sur les nouveautés annoncées voici les principaux liens vers le blog HashiCorp :
- New on HCP: Boundary, Waypoint, Drift Detection, and Azure Support
- Terraform 1.2 Improves Exception Handling and Updates to the CLI-driven Workflow
- Nomad 1.3 Adds Native Service Discovery and Edge Workload Support
- HashiCorp Vault 1.11 Adds Kubernetes Secrets Engine, PKI Updates, and More
- Consul 1.13 Tech Preview: Cluster Peering