Du 14/10/2024 au 16/10/2024, a eu lieu la toute première édition de la HashiConf à Boston, qui initialement se déroulait à San Francisco. De plus, il était également possible de participer à l’événement en ligne. J’ai eu la chance de participer en présentiel à Boston.

Dans cet article, nous allons passer en revue ensemble les nouveautés présentées durant cet événement, notamment autour de HCP (HashiCorp Cloud Platform), qui est mis en avant à chaque HashiConf/HashiDays.

HashiConf Boston 2024

Infrastructure Lifecycle Management (ILM)

La première journée s’est surtout concentrée sur les produits autour de Infrastructure Lifecycle Management (ILM). Ces produits comprennent : Terraform, Packer, Nomad et Waypoint.

En résumé, les nouveautés sont présentées au travers de cette diapositive : Infrastructure Lifecycle Management summary

HashiCorp Terraform

Dans cette HashiConf, la majorité des nouveautés s’oriente sur HCP (HashiCorp Cloud Platform).

Pour ceux qui souhaitent retrouver les nouveautés côté version communautaire, je vous invite à regarder les nouveautés de la version 1.9.

HCP Terraform Stacks

Concernant les nouveautés côté HCP, nous avons :

  • HCP Terraform Stacks (public Beta): Probablement la nouveauté la plus marquante de la HashiConf 2024, cette nouveauté permet de gérer un Components (défini dans .tfstack.hcl) qui représente un ensemble de ressources (une infrastructure) au travers de Deployments qui définissent comment et combien de fois seront déployés les Components. Cela permet notamment de répondre aux problématiques souvent rencontrées comme : des modules Terraform au sein d’une même stack partageant le même cycle de vie ou encore déployer sur plusieurs régions/comptes/providers sans dupliquer le code. Cerise sur le gâteau, vous pouvez utiliser des Orchestration rules permettant d’auto-approve sous certaines conditions ou encore vérifier certaines conditions (ex : bloquer l’apply si des ressources sont supprimées) et bien d’autres encore. Je vous invite vivement à creuser plus le sujet sur le blog post officiel d’HashiCorp.
  • HCP Terraform module lifecycle management (public Beta): Très orientée autour de HCP, cette fonctionnalité permet de notifier via Slack, email ou autre un module deprecated, l’upgrade d’un provider, un drift, etc. En plus de cela, vous aurez la possibilité de voir l’usage de vos modules dans vos workspaces via l’Explorer.
  • Terraform migrate (public Beta): tf-migrate est un exécutable permettant de migrer d’un Terraform communautaire vers HCP Terraform ou Enterprise.

Pour plus d’informations :

HCP Terraform Stacks info

HashiCorp Waypoint

Pour ceux qui auraient raté la nouveauté annoncée au HashiDays à Londres, HCP Waypoint a maintenant la possibilité d’effectuer des actions permettant ainsi d’élargir son panel de fonctionnalités en passant par des GitHub Actions, Jenkins ou encore avec des HTTP API (parfait pour les third party). La nouveauté de cette HashiConf concernant Waypoint Actions réside dans le fait de pouvoir utiliser maintenant des variables au niveau des actions, laissant plus de modularité aux actions mais aussi aux développeurs les utilisant.

HCP Waypoint variables

Côté HCP Waypoint, plusieurs fonctionnalités passent en General Availability (GA) :

  • HCP Waypoint templates (GA): templates passe en GA. Pour rappel, templates permet d’utiliser des no-code module et ainsi de déployer des ressources sans écrire de configuration Terraform.
  • HCP Waypoint add-ons (GA): Là aussi add-ons passe en GA pour gérer au mieux les dépendances applicatives.
  • HCP Waypoint workflow for templates: Offre la possibilité d’upgrade des templates de façon transparente pour les développeurs.

Pour plus d’informations :

HashiCorp Packer

Le produit est plutôt stable ces dernières années et les nouvelles fonctionnalités apportent quelques améliorations, mais rien de bien notable. L’ensemble des efforts de ces dernières années se concentre sur HCP Packer pour lequel nous avons eu droit à quelques nouveautés durant la HashiConf de Boston, telles que :

  • HCP Packer CI/CD pipeline metadata (GA): Pour les utilisateurs de HCP Packer via GitLab ou encore GitHub, grande nouveauté car il sera possible de récupérer des informations à travers des métadonnées telles que : pipeline IDs, job names, commit hash, etc.
  • HCP Packer bucket-level RBAC (GA): Il était déjà possible de gérer les permissions au niveau de la Registry, mais maintenant il sera aussi possible de les gérer au niveau du bucket : Qui peut voir le bucket ? Qui peut pousser des metadata au niveau bucket ? Tant de questions maintenant possibles à adresser.

Pour plus d’informations :

HashiCorp Nomad

Nomad passe en version 1.9 et offre plusieurs nouvelles fonctionnalités, certaines de type enterprise et d’autres communautaires.

Côté Communautaire:

  • Improved IPv6 support: Plusieurs issues résolues autour de l’IPv6 permettant de mieux utiliser Nomad, notamment via d’autres services en IPv6 comme Consul, Vault, Docker driver, etc.
  • exec2 task driver (GA): Déjà présent dans la version 1.8 en Beta, ce nouveau exec2 (ayant pour but de remplacer exec) apporte plusieurs améliorations au niveau du CPU, du disque, de la mémoire, du temps d’exécution, etc.
  • libvirt task driver (Beta): Nouveau driver permettant de manager les Virtual Machines (VM) à travers KVM, Xen, VMware ESXi, etc.
  • Golden job versions: La possibilité de tag une version de job et de garder un historique des versions de job. Pour ce faire, la commande nomad job tag fait son apparition.
  • NVIDIA device driver for Multi-Instance GPU support: L’ajout du spport du NVIDIA Multi-Instance GPU. J’invite ceux qui ne connaissent pas le NVIDIA Multi-Instance GPU à se référer à la documentation officielle.

Côté Enterprise:

  • Quotas for device resource: Le quota était déjà supporté au sein de Nomad pour le CPU, la mémoire, le réseau, etc. Avec cette fonctionnalité, le quota s’applique au niveau des device resources.
  • NUMA awareness for device resources: Depuis la version 1.7, le non-uniform memory access (NUMA) a vu le jour au niveau des multi-core CPU pour les workloads latency-sensitive. Dans la version 1.9, celle-ci s’applique au niveau des devices memory nodes.

Pour plus d’informations :

Security Lifecycle Management (SLM)

La seconde journée s’est surtout orientée sur les produits autour du Security Lifecycle Management (SLM). Ces produits comprennent : Vault, Boundary et Consul.

En résumé, les nouveautés sont présentées au travers de cette diapositive : Security Lifecycle Management summary

HashiCorp Vault

Vault est la star de ces dernières années autour du Security Lifecycle Management (SLM), et c’est sans surprise que nous retrouvons bon nombre de nouveautés autour du produit.

Grande nouveauté : HCP Vault Radar public Beta. Vault Radar permet de scanner du code, de la documentation et des images de conteneur pour identifier des secrets correspondant à des patterns (expressions régulières, dictionnaires, etc.) ou associés à un secret dans Vault. Au-delà de la détection, Vault Radar met des priorités de résolutions ainsi qu’un guide de remédiation. L’ensemble est opéré au travers d’un Vault Radar agent.

Vault Radar

Autre nouveauté de cette HashiConf, HCP Vault Secrets avec 3 fonctionnalités mises en avant :

  • Auto-rotation: L’auto-rotation permet notamment à HCP Vault Secrets de changer automatiquement les secrets sur une fréquence spécifique (ex. : 30 jours) L’auto-rotation est supportée sur : AWS IAM user access keys, Google Cloud service account keys, MongoDB username/password et Twilio API keys. D’autres supports de rotation de secrets verront le jour plus tard.
  • On demand dynamic secrets public Beta: Dans la même logique que l’auto-rotation, les secrets dynamiques sont des secrets à durée de vie temporaire. Le service supporte pour le moment : AWS STS et Google Cloud.
  • Dynamic provider credentials in HCP Terraform: Vous pouvez maintenant utiliser Vault Secrets au travers de HCP Terraform pour utiliser des dynamic credentials pour la configuration des providers.

Vault Secret rotation

Enfin, la release v1.18 apporte son lot de nouveautés comme :

  • Raft library updates: Améliore la résilience réseau avec un système de pre-vote.
  • UI support for AWS WIF & KVv2 secrets path management: Ajout dans l’UI de AWS WIF et de KVv2 path management.
  • CMPv2 PKI support (Enterprise): Support du protocole CMPv2 PKI.
  • Adaptive overload protection (Enterprise): Améliore la High Availability (HA).
  • Password rotation for static PostgreSQL database accounts (Enterprise): Auto-rotation des credentials de compte de base de données.
  • IPv6 compliance (Enterprise): IPv6 compliant par rapport à l’OMB Mandate M-21-07 et Federal IPv6 policy

Pour plus d’informations :

HashiCorp Boundary

Nouveauté attendue par plusieurs personnes, mais uniquement disponible via HCP Boundary (donc payant), les transparent sessions au travers de sa version 0.18. Comme son nom l’indique, les transparent sessions ont pour objectif d’intercepter les call DNS et de rediriger le trafic via Boundary vers les targets. C’est tout ! L’usage est donc totalement transparent. Je vous invite à regarder la démonstration de Transparent Sessions pour voir la simplicité de la chose.

Boundary Transparent Sessions

Autres fonctionnalités notables de la version 0.18:

  • AWS dynamic host catalogs AssumeRole authentication support
  • Dynamic host catalogs worker filter support (Enterprise)

Pour plus d’informations:

HashiCorp Consul

Durant la HashiConf, nous n’avons pas beaucoup entendu parler de Consul. Seulement une slide discrète et une apparition en fin de slide récapitulative.

Les nouveautés autour de Consul se concentrent sur la version 1.20 qui regroupe:

  • DNS views (Enterprise): Permet de limiter le service discovery entre les tenants et de les restreindre par tenant.
  • Improved Consul catalog sync metrics: Consul catalog sync est une fonctionnalité permettant d’enregistrer automatiquement des services Kubernetes dans le Catalog Consul. Il est maintenant possible d’obtenir des informations telles que le statut, les métriques de performance, etc.
  • Hardened OpenShift integration
  • Service dashboards for Grafana: Il est maintenant possible d’utiliser des template JSON pour des dashboards Graphana.

Pour plus d’informations:

HCP (HashiCorp Cloud Platform)

Pour finir ce tour d’horizon, quelques améliorations ont été faites à l’échelle de HCP, telles que :

  • HCP Audit Log Streaming public Beta: Avec maintenant la possibilité de streamer les logs sur une plateforme externe de type security information and event management (SIEM) comme Splunk ou AWS Cloudwatch.
  • Application level RBAC: Un système de RBAC a été mis en place au niveau des applications HCP via des rôles (viewer, admin, etc.).

Pour plus d’informations:

Et Vagrant ?

Cela fait plusieurs années que Vagrant a été laissé de côté, jugé comme stable en termes de fonctionnalités et d’autres aspects. De plus, celui-ci n’est toujours pas dans la liste des produits sous HCP, il ne sera donc pas présenté d’ici là.

Pour compléter votre voyage dans le monde HashiCorp, je vous invite à en apprendre davantage sur les autres nouveautés via les ressources suivantes :

HashiConf Boston 2024 en personne, le feeback !

Est-ce que l’événement en personne à Boston est à refaire pour 2025 ?

Nous le savons déjà, le prochain HashiConf se déroulera à San Francisco du 24 au 26 septembre 2025. L’événement, selon moi, est inoubliable entre le HashiCorp User Group (HUG) à Boston sur un bateau (oui, un bateau !), la soirée post-HashiConf, le passage des certifications HashiCorp gratuites, les ateliers ou encore l’Escape Game, les talks et j’en passe. J’ai encore eu l’occasion, malgré la distance, de rencontrer à nouveau un ancien membre de ma promotion d’école que je n’avais pas revu depuis 7 ans. Au-delà de tout cela, j’ai eu l’occasion de rencontrer des gens extraordinaires de tous les continents et de cultures différentes. Si nous laissons de côté la distance parcourue en avion, l’expérience est à refaire pour 2025 !

Je vous laisse un aperçu de la vue du HashiCorp User Group (HUG) à Boston sur le bateau : HashiCorp User Group (HUG) Boston

Quelle expérience en tant qu’HashiCorp Ambassador sur ce type d’événement ?

HashiCorp Ambassador Shuttle

C’est une occasion de rencontrer d’autres HashiCorp Ambassador, HashiCorp User Group Co-Org et HashiCorp Core Contributor. Au-delà de la partie networking, les HashiCorp Ambassador ont eu l’opportunité de participer le lundi (jour 0) à une journée de feedback et d’échange sur les produits avec les équipes HashiCorp. Cerise sur le gâteau, les HashiCorp Ambassador ont eu le privilège d’avoir plusieurs goodies, un accès VIP à l’afterwork et une attention particulière des équipes HashiCorp.

Pour ceux qui souhaite en apprendre plus ou rejoindre le programme, faites un tour sur la page officiel.

HashiCorp Ambassador Party

Qu’en est-il des talks ?

Les sessions se sont déroulées sous plusieurs formes :

  1. Keynote (matin) avec les moments clés des nouveautés.
  2. Track Cloud Engineering 1 & 2 laissant ainsi le choix sur le sujet technique.
  3. Track Business s’adressant à des profils plus business.
  4. Hallway Track talks, des talks d’une durée de 15 minutes sur des sujets divers et variés mais précis.
  5. Passage de certification, démo et Learn lab.

Dans l’ensemble, le programme est très bon et l’ensemble des axes d’amélioration remontés lors des précédentes conférences ont été revus et corrigés. Nous voyons bien ici que la HashiConf place la barre très haut par rapport à ses prédécesseurs.

Le mot de la fin ?

Comme nous le savons depuis quelques années, la HashiConf est l’endroit pour ceux qui utilisent HashiCorp Cloud Platform (HCP) ou les versions Enterprise des produits HashiCorp. L’endroit offre retour sur expérience, des experts chez HashiCorp, mais surtout un réseau de passionnés. Pour ceux ayant déjà un niveau assez avancé dans les produits HashiCorp et se limitant aux produits open source, vous allez être globalement peu satisfaits, à l’exception du temps consacré au networking ou encore des Hallway Track talks offrant des talks techniques et deep dives, mais avec un temps plutôt court.

Pour finir, quelques bonus:

Et un grand remerciement aux “Mousquetaires HashiCorp Ambassadors” : Nathanael Frappart et François Dexemple !

HashiCorp Ambassador Mousquetaire Crédit pour la photo: Nathanael Frappart