 Bonne soirée, tout le monde, bienvenue dans cette session où nous verrons où vous pouvez faire vos clôtures de Kubernetes quand il n'y a pas d'accès internet. Je suis Christophe Jaufré, je suis le architecteur de la solution staff de Nutanix. Nous faisons des plateformes d'entraînement de Cloud Enterprise et je suis partie du team de product management. Je travaille avec le product manager et l'engineering pour empêcher la stratégie de Cloud native à Nutanix. Le but de cette session aujourd'hui est de partager avec vous beaucoup d'expériences que j'ai avec l'utilisateur, les clients que l'on voit chaque semaine, chaque mois et spécifiquement sur ces cas de utilisation spécifique où quand vous voulez utiliser Kubernetes dans l'entreprise il y a beaucoup d'issues quand vous avez besoin d'accès internet. Le but de cette présentation est de vous donner beaucoup de feedback sur comment cela fonctionne. Vous ne voyez pas tout ça, mais le but c'est de vous partager et aussi de vous partager des meilleures pratiques, des outils additionnels que nous pouvons utiliser pour l'aider dans ce cas. Nous commençons par le début. Je suis très sûr que tout le monde dans cet endroit a déjà envoyé des containers. Je suis très sûr. Parfois, c'est très facile. Vous ne voyez pas ce genre de pictures. Il y a des barres de progress où vous voyez que certaines images sont élevées. Normalement, vous voyez juste le bout. Les images sont élevées à l'intérieur de votre laptop. C'est-à-dire si vous utilisez Docker. C'est-à-dire si vous utilisez Kubernetes. Vous faites une déploiement de cubes cut-all avec une image. Et en ce cas, vous ne voyez pas. C'est juste le résultat qui est créé. Mais si vous regardez les événements derrière, il y a une ligne spécifique où vous voyez que cette image, ce container a été successement élevée. La main idée ici est à chaque fois que vous essayez d'explicter. A chaque fois que vous essayez d'explicter quelque chose avec Docker, avec container D, avec votre runtime, avec Kubernetes, cette image vient de l'Internet. Il y a plein de registres à l'Internet. Et parfois, vous voyez le nom. Vous savez Docker Hub. Peut-être que c'était l'initiel registre. Mais il y a plein de registres à Google, à Amazon, à Azure. Il y a plein d'interessants containers. Et chaque fois que vous faites une commande basique pour déployer votre container, pour déployer votre code, vous spécifiez une image et cette image vient de l'extérieur. Vous allez me dire ce qui est le problème. Normalement, presque tout le monde a une grande bande-route ATOM, par exemple. Vous avez une connexion de fiber qui est assez rapide. Vous faites de l'image. Il n'y a pas de problème. Mais dans l'entreprise, c'est un peu différent. Plenty de gens ont déjà vu ce message. Erreur, image, poul. C'est quelque chose de très fréquent et spécifiquement, quand on essaie d'utiliser Kubernetes dans une entreprise network, dans un contexte entreprise, c'est quelque chose de très récurrent. J'ai shared les quelques années que nous pouvons rencontrer dans trois différents parties. La première, c'est quand vous mettez une entreprise limitée. C'est pour moi la base et la posture commune que vous pouvez trouver dans une entreprise normale, je vais dire, parce que si vous n'avez pas des règles de sécurité, des règles de filtration dans votre entreprise et si vous essayez de faire un business sérieux, je pense que vous devez essayer de penser un petit peu parce que la sécurité aujourd'hui est une vraie issue. Et il y a des gens dans votre entreprise qui vous connaissent. Nous essayons d'enforcer ces règles de sécurité. Donc, ils mettent des règles en place, ils font de la filtration basée sur la destination qu'on essaie d'achever. Ils font de l'inspection. Ils donnent des outils additionnels pour aider à sortir, mais aussi pour protéger l'entreprise, des proches, des outils d'authentification. Ils créent des DMZ où vous devez mettre votre clou de Kubernetes. Tout a un but. C'est la sécurité. Mais aussi, ce genre de choses font une issue. Parce que, comme je l'ai dit avant, une installation de Kubernetes doit être retrievée quelque chose à l'extérieur de votre nettoire. Et ces règles, ces postures qui causent une issue. La première chose que vous devez faire, c'est des règles basiques. Je vous remercie, mais juste essayez d'abord d'identifier ce que vous devez obtenir à l'extérieur. Parfois, c'est juste de lire une documentation simple où vous verrez un liste de targets que vous devez ouvrir. Donc, juste de parler avec la team de sécurité pour ouvrir ce target. Juste une chose, faites attention à cette documentation. Parce que, beaucoup de fois, je vois que la documentation n'est pas de date. Même si, parfois, ce n'est pas de date. Parce que les règles sont changées, les destinations ne sont pas initialement, elles provoquent la registrée à un nom spécifique, mais après ça, elles font une redirection. Ils utilisent des différents DNS names, pour qu'elles puissent causer des problèmes. Parfois, c'est mieux d'aller vers la route. Dependant des outils que vous devez utiliser pour déployer votre distribution, parfois, elles provoquent des interfaces commandes pour obtenir l'image. Vous devez retirer pour installer le produit. Je vous donne deux exemples, ici, une faute Kubernetes pour installer la distribution Kubernetes. Et la deuxième avec l'appli de cluster qui devient la principale frameworks pour automatiquement déployer des clusters Kubernetes. Tout le temps, vous voyez qu'il y a des commandes basiques, configs, listes, etc. Pour retirer la liste de l'image, vous devez pouvoir installer cette distribution Kubernetes. Donc, utilisez ces outils que c'est assez utile. Et si vous avez des outils de la sécurité, de la networking, pour retirer les logs, parce que dans les logs, vous verrez clairement que j'ai essayé de obtenir cette image et qu'il y a un problème, le port n'est pas ouvert, il n'y a pas de connexion disponible. C'est le problème que vous pouvez rencontrer. La deuxième est quand les teams de sécurité tentent d'utiliser l'approxie. C'est quelque chose très souvent avec des mandatories pour aller au-delà d'une entreprise network. Et en ce cas, il y a beaucoup de travail dans votre cluster. Tout d'abord, vous devez configurer cette approxie à votre conteneur au niveau de l'aventure. Le conteneur au niveau de l'aventure, c'est le processus. Nous sommes managés de votre conteneur. Et c'est le processus qui va au-delà pour retirer les images. Ce processus doit être configuré. Normalement, il y a des variables d'environnement pour mettre les trois mains. C'est une approxie. Et ces variables doivent être données à l'aventure. Si vous utilisez quelques additionnels pour installer votre cluster de Kubernetes, vous devez lire le doc parce que parfois il y a des méthodes additionnelles pour mettre l'information de l'aventure. Mais si vous juste utilisez les tools de Kubernetes comme QBADM ou ClusterSatel, vous devez passer cette information et vous devez mettre au niveau de l'aventure. C'est quelque chose d'aventure. Normalement, c'est un processus appelé SystemD qui est la production de la containerD. Vous devez créer un drop-in. Vous devez mettre un file additionnel. Je vous mets un fil de file. C'est un exemple. Mais vous devez mettre ce pass spécifique. Vous devez mettre les trois variables environnementales et la valeur d'un variable environnementale. Vous devez mettre le statut de la containerD. Vous devez voir une ligne spécifique où vous devez voir ici, où est-ce ma mouche ? Je l'ai mis. Drop-in ici. Vous devez mettre plusieurs drop-ins et vous devez trouver ce que vous créez avant. Pour exemple, HTTP-proxy ici. C'est un fil. Je le configure. C'est important parce que ce change est un fil. Vous devez mettre votre temps de tour. Vous devez mettre vos images. Mais que sur votre app ? En default. Toutes les apps qui vous planifient dans votre cluster ne peuvent pas accéder à Internet. Parce qu'ils ne savent où l'utilisation et où la proxy est. Vous devez faire presque le même. Parce que chaque app qui doit avoir accès à Internet doit être environnement variable. C'est la majorité parce que parfois des produits vous demandent pour configurer un fil additionnel. Retournons dans ce cas. Mais habituellement, l'environnement variable est quelque chose qui est supporté par plein de différents apps. Parfois, vous devez faire attention. Parfois, ce n'est pas l'un des cas HTTP-proxy. Parfois, vous devez faire attention. Mais voilà pas mal. Et vous devez faire attention. Vous devez faire attention. Mais le sujet c'est on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on qu'on et spécifiquement, si vous êtes beaucoup de pôtes qui créent et disparaissent et peut-être créées par un process external, comme un opérateur ou une chaine de chaine CICD, ça va devenir très difficile. Il y a quelques conseils. Il y a des outils que j'aime beaucoup, qui s'appelle Kiverno. Je ne sais pas si vous savez ces outils. C'est une police enjeune pour les coubernettes. C'est un outil très bon qui permet de créer des outils et cette police est capable de valider, muter, générer et nettoyer des ressources de coubernette. C'est quelque chose qui est directement intégré à l'appli du service API par un mécanisme web. Et il s'interseille directement durant le temps de création de votre réquest. Par exemple, si vous demandez de créer un déploiement, automatiquement, ils vont obtenir le réquest de déploiement et vous pouvez appeler cette police sur ce réquest. C'est quelque chose qui est assez simple à installer. Il y a un « M-chart » avec trois commandes. Vous avez l'exemple ici, vous pouvez installer Kiverno assez facilement. Et après ça, le souci dans mon cas, à rappeler, nous voulons mettre un procès pour notre poids. Le souci est de créer une police pour automatiquement mettre ce souci pour toutes les apps. Donc la police, je le mets ici, c'est un exemple. C'est assez simple. Dans la police, c'est une ressource customaire pour les coubernettes, une ressource customaire pour Kiverno en ce cas. Il y a deux principaux. La première, ici, c'est le target. Quels ressources nous voulons faire quelque chose sur ça ? Dans ce cas, nous voulons targetter le poids. C'est facile. Et après ça, ce que nous faisons sur ce poids, il y a une action qui s'appelle « muter ». Dans ce cas, nous voulons muter sur le flai. Le poids va être déployé dans le clé de coubernette. Ici, c'est facile. Je vais juste faire un patch de toutes les containers. Et je vais juste ajouter mon « En variable » dans cette police. Et après ça, chaque fois que je crée un nouveau poids, sans toucher tout ce qu'il y a, ces trois « En variable » vont être ajoutées directement dans mon poids. Et c'est totalement dynamique. Nous pouvons improving un petit peu cette approche. Imaginez que vous ne vouliez pas que tous vos apps puissent utiliser la proximité, parce qu'il y a plein de apps qui sont ici pour donner des services internes. Vous pouvez ajouter un sélecteur spécifique dans la partie du target où vous allez dire « OK, je veux faire cette mutation, mais seulement pour le poids, nous avons un label spécifique, en ce cas, Proxy Equal Inject. C'est un exemple. Vous pouvez adapter la police comme vous voulez. Mais c'est quelque chose de très agréable. Ceverneau, vous pouvez créer votre propre police pour adapter l'équilibre de la police pour ce que vous voulez acheter exactement. La deuxième utilisation que nous pouvons voir dans l'entreprise, c'est quand vos appareils sont complètement isolés. C'est une poste de sécurité haute. Vous pouvez trouver clairement qu'il n'y a pas d'accès à l'internet. Normalement, ces sortes d'appareils vont encore plus loin. Par exemple, ils vous permettent d'utiliser des bastions pour connecter avec le clé de Kubernetes. Vous ne faites pas de direct la connexion de Kubernetes. Par exemple, quand vous utilisez votre clé de Kubernetes, vous êtes récordé. Donc, vous n'avez pas besoin de faire quelque chose de mauvais, parce qu'il y a une preuve que c'est ce que vous faites. Donc, c'est clairement une poste de sécurité haute. Et dans ce cas, l'utilisation de Kubernetes peut devenir beaucoup plus difficile. La première chose, c'est qu'il faut installer. Normalement, selon les outils que vous utilisez pour installer, il y a des méthodes spécifiques pour targeter ce genre d'environnement. Donc, n'hésitez pas, regardez les outils que vous installez et il y a des outils qu'on cherche. On parle beaucoup d'AirGap ou d'une méthode de connexion de l'internet. C'est quelque chose qu'on peut trouver dans beaucoup de documentations. Mais si nous allons un peu plus plus bas pour voir où ça fonctionne exactement. Vous devez avoir l'idée d'abord identifier tous les containers, tous les images et tous les artefacts que vous devez obtenir pour pouvoir installer votre cluster de communauté. Après cela, vous devez appuyer ces items pour les détruire localement. Et après cela, la configuration des outils qui déploient le cluster de communauté a généralement des flags à installer pour dire, OK, je ne veux pas utiliser l'externaire de l'externaire ou l'externaire de l'externaire mais je veux utiliser mon internaire de l'externaire où j'ai fait une copie de tous les artefacts que je dois déployer dans mon cluster. Donc, en ce cas, la première chose qu'il faut pour installer localement est laregistration de container. Parce que la majorité de artefacts que vous devez couper localement pour déployer votre cluster sont les images de container. Et en ce cas, vous devez utiliser laregistration locale. Nous sommes heureux. Si vous regardez le SCNCF landscape, il y a plein de choix. Je mets une petite capture sur la choisie de laregistration de la landscape sur ce slide. Il y a beaucoup de choix. Donc, il y a un choix différent pour des gens différents. Mais quand vous devez choisir laregistration, gardez en compte que selon laregistration que vous devez choisir, vous pouvez avoir des features spécifiques qui vous aideront dans cette situation où vous n'avez pas de access internet ou de difficulté access internet. Par exemple, vous pouvez targeter laregistration pour faire des réplications entre différentes registres. Par exemple, pour obtenir l'image automatique de l'extérieur et mettre cela dans votre registre locale. La partie de sécurité peut être aussi intéressante pour pouvoir scanner l'image que vous devez de l'extérieur et pour le retirer à l'intérieur, seulement si le SCNCF est OK, par exemple, n'est pas critique ou ICV. C'est un genre de feature que vous pouvez trouver dans laregistration. Et aussi, l'image de l'image, la sécurité, la façon dont vous distribuez l'image, il y a plein de optimisation que vous pouvez trouver dans une certaine registre. Globalement, nous avons le choix que votre registre, juste votre registre, pas le commentateur, mais juste votre registre a accès à l'internet, vous pouvez imaginer si votre registre est capable de faire ça, pour mettre des règles de réplication directement dans votre registre. Je vous donne un exemple ici avec l'arbre. On peut dire OK, je veux faire un copie de toutes ces images ou peut-être toutes de cette partie de votre registre de cette partie de votre registre. C'est ici que j'ai utilisé mon local. Il vous aide à ne pas tracé tout à l'heure et à l'internet. C'est un bon moyen de le faire, mais ce n'est pas toujours possible. Si vous êtes dans une situation de réglage, il n'y a pas d'accès. Votre local de la registre n'est pas capable d'accès à l'internet. Donc, en ce cas, vous devez faire un processus de deux pas. Vous devez avoir un premier desktop ou un laptop qui a l'internet d'accès. Et en ce cas, vous devez récupérer vos images et après ça, vous devez mettre vos images peut-être sur un drive ou sur un USB key. Vous devez faire un second laptop qui a l'internet d'accès et peut-être que vous devez valider vos images pour la posture de sécurité. Et après ça, vous devez le mettre à l'internet de votre registre. Pour faire ça, il y a quelques outils qui peuvent aider. Il y a un, j'adresse beaucoup aux gens. C'est le copéau. C'est un copéau. C'est comme un armée en Suisse quand vous devez travailler avec les containers et les registres. C'est assez facile à utiliser des outils. Vous installez avec votre basic package manager. Quoi que ce soit vous utilisez Linux, MacOS, Windows. Il y a une version pour ça. Et après ça, vous devez utiliser des commandes basiques. Je mets l'exemple. Le commande sync pour l'exemple dans le copéau permet à vous de obtenir un copier de certaines images externes. Vous devez faire un local archive. Après ça, vous devez l'archive. Vous devez le mettre au second laptop ou vous devez le laptop au second place, au second network. Et vous devez le revers global. Vous devez l'archive locale et vous devez le mettre dans la registre locale. Ça vous permet d'optimer la façon que vous coupez l'image vers ce que vous faites un docker-poule, docker-pouche, docker-pouche, docker-pouche pour chaque image. Ça devient très compliqué. Si vous avez fait ça, imagine que votre commande discluster est déjà déployé. Vous avez les images dans votre registre locale. Vous devez l'utiliser. Donc un petit peu comme la proxie. Le plus facile c'est de changer votre manifest. OK. Il y a un pass image dans le manifest. Vous devez juste remplir la référence publique dans le pass image et vous devez votre registre locale avec le pass de votre image. Une fois plus, si vous avez juste quelques manifest pour changer, c'est facile. Mais dans une vraie agile environnement avec plein de contenus et plein de méthodes qui sont déployées dans les contenus, c'est difficile. Dependant de la façon que vous installez les apps, par exemple, dans Kubernetes, il y a Elm. Elm utilise beaucoup pour déployer des apps. Vous pouvez regarder dans votre charte de l'album quelque temps et très souvent il y a un moyen dans les files de valeur, dans la configuration de la charte. Vous pouvez changer le pass target de votre image. Si vous avez ce cas, c'est facile. Je vous donne l'exemple ici avec Kiverno. Par exemple, imagine que vous voulez installer Kiverno avec Imagine Store dans votre registre locale. Il y a des valeurs que vous pouvez mettre comme image.repository image.repository cleanupcontroller.image.repository et dans toutes ces valeurs vous mettez votre repositeur locale. Notes chaque charte de l'album se produit ce genre de feature et même si ils se produisent, il n'y a pas de méthodes pour faire ça. Donc le nom de l'album peut changer, il peut y avoir un problème. Donc c'est quelque chose très difficile. Une autre fois, on peut penser d'utiliser Kiverno et faire une seconde police pour adapter automatiquement votre image pass dans votre poste. Donc l'exemple ici est un peu le même. Vous avez toujours le même target, les postes et vous avez une action mutée où on dit OK, ici j'utilise le RegEx. Je prends tout avant le premier slash dans mes images et je mets ma registre locale. Il va aussi dépendre de la registre que vous utilisez parce que dépendant de la registre il y a une façon différente pour développer l'exacte pass de votre image mais vous pouvez adapter ces règles basé sur votre besoin. Et attention, j'ai expliqué la police un petit peu parce que vous devez faire ça pour les containers mais aussi pour les containers ingénielles. C'est la façon. Il y a un autre qui est aussi très utile. Vous avez l'obligation pour configurer le container runtime directement pour faire ce genre de réplacement. Avec container D qui est assez commun dans la main de Kubernetes Distribution vous avez l'obligation pour créer un extrait de configuration. Je vous donne un exemple ici. Vous devez mettre votre main configuration file pour utiliser une certaine configuration directrice. C'est un dynamique. Et après ça vous créez un file comme ce file. Et vous mettez ça dans un folder. Il y a un folder défaut et il y a des règles défautes pour mettre tous les requises de registre. Ou vous pouvez aussi faire un folder spécifique pour chaque registre namespace. Un registre namespace. Globalement, c'est le nom de la namespace. Donc pour mon exemple je mets un code.io si j'ai envie d'intercepter seulement le code au code.io et de remplacer ma registre locale seulement en ce cas. Et après ça vous créez le file ostomale dans le folder correct et vous avez des syntaxes spécifiques. Vous verrez ici où vous définissez quelle registre la place locale que vous voulez utiliser. Vous pouvez adapter le pass et aller plus loin dans votre propre registre locale. Il y a plein de choses que vous pouvez regarder dans la documentation pour adapter la façon que le remplacement sera fait. Mais l'intérêt de ce point quand vous mettez le contenu de runtime avec ces features il n'y a pas plus quelque chose à faire dans votre code dans votre lamelle dans votre manifeste qui est automatiquement transmettie à l'événement de runtime. Pour les gens qui utilisent OpenShift par exemple il y a exactement le même type de feature l'objet de mettre le runtime crée en ce cas pour replacer sur le fil aussi les images. La dernière case c'est aussi un cas qui n'est pas complètement isolée ou limitée mais c'est un cas spécifique qui aussi tient des problèmes quand vous voulez déployer quelques clusters de Kubernetes. C'est un cas d'objet de constrain. Parce que et c'est quelque chose qui est spécifique pour le scénario de l'aide. Quand vous avez des problèmes avec les bandwidths quand vous avez des problèmes parce qu'il y a beaucoup de flattance ou peut-être des pâquettes de faute les bandwidths sont très bas ou juste parce que parfois si vous utilisez des prétis haïté costillais par exemple en utilisant des satellites ou ce genre de choses c'est un cas où vous voulez aussi optimiser la façon que le cluster de Kubernetes fonctionne. Un exemple est de réutiliser ce qu'on a vu sur l'approche de l'isolation de networks parce que le fait de déployer un registre local pour faire des réplications automatiques est utile quand vous êtes dans ce genre de scénario parce que vous imaginez que vous avez le registre local à l'étage si vous avez plusieurs clusters de Kubernetes à l'étage nous devons rétribuer cette image ils rétribuent directement dans le registre local et vous pouvez planir le registre local pour automatiquement répliquer l'image à un certain temps ou peut-être automatiquement quand il y a un nouvel image donc il y a beaucoup d'optimisation que vous pouvez faire à ce niveau et l'objectif en ce cas c'est de toujours avoir l'image à l'étage à l'étage mais il y a une issue avec cet approche c'est quand vous voulez lancer un nouveau app imaginez dans le centre de place le développeur crée un nouveau app et si vous voulez le mettre sur le vol sur le site remonte ça va prendre du temps parce que si votre image commence à être un peu plus grande je sais que les containers nous tentons de le garder petit mais ce n'est pas toujours une situation je vois des clients des gens avec des containers qui font de multiples gigabits par exemple dans l'escalier et en ce cas ça cause des problèmes il y a les derniers outils que je veux vous partager il y a l'obligation de faire des images streamer à l'étage sur le niveau de temps et il y a un projet pour faire ça et le plus commun c'est le projet StarJZ c'est un snapshotur que vous pouvez directement dans votre temps donc globalement vous réplacez la partie de votre temps et spécifiquement la partie qui vous mangez les images par cette spécifique composante et l'idée ici est que le temps de temps est capable de commencer le container même avant ils vous donnent ils vous portent les images donc c'est assez utile parce que vous pouvez imaginer un nouveau scénario et spécifiquement quand vous avez très grands containers je ne vois pas des clients qui ont des clients autour de 100 gigabits donc c'est assez grand dans ce cas ils vont faire des streamings et ils vont commencer à obtenir la première partie du container et après ça sur le demandant selon les files que vous voulez accéder sur le container ils peuvent continuer à donner l'élite sur le vol ce genre de projet n'est pas trop complexe pour installer juste pour vous donner un exemple vous devez installer dans chaque de vos hostes la partie StarJZ snapshotur bien sûr et vous devez une fois plus pour réconfigurer le container globalement il y a deux principaux pour configurer je vous donne l'exemple ici c'est assez facile à faire vous pouvez le mettre dans votre template host pour exemple et la dernière partie vous devez optimiser vos images parce que vous ne pouvez pas utiliser les images defaultes de la registre publique parce que les images doivent être optimisées pour être utilisées par le StarJZ snapshotur en ce cas ils vont juste récourir un petit peu ou les images qui font des layers pour vous déterminer la dépendance en ce cas il y a de nombreuses manières si c'est votre propre container à la fois de construction il y a des options que vous pouvez utiliser pour optimiser sur le vol le container mais ce n'est pas utile c'est un peu plus difficile mais nous sommes heureux il y a des extensions qui existent pour quelques registres et cette expérience est faite sur le vol quand vous vous mettez une image dans la registre pour prendre optimiser et créer une seconde version de l'image dans la registre avec des différents tags par exemple et après ça la seule chose qu'on doit faire c'est d'utiliser ces nouvelles images juste pour vous donner un petit exemple j'enlève les mêmes images globalement c'est celui que j'enlève dans ma registre locale la première et vous voyez j'ai fait des restrictions de ma main donc il y a 4 minutes pour déterminer et la même image qui va être optimisée automatiquement par ma registre d'expansion n'aient que 2 secondes avant qu'ils commencent le contenu pour sûr dans 2 secondes vous n'avez pas l'image mais vous avez toutes les parties nécessaires pour pouvoir commencer et après ça ils continueront de l'enlever donc vous avez quelques latences à la base du début sur la vitesse du nettoyage mais il vous dit que ne vous bloquez quand vous lancez le contenu donc si nous devons conclure il y a beaucoup de situation où l'accès du nettoyage est difficile ou même quelque temps est impossible mais ce n'est pas une calamité comme on le voit il y a plusieurs manières pour le solider globalement si vous avez la base de postures de l'inmité du nettoyage soyez compte sur les règles et parlez avec votre équipe de nettoyage vous pouvez utiliser la proximité très facilement si vous avez le droit et le droit de l'approche si votre équipe implemente une vraie approche de sécurité avec un procès de proche il y a aussi un moyen de le solider local registre automatique réplication ou peut-être une réplication de 2-step avec des outils comme Scopeo nous avons vu avec Kiverno nous pouvons vous aider beaucoup à réduire le nombre de processus qu'il faut faire à l'intérieur de l'étude de l'équipe de nettoyage pour contrôler la proximité ou pour contrôler la change de registre il y a beaucoup de moyen de le solider juste s'il vous plait trouver l'un qui s'occupe le meilleur et même pour le nettoyage de constrain vous pouvez aussi réutiliser l'approche de nettoyage isolée ou aussi commencer à utiliser le stream le approche de stream est quelque chose de nouveau mais on voit beaucoup plus de gens en utilisant et le progrès est vraiment permanent sur cette partie donc n'hésitez pas à le tester au moins et à voir comment ça fonctionne à l'intérieur j'ai mis un lien sur tout le projet que j'ai shared avec vous à l'intérieur de cette présentation vous pouvez le trouver par scanner cette QR code vous avez direct accès à la PDF de l'application et vous avez aussi l'habilité de poser des questions ou aussi de donner des réponses sur la session donc j'espère que vous avez aimé et que ce soit utile pour vous et je vais dire un grand merci et si vous avez une question s'il vous plaît des questions, oui généralement ça dépend ah, il y a un micro encore ok la main question est sur où on mange le pool de l'application globalement ça dépend où vous installez votre application il y a quelques exemples lmchart mais pour le CNI ce n'est pas le cas généralement CNI ça dépend de CNI parce que par exemple beaucoup de gens utilisent CILIUM CILIUM a un mchart je crois que vous êtes de VMware donc en très high on ne sait pas si vous avez un mchart ou pas mais en ce cas le plus facile est peut-être de créer votre propre mchart basé sur les sources que vous pouvez donner externalement et vous pouvez mettre ce mchart directement dans la registre parce que lmchart aussi aujourd'hui est capable d'être installé dans une registre OCI compatible donc je pense que c'est le meilleur moyen de faire ça créateur il y a un mchart oui exactement faire un mchart et mettre ça dans la registre