La rédaction – Cet article fait partie d’une série en 10 volets :
- Réduisez la complexité grâce à Kubernetes prêt pour la production
- Comment améliorer la résilience dans Kubernetes grâce à une gestion avancée du trafic
- Comment améliorer la visibilité dans Kubernetes
- Six façons de sécuriser Kubernetes à l’aide d’outils de gestion du trafic
- Guide pour choisir un contrôleur Ingress, 1re partie : identifiez vos besoins
- Guide pour choisir un contrôleur Ingress, 2e partie : risques et pérennisation
- Guide pour choisir un contrôleur Ingress, 3e partie : open source, par défaut ou commercial (cet article)
- Guide pour choisir un contrôleur Ingress, 4e partie : les différentes options de contrôleur Ingress NGINX
- Comment choisir un maillage de services
- Tests de performance des contrôleurs Ingress NGINX dans un environnement cloud Kubernetes dynamique
Vous pouvez également télécharger l’intégralité de cette série d’articles sous la forme d’un e-book gratuit : « Faire passer Kubernetes de l’environnement de test à la production ».
Félicitations ! Après avoir lu les deux premières parties de notre guide pour choisir un contrôleur Ingress, vous êtes presque prêt à faire votre choix. Récapitulons ce que nous avons vu jusqu’à présent :
- Dans la partie 1, nous expliquons comment définir vos besoins, notamment en matière de performances, de budget, de cas d’usage, d’architecture et de responsabilité.
- Dans la partie 2, nous abordons les risques que vous pourriez introduire en choisissant le mauvais contrôleur Ingress et présentons les principaux domaines à prendre en compte pour pérenniser votre choix.
Les contrôleurs Ingress se répartissent en trois catégories : open source, par défaut et commerciaux. Chacune répond à des cas d’usage spécifiques, et il est important de bien définir vos besoins à court et à long terme avant de faire votre choix. Dans cet article de blog, nous présentons les avantages et les inconvénients de chaque catégorie.
Contrôleurs Ingress open source
De nombreux contrôleurs Ingress open source sont maintenus par une communauté d’utilisateurs et de développeurs bénévoles, même si certains disposent également d’équipes d’ingénierie dédiées. Deux des contrôleurs Ingress open source les plus populaires reposent sur NGINX : l’un est maintenu par la communauté Kubernetes, tandis que l’autre est piloté par l’équipe d’ingénierie principale de NGINX et publié en open source. Pour une comparaison plus approfondie des contrôleurs Ingress basés sur NGINX, consultez la quatrième partie de notre série.

- Avantages :
- Gratuit et porté par la communauté – De nombreuses personnes et organisations choisissent des projets open source non seulement pour leur prix imbattable (c’est gratuit !), mais aussi parce qu’elles préfèrent les technologies développées par la communauté.
- Rythme d’évolution des fonctionnalités – Ces contrôleurs Ingress sont plus susceptibles d’être à la pointe de l’innovation en matière de fonctionnalités.
- Inconvénients (communs aux projets open source en général):
- Coût (temps) – Ces solutions ne disposent pas d’outils prêts à l’emploi permettant une configuration et une mise à l’échelle faciles. Vous devez donc consacrer du temps à des personnalisations et à des solutions de contournement adaptées à vos besoins spécifiques.
- Risqué – Des problèmes de stabilité, de sécurité et de fiabilité peuvent survenir (en raison de l’accent mis sur la rapidité de développement des fonctionnalités et du caractère bénévole des contributions). Il se peut que les correctifs pour les vulnérabilités et expositions courantes (CVE) ne soient jamais publiés ou qu’ils n’arrivent que plusieurs mois après la divulgation publique de la CVE, laissant ainsi aux pirates tout le temps nécessaire pour attaquer votre contrôleur Ingress.
- Assistance minimale, voire inexistante – La plupart reposent sur le principe du « débrouillez-vous »… vous ne pouvez compter que sur vous-même et sur la documentation. Si vous rencontrez des problèmes que vous ne parvenez pas à résoudre seul, il peut être difficile (voire impossible) d’obtenir de l’aide – votre seule véritable option consiste à publier votre problème sur les forums de la communauté et à espérer que d’autres membres (a) prennent la peine de répondre et (b) connaissent une solution.
- Résumé : Lorsque les entreprises commencent à expérimenter Kubernetes, elles choisissent souvent un contrôleur Ingress open source, par commodité ou parce que la documentation leur promet une mise en route rapide et gratuite. Cette solution peut parfaitement convenir pour débuter, effectuer des tests ou gérer une production à faible volume.
Contrôleurs Ingress par défaut
Bien que de nombreux contrôleurs Ingress par défaut reposent sur des technologies open source, nous les classons dans une catégorie distincte, car ils sont développés et maintenus par une entreprise qui fournit une plateforme Kubernetes complète (et souvent une assistance pour sa gestion). Cette catégorie comprend notamment les contrôleurs Ingress des clouds publics, Rancher et le routeur Red Hat OpenShift.

- Avantages :
- Gratuits ou peu coûteux – Leur prix attractif est une raison convaincante d’utiliser ces produits. Ils sont déjà intégrés à la plateforme, ce qui représente un gain de temps indéniable lorsque vous débutez.
- Fiables et pris en charge – Parce qu’ils sont gérés par une équipe d’ingénieurs dédiée, ils peuvent être plus fiables que les contrôleurs Ingress gérés par la communauté. Une assistance commerciale est généralement incluse ou disponible moyennant un coût supplémentaire.
- Inconvénients :
- Dépendance à l’infrastructure – Les contrôleurs Ingress par défaut ne sont pas indépendants de l’infrastructure. Vous ne pouvez donc pas les transférer, ni transférer vos configurations, d’un cloud à un autre. Vous avez ainsi besoin de contrôleurs Ingress différents pour chaque environnement de déploiement, ce qui entraîne une prolifération des outils, complexifie leur prise en main par vos équipes et rend le contrôleur Ingress plus difficile à sécuriser.
- Fonctionnalités de base – Ils ne disposent généralement pas des fonctionnalités avancées de gestion du trafic et de sécurité nécessaires aux déploiements à grande échelle.
- Coûts imprévisibles (en temps et en argent) – Bien que les coûts initiaux soient nuls ou faibles, ils peuvent augmenter considérablement et de manière imprévisible à mesure que votre application se développe. Cela peut notamment se traduire par le temps nécessaire pour intégrer à votre application des fonctionnalités absentes de l’ensemble minimal de fonctionnalités du contrôleur Ingress – sans compter que vous devez bien sûr soumettre ces fonctionnalités à des tests de non-régression chaque fois que vous mettez l’application à jour. Autre inconvénient de certains outils par défaut : votre facture cloud peut grimper en flèche à mesure que votre application gagne en popularité, en raison de frais liés au débit qui semblent anodins au départ.
- Résumé : Un contrôleur Ingress par défaut est un choix courant pour les équipes qui découvrent Kubernetes et utilisent une plateforme gérée telle qu’Amazon Elastic Kubernetes Service (EKS), Google Kubernetes Engine (GKE), Microsoft Azure Kubernetes Service (AKS), Rancher, ou Red Hat OpenShift Container Platform. À mesure que leurs applications gagnent en maturité et que leurs équipes s’agrandissent, les entreprises choisissent souvent d’ajouter un contrôleur Ingress de niveau professionnel à leur environnement plutôt que de remplacer l’outil par défaut.
Contrôleurs Ingress commerciaux
Ces contrôleurs Ingress sont des produits sous licence conçus pour prendre en charge les déploiements de production à grande échelle. La version basée sur NGINX Plus de F5 NGINX Ingress Controller, que nous aborderons plus en détail dans la quatrième partie, en est un exemple.

- Avantages :
- Large éventail de fonctionnalités – Les contrôleurs Ingress commerciaux proposent de solides ensembles de fonctionnalités prenant en charge la gestion avancée du trafic et la mise à l’échelle des déploiements de grande envergure. Ils peuvent également s’intégrer à d’autres produits adaptés aux environnements de production, tels qu’un WAF ou un maillage de services.
- Évolutif – Les entreprises constatent souvent que ces options leur font gagner du temps, car elles offrent généralement davantage de fonctionnalités « prêtes à l’emploi » qui ne nécessitent ni personnalisation ni solutions de contournement. Elles peuvent facilement être intégrées aux pipelines d’automatisation afin de permettre à votre infrastructure d’évoluer selon vos besoins.
- Fiables et pris en charge – L’un des principaux avantages des produits commerciaux est leur stabilité : ils sont soumis à des tests approfondis à chaque nouvelle version et bénéficient régulièrement de mises à jour logicielles et de correctifs de sécurité selon les besoins. Une assistance commerciale complète est généralement proposée à différents niveaux, ce qui vous permet souvent d’obtenir une aide confidentielle dans les minutes ou les heures qui suivent l’apparition d’un problème critique.
- Inconvénients :
- Développement plus lent – La stabilité étant importante pour les contrôleurs Ingress commerciaux, leur rythme d’ajout de nouvelles fonctionnalités peut être légèrement inférieur à celui de leurs équivalents open source.
- Coût (financier) – La réalité des produits commerciaux, c’est qu’ils sont payants. Pour les organisations qui disposent de plus de temps de développement que de liquidités, le coût peut être rédhibitoire tant que cette situation ne change pas.
- Résumé : À mesure que les organisations se développent, le choix du contrôleur Ingress gagne en importance en fonction de la complexité de leurs équipes et de leurs applications. Lorsqu’une organisation atteint un degré de complexité élevé, il devient pertinent d’opter pour un contrôleur Ingress commercial, car celui-ci peut simplifier la gestion et accélérer la mise sur le marché de nouvelles fonctionnalités produit.
Étape suivante : évaluer les options
À ce stade de votre parcours, vous êtes prêt à sélectionner quelques contrôleurs Ingress à tester en éliminant les options qui ne répondent pas à vos besoins. Pour commencer à comparer leurs principales fonctionnalités, vous pouvez consulter learnk8s, qui propose un tableau comparatif gratuit des contrôleurs Ingress évalués.
Au fil de vos recherches sur les contrôleurs Ingress, vous remarquerez probablement que de nombreuses solutions reposent sur NGINX. Pour découvrir un aperçu des solutions basées sur NGINX, consultez le dernier article de cette série, « Guide pour choisir un contrôleur Ingress, 4e partie : les différentes options de contrôleurs Ingress NGINX », à paraître prochainement.
À propos de l’auteur

Articles de blog associés

Tendances actuelles des technologies cloud natives, de l’ingénierie de plateforme et de l’IA
Découvrez les principaux enseignements tirés des réponses à l’enquête annuelle F5 NGINX sur les dernières tendances en matière de technologies cloud natives, de sécurité, d’ingénierie de plateforme et d’IA.
Quels contrôleurs Ingress NGINX sont affectés par les vulnérabilités CVE-2022-4886, CVE-2023-5043 et CVE-2023-5044 ?
Lorsque de nouvelles CVE sont signalées, il est facile de ne plus savoir si elles concernent un outil de contrôleur Ingress NGINX particulier, car il existe plusieurs projets. Cet article présente les CVE et explique comment distinguer les différents projets de contrôleurs Ingress afin de dissiper toute confusion.
Votre API est-elle en temps réel ? Testez sa latence avec l’outil rtapi de NGINX
Votre API répond-elle aux requêtes en moins de 30 ms ? Si ce n’est pas le cas, il ne s’agit pas d’une API en temps réel offrant la faible latence exigée par la grande majorité des organisations. Mesurez la latence de votre API avec l’outil rtapi de NGINX et découvrez comment NGINX peut l’aider à offrir une réactivité en temps réel.

Un testeur d’expressions régulières pour NGINX et NGINX Plus
Le testeur d’expressions régulières (regex) pour NGINX et NGINX Plus vous évite de tâtonner en vous indiquant si une expression régulière utilisée dans un bloc location ou map correspond aux valeurs comme prévu. Il génère la configuration appropriée et affiche les valeurs des groupes de capture.
Caches partagés avec les clusters de cache NGINX Plus, partie 1
Optimisez la capacité de votre cache web en le répartissant entre plusieurs serveurs de cache web NGINX ou NGINX Plus. Découvrez comment procéder dans cet article.
Introduction aux microservices
Les microservices suscitent actuellement beaucoup d’intérêt. Cet article de blog est le premier d’une série de sept consacrée à la conception, au développement et au déploiement de microservices.