F5 et la conteneurisation

Introduction

Les entreprises sont constamment tiraillées entre l’adoption des évolutions technologiques pour ouvrir de nouvelles perspectives commerciales et la nécessité de se protéger contre les nouveaux défis et risques. Dans ce document, nous examinerons la conteneurisation et la manière dont l’adoption de cette technologie dans les produits F5 affecte les professionnels de l’informatique, les architectes et les décideurs.

Au cours des 20 dernières années, la virtualisation a transformé l’informatique serveur en permettant à plusieurs systèmes d’exploitation distincts de fonctionner sur une même plateforme matérielle. Une approche plus moderne est la conteneurisation (ou virtualisation du système d’exploitation), qui permet à plusieurs applications de s’exécuter sur une seule instance d’un système d’exploitation hôte. Chaque instance d’application partage alors les fichiers binaires et les bibliothèques installés dans cette instance unique du système d’exploitation. La figure 1 compare ces approches.

Figure 1 – Comparaison des machines virtuelles et des conteneurs

Contrairement aux machines virtuelles (VM), les conteneurs peuvent partager le même système d’exploitation, la virtualisation s’effectuant au niveau du système d’exploitation plutôt qu’au niveau de l’hyperviseur.

Sans surprise, les développeurs apprécient les conteneurs, car ils permettent de développer et de déployer des applications, ainsi que de lancer des microservices rapidement et facilement. La conteneurisation offre également une meilleure portabilité, puisque les applications conteneurisées sont plus faciles à déployer sur différents systèmes d’exploitation, plateformes matérielles et services cloud. Les conteneurs consomment moins de ressources que les applications exécutées directement sur des systèmes d’exploitation hébergés sur des serveurs physiques ou sur des machines virtuelles.

En règle générale, la plupart des discussions (et de la documentation) sur les conteneurs se concentrent sur les aspects liés à la programmation ou au DevOps. En tant que professionnel de l’informatique, architecte système ou décideur, même si vous appréciez la flexibilité que peut apporter la conteneurisation, vous pouvez légitimement vous demander comment ce changement affectera l’administration, la gestion et la surveillance des applications et des services au sein de votre environnement. Vous souhaitez également vous assurer que la conteneurisation ne compromet pas la sécurité du réseau et des applications.

Relever les défis informatiques modernes

Sur un marché de plus en plus concurrentiel, les systèmes informatiques modernes doivent apporter des avantages commerciaux concrets. Pour répondre à cette exigence, il est essentiel que les services informatiques puissent développer leur capital applicatif en concevant et en créant des architectures qui intègrent non seulement davantage d’applications, mais aussi des applications offrant davantage de fonctionnalités, une meilleure ergonomie et une intégration plus facile.

Le défi pour les directeurs informatiques consiste à accroître les fonctionnalités proposées par leurs services sans augmenter les effectifs. Les gains de productivité ne passent désormais plus par le recrutement, mais par les progrès technologiques et l’automatisation, qui permettent à une équipe de taille inchangée de gérer un nombre croissant d’applications mises à la disposition des clients.

La facilité de déploiement des conteneurs constitue un défi supplémentaire. Les développeurs doivent être formés et accompagnés afin de prendre en compte à la fois l’évolutivité et la sécurité lors de la création d’applications, et les professionnels de l’informatique peuvent les aider à atteindre ces objectifs. Il convient ici de réfléchir à l’impact sur la production des plateformes de conteneurs telles que Kubernetes et Docker, et de veiller à ce que le besoin d’agilité n’entraîne pas de conséquences indésirables dues à de mauvaises pratiques de sécurité ou à l’absence de prise en compte des charges de production.

Kubernetes est une plateforme open source permettant de gérer des services et des charges de travail conteneurisés. Kubernetes était à l’origine le système de planification et d’orchestration de conteneurs de Google, que l’entreprise a ensuite cédé à la Cloud Native Computing Foundation, rendant ainsi le code source accessible à tous. Docker propose un type similaire d’architecture et de distribution open source, composé d’un ensemble de solutions Software as a Service (SaaS) et Platform as a Service (PaaS) interconnectées.

Calcul du délai de rentabilisation

Un facteur clé pour générer des bénéfices commerciaux tangibles consiste à réduire au minimum le délai de rentabilisation. De plus en plus, des facteurs tels que les performances et la latence passent au second plan par rapport à la facilité d’intégration. Par conséquent, lorsque deux composants offrent des fonctionnalités presque identiques, mais que l’un est plus performant tandis que l’autre est plus facile à intégrer, les organisations ont tendance à choisir celui qui s’intègre le plus facilement à l’environnement existant. À mesure que la complexité de l’environnement augmente, cette tendance devrait se poursuivre.

Déterminer la valeur

Lorsque vous envisagez de mettre en œuvre une technologie telle que la conteneurisation, vous devez disposer d’un moyen de mesurer la valeur apportée par cette nouvelle approche. Les facteurs qui influent sur cette valeur comprennent généralement l’adéquation, les capacités, les efforts nécessaires et le coût. L’équation suivante montre comment attribuer une valeur relative en fonction de ces facteurs.

Les unités que vous utilisez dans l’équation n’ont pas d’importance ; l’essentiel est qu’elles soient identiques pour chaque élément que vous évaluez.

Cette équation souligne que la technologie doit s’intégrer de manière fluide et que la familiarité (c’est-à-dire la facilité d’intégration) peut être plus importante que des fonctionnalités ou des performances de premier ordre. Par conséquent, l’effort de déploiement joue un rôle modérateur dans le calcul de la valeur globale, ce qui peut rendre des produits moins performants plus attrayants pour les clients en raison de leur facilité d’intégration.

On peut illustrer cet effet par l’exemple de deux solutions de supervision concurrentes. Le produit A présente des caractéristiques exceptionnelles, avec des fonctionnalités de journalisation et de création de rapports parmi les meilleures du marché. Il intègre une sécurité de niveau militaire et offre d’excellentes possibilités d’administration. Malheureusement, son interface de ligne de commande propriétaire, sa prise en charge limitée des normes ouvertes et son manque de fonctionnalités d’intégration rendent son installation difficile. Il est également plus cher que la plupart des autres produits du marché.

En comparaison, le produit B est loin d’offrir les mêmes capacités que son concurrent, même s’il assure tout de même des niveaux acceptables de surveillance et de sécurité. Il surpasse toutefois le produit concurrent en matière de coût et de facilité d’installation. Le tableau ci-dessous récapitule les notes attribuées à chaque produit, sur une échelle de 1 à 10, en fonction de son adéquation, de ses capacités et de l’effort requis pour son installation, 1 étant la note la plus basse et 10 la plus élevée.

En insérant ces chiffres dans l’équation ci-dessus, on obtient le score de valeur indiqué dans la dernière ligne du tableau.

On constate ainsi que le produit moins adapté et moins performant, mais cinq fois plus facile à installer et deux fois moins cher, offre une valeur estimée trois fois supérieure à celle de son concurrent de référence. De nombreuses organisations ont conscience de ces considérations et accordent une importance croissante à la facilité d’installation et d’intégration lorsqu’elles adoptent et déploient de nouvelles technologies. Les approches basées sur les conteneurs peuvent réduire considérablement les efforts de déploiement et maîtriser les coûts, tout en préservant l’adéquation et les capacités.

Pourquoi les conteneurs sont-ils de plus en plus populaires ?

Alors que les applications contribuent de plus en plus à la création de valeur pour les entreprises, la conteneurisation apporte une réponse logique aux défis posés par les pratiques de mise en œuvre informatique axées sur le DevOps. Les conteneurs assurent une isolation vis-à-vis de la plateforme sur laquelle ils s’exécutent, ainsi qu’entre eux, sans la charge de gestion liée à l’exécution de machines virtuelles. Les développeurs peuvent facilement créer des environnements applicatifs intégrant tous les fichiers binaires et toutes les bibliothèques dont ils ont besoin, ainsi que les fonctionnalités réseau et de gestion requises. La conteneurisation simplifie également les tests et le déploiement des applications.

Les environnements basés sur des conteneurs offrent une meilleure utilisation des ressources que les machines virtuelles, car ils permettent d’augmenter considérablement le nombre d’instances d’applications pouvant s’exécuter sur un serveur. En évitant la surcharge liée aux systèmes d’exploitation hôte et invité, les environnements de conteneurs utilisent plus efficacement le temps processeur et l’espace mémoire grâce au partage du noyau du système d’exploitation. La conteneurisation offre également une plus grande souplesse architecturale, puisque la plateforme sous-jacente peut être une machine virtuelle ou un serveur physique. La stratégie produit de Red Hat1 indique qu’à l’avenir, près de la moitié des clients Kubernetes qui déploieront des applications dans des conteneurs exécuteront le moteur de conteneurs directement sur un serveur bare metal.

La conteneurisation constitue la prochaine étape du passage de l’informatique basée sur le matériel à la virtualisation, puis au multicloud. Elle permet d’atteindre jusqu’à 100 % d’automatisation, de créer des services en moins d’une seconde et de réduire leur durée de vie à quelques secondes. Les environnements de conteneurs tels que Docker, OpenShift et Kubernetes permettent ainsi de provisionner et de déprovisionner instantanément des services et des microservices au sein d’une architecture informatique moderne.

Il est important de noter que la conteneurisation offre un avantage essentiel dans le monde multiplateforme et multicloud actuel : la possibilité de transférer des applications d’une infrastructure sur site vers le cloud, puis vers un autre fournisseur de cloud, avant de les rapatrier sur site, le tout sans modifier le code sous-jacent. L’interopérabilité étant un facteur clé dans les décisions architecturales, cette portabilité permet aux services informatiques de franchir des étapes importantes dans le déploiement de services applicatifs et aide les équipes DevOps à atteindre les objectifs de l’organisation. Un récent rapport d’IBM2 souligne également que l’utilisation de conteneurs pour le déploiement d’applications permet aux entreprises d’améliorer la qualité des applications, de réduire les défauts et de limiter les interruptions de service ainsi que les coûts associés.

Ce même rapport répertorie également les applications particulièrement adaptées aux environnements conteneurisés, notamment l’analyse de données, les services web et les bases de données. Dans ce contexte, les performances constituent le facteur clé, mais il convient également de déterminer si les applications sont susceptibles de s’exécuter dans plusieurs environnements et si elles utilisent des microservices permettant à plusieurs équipes DevOps de travailler en parallèle. Avec les conteneurs, vous pouvez résoudre les problèmes de performances en lançant simplement davantage d’instances d’une application, à condition de mettre en œuvre une architecture sans état et de fournir des services applicatifs à grande échelle.

Défis liés aux conteneurs

Les conteneurs ne sont pas totalement exempts de difficultés de déploiement, et cette technologie encore jeune n’a pas encore atteint le niveau de maturité de la virtualisation. La section suivante présente certains des défis liés aux conteneurs.

  1. Gestion des clés – La gestion des clés entre les conteneurs peut s’avérer problématique, notamment parce que la portabilité constitue l’un des principaux avantages des conteneurs. Votre environnement de gestion des clés doit pouvoir prendre en charge le déplacement des conteneurs entre les hôtes sur site, ainsi que leur migration vers le cloud et leur rapatriement.
  2. Réseau – Les conteneurs remettent en question les modèles de réseau traditionnels en raison de la rapidité avec laquelle ils peuvent être lancés et arrêtés. Par conséquent, les adresses réseau statiques seraient inadaptées à un tel environnement. Et bien que des mécanismes d’adressage tels que le protocole DHCP (Dynamic Host Configuration Protocol) fonctionnent correctement avec les hôtes physiques et les machines virtuelles, les charges de travail conteneurisées peuvent apparaître et disparaître avant que l’adresse IP du conteneur puisse être enregistrée et que le conteneur lui-même devienne détectable. Il est essentiel de s’affranchir du matériel réseau physique en utilisant un réseau défini par logiciel (SDN) basé sur des conteneurs, afin de pouvoir migrer des topologies de conteneurs entières d’environnements sur site vers des clouds privés et publics. La plupart des environnements de conteneurs mettent en œuvre une forme d’interface réseau de conteneur (CNI) pour assurer cette fonction.
  3. Multiples technologies de conteneurs – Il se peut que votre organisation ait déjà mis en œuvre plusieurs technologies de conteneurs différentes au sein de son environnement. Malgré ces déploiements, il est probable que votre personnel ne possède pas une connaissance technique approfondie de tous ces environnements. La formation est importante, tout comme le fait de laisser à votre équipe le temps de se familiariser avec ces différentes implémentations de conteneurs. La gestion de ces multiples technologies de conteneurs est également plus coûteuse. Toutefois, les améliorations apportées à la facilité de gestion, notamment dans la dernière version de Kubernetes, tendent à inciter les organisations à se standardiser sur l’environnement le plus simple et le plus utilisé.
  4. Risques liés à la configuration par défaut – À mesure que des applications sont développées dans des conteneurs, le risque de mauvaise configuration de ces derniers augmente. Le déploiement de conteneurs avec leur configuration par défaut en est un exemple. Les services mondiaux de veille sur les menaces de l’Unit 42 de Palo Alto3 ont récemment recensé plus de 40 000 dispositifs de conteneurs utilisant les paramètres de configuration par défaut. Bien entendu, toutes ces instances ne sont pas vulnérables à une exploitation, mais cela montre que les mauvaises pratiques élémentaires de configuration sont répandues et exposent ces organisations à d’autres tentatives d’exploitation.
Figure 2 – Parvenir à une conteneurisation équilibrée

Conteneurisation équilibrée

Un critère de conception essentiel de la conteneurisation consiste à trouver un équilibre entre les trois axes que sont les performances, la densité et la fiabilité, comme illustré à la figure 2.

L’approche de F5 consiste à privilégier la conteneurisation au niveau des composants plutôt qu’au niveau du système. Cette approche présente plusieurs avantages, notamment :

  • Réduction de l’empreinte mémoire de chaque conteneur en évitant d’allouer de la mémoire aux fonctions réseau inutilisées.
  • Réduction de la dépendance à l’égard du CNI de l’hôte, afin d’éviter les problèmes de performances réseau.
  • Mettre en œuvre des composants légers et de petite taille afin de limiter le domaine de défaillance au niveau de l’abonné/utilisateur.

La conteneurisation au niveau des composants nous permet d’atteindre cet équilibre entre trois dimensions grâce à la désagrégation, à la planification et à l’orchestration. Les produits F5 qui mettent en œuvre des conteneurs utiliseront ensuite ces fonctionnalités afin de tirer pleinement parti des avantages de la conteneurisation.

Services d’entrée de conteneurs F5

Pour accompagner les entreprises dans l’adoption des technologies basées sur les conteneurs, F5 propose F5® Container Ingress Services, une solution open source d’intégration des conteneurs. Container Ingress Services fournit des services d’automatisation, d’orchestration et de mise en réseau, notamment le routage, le déchargement SSL, le routage HTTP et une sécurité robuste. Surtout, cette solution intègre notre gamme de services BIG-IP aux environnements de conteneurs natifs, tels que Kubernetes et Red Hat OpenShift.

Sur le plan architectural, Container Ingress Services occupe la position suivante par rapport à vos applications conteneurisées, en ajoutant des services de contrôleur Ingress en frontal et en permettant la visibilité et l’analyse via BIG-IP.

Figure 3 – Services d’entrée de conteneurs F5

Container Ingress Services répond à deux des principaux enjeux précédemment identifiés dans ce document : l’évolutivité et la sécurité. Vous pouvez adapter les applications aux charges de travail des conteneurs et protéger les données qu’ils contiennent en activant des services de sécurité. Grâce à l’intégration de la plateforme BIG-IP, vous pouvez mettre en œuvre des performances applicatives en libre-service au sein de votre environnement d’orchestration. Container Ingress Services réduit également le risque que les développeurs déploient des conteneurs Kubernetes avec les paramètres par défaut, grâce à l’utilisation de charts Helm pour les déploiements et les mises à niveau basés sur des modèles.

En outre, Container Ingress Services renforce la sécurité grâce à des services avancés de protection contre les attaques visant les applications conteneurisées et de contrôle des accès. Pour les développeurs d’applications et les professionnels DevOps peu familiarisés avec les configurations, les services applicatifs F5 proposent des politiques prêtes à l’emploi et un contrôle des accès basé sur les rôles (RBAC), assortis d’un support de niveau entreprise, auxquels s’ajoutent les communautés de clients DevCentral et open source.

Contrôleur Ingress Kubernetes NGINX

Les défis associés à Kubernetes natif concernent le développement et la mise à l’échelle d’applications conteneurisées modernes sans complexité accrue. Les performances et la fiabilité peuvent être limitées, et les services servant de point d’entrée aux conteneurs Kubernetes peuvent être mis en œuvre de manière incohérente, ce qui nécessite davantage d’efforts d’intégration pour leur déploiement et leur configuration.

La solution à ces défis est NGINX Kubernetes Ingress Controller, qui améliore l’environnement Kubernetes de base en fournissant des services de mise à disposition pour les applications Kubernetes. En règle générale, les pods Kubernetes ne peuvent communiquer qu’avec d’autres pods du même cluster. La figure 4 montre comment Kubernetes Ingress Controller permet au réseau externe d’accéder aux pods Kubernetes, selon des règles de ressources Ingress qui contrôlent des éléments tels que le chemin de l’identificateur uniforme de ressource (URI), le nom du service backend et d’autres informations de configuration. Les services disponibles varient selon que vous utilisez NGINX ou NGINX Plus.

Figure 4 – Contrôleur Ingress NGINX pour Kubernetes

Les entreprises qui utilisent NGINX bénéficient de fonctionnalités telles que l’équilibrage de charge, la terminaison du chiffrement SSL ou TLS, la réécriture d’URI et le chiffrement SSL ou TLS en amont. NGINX Plus offre des fonctionnalités supplémentaires, telles que la persistance des sessions pour les applications avec état et l’authentification des API par jeton web JSON (JWT).

Aspen Mesh

À mesure que les entreprises adoptent les microservices pour gagner en agilité dans le développement et bénéficier de l’évolutivité propre au cloud, elles doivent surmonter une courbe d’apprentissage, le temps que leurs capacités organisationnelles s’adaptent à la technologie. Elles souhaitent tirer rapidement parti des avantages des microservices tout en préservant la stabilité sur laquelle repose l’expérience de leurs clients.

Aspen Mesh est une version entièrement prise en charge du maillage de services open source Istio qui aide les entreprises à adopter les microservices et Kubernetes à grande échelle, tout en bénéficiant d’une meilleure observabilité, d’un meilleur contrôle et d’une sécurité renforcée pour leurs architectures de microservices. Aspen Mesh ajoute des fonctionnalités clés destinées aux entreprises, notamment une interface utilisateur qui permet de visualiser et de comprendre facilement l’état et l’intégrité de vos services, un contrôle d’accès en fonction du rôle (RBAC) précis, ainsi que des fonctionnalités de gestion des politiques et de configuration qui facilitent l’application du comportement souhaité à vos applications conteneurisées.

Aspen Mesh fournit une implémentation native de Kubernetes, déployée dans votre cluster Kubernetes et pouvant s’exécuter dans votre cloud privé ou public, ou sur site. Point important, elle peut fonctionner conjointement avec un mécanisme d’entrée basé sur F5, en utilisant Container Ingress Services pour fournir des fonctionnalités de couche 7 plus avancées.

Sur le plan architectural, Aspen Mesh s’appuie sur un modèle de proxy side-car pour renforcer les fonctionnalités et la sécurité des applications conteneurisées, comme illustré à la figure 5.

Figure 5 – Architecture d’Aspen Mesh

F5 et l’adoption des conteneurs

F5 est à l’avant-garde de l’adoption des conteneurs et permet aux entreprises d’exécuter des environnements d’applications conteneurisées fiables, sécurisés et hautement performants, capables d’adapter les services applicatifs à des charges de travail sectorielles aussi bien simples que massives. La technologie des conteneurs jouera un rôle clé dans les futurs environnements de développement et de déploiement d’applications, notamment les implémentations sans serveur, les architectures de maillage de services et la sécurité en périphérie pour les appareils mobiles. F5 s’appuie à la fois sur ses propres travaux de recherche et développement et sur des implémentations commerciales de conteneurs pour concevoir et développer des applications et des services qui feront la différence pour votre entreprise.

Comme pour la virtualisation des produits existants, nous intégrons la technologie des conteneurs d’une manière qui n’est pas toujours immédiatement perceptible pour l’administrateur, mais qui reste totalement transparente pour l’utilisateur final. En tant que client, vous bénéficierez de performances, d’une flexibilité et d’une sécurité accrues. Grâce à l’intégration fluide de ces nouvelles applications et de ces nouveaux services, vous pouvez vous concentrer sur les fonctionnalités dont vous avez besoin.

Nous nous efforçons également d’intégrer les meilleures solutions open source à nos produits, en étendant les services fournis par ces plateformes et en renforçant les capacités de nos environnements de conteneurs. Notre objectif reste de créer des produits plus faciles à déployer, plus rapides à intégrer à vos réseaux existants, plus fiables et plus sécurisés.

Pour mettre en œuvre notre stratégie d’adoption des conteneurs, nous nous concentrons sur les approches suivantes :

  • Élargir la gamme de services applicatifs non liés à la sécurité que nous proposons. L’accent est mis ici sur la mise à disposition d’outils plus performants afin d’améliorer l’observabilité et la gestion des environnements de conteneurs, notamment la gestion des performances applicatives, la journalisation et le suivi, le débogage avancé et la surveillance globale de l’état des applications.
  • Ajouter aux conteneurs des services de sécurité qui ne sont pas axés sur le plan de données. Nous prévoyons ici d’innover en proposant des services de sécurité qui réduisent la surface d’attaque des conteneurs en cours d’exécution.
  • Permettre l’hébergement de conteneurs tiers dans les produits F5. Cette option d’intégration permettrait aux applications développées par les clients ou par des tiers de s’exécuter dans une interface flexible d’exécution de conteneurs au sein des produits F5 actuels et futurs. Cette approche permettrait à F5 de créer des solutions clés en main comprenant une gamme de conteneurs et d’applications prêts à l’emploi ou développés sur mesure, améliorant ainsi considérablement l’interopérabilité.
  • Proposer un conditionnement des services applicatifs existants à l’aide d’outils open source. Cette option nous permet de vous offrir des politiques de service cohérentes entre les environnements existants et ceux nouvellement créés.
  • Automatisez les services de mise à l’échelle et de sécurité des applications conteneurisées afin d’augmenter le nombre d’applications gérées tout en maîtrisant les ressources affectées à leur prise en charge.

L’avenir des conteneurs

F5 s’engage en faveur d’un avenir où les conteneurs constitueront un mécanisme de déploiement fondamental pour de nombreuses technologies futures de services applicatifs. Ces technologies comprendront notamment le serverless, le maillage de services et l’edge mobile, mais pourront également inclure d’autres approches actuellement en cours de développement ou qui restent encore à imaginer. Nous repensons notre gamme de produits afin d’intégrer les conteneurs à nos solutions sans compromettre les aspects essentiels d’une gestion efficace du réseau.

À l’instar de la virtualisation, les conteneurs eux-mêmes tiendront davantage compte des capacités sous-jacentes du matériel sur lequel s’exécute le moteur de conteneurs. Le multithreading, la vitesse de la mémoire, l’accès au stockage et la mise en réseau seront de plus en plus transparents pour les applications exécutées dans chaque conteneur, ce qui permettra d’optimiser encore davantage l’utilisation des ressources.

Nous ne considérons pas les conteneurs comme un substitut à la virtualisation, mais comme une technologie complémentaire. Par conséquent, nous pensons que leur durée de vie sera au moins égale à celle de la virtualisation et que ces deux technologies continueront de coexister. Enfin, nous nous attendons à voir apparaître de nouveaux niveaux d’abstraction qui coexisteront avec la virtualisation et les conteneurs.

Nous sommes conscients que la sécurité restera toujours une préoccupation majeure pour nos clients. C’est pourquoi F5 continue de s’appuyer sur son expertise en matière d’appliances matérielles et logicielles, de pare-feu et de réseaux afin d’offrir le niveau de sécurité le plus élevé possible pour l’ensemble de ses produits.

En résumé, en plus de nos technologies existantes liées aux conteneurs, F5 prévoit de continuer à intégrer les conteneurs à sa gamme de produits afin de vous offrir davantage d’options d’intégration, une fiabilité accrue, de meilleures performances et des délais de déploiement réduits pour les applications mises à jour et à venir.

Pour en savoir plus sur F5 et la prise en charge des conteneurs pour les applications, consultez f5.com/solutions/bridge-f5-with-container-environments

Notes de bas de page

1 L’essor des serveurs Kubernetes bare metal, Container Journal, Mike Vizard, 2019
2 L’état du développement d’applications basées sur des conteneurs, rapport IBM Cloud, 2018
3 Services de conteneurs mal configurés et exposés, Palo Alto Networks, Nathaniel Quist, 2019

PUBLIÉ LE 23 JUIN 2022