C’est l’année d’Ansible chez NGINX.
Nous croyons en une approche de la mise à disposition des applications centrée sur celles-ci, qui permet de faire évoluer intelligemment les applications au niveau des goulets d’étranglement, sans avoir à faire évoluer l’infrastructure de l’ensemble de l’application. Le vaste écosystème d’outils CI/CD utilisés par les développeurs est essentiel à la concrétisation de cette approche. Comptant parmi les outils d’automatisation les plus populaires, Ansible permet aux utilisateurs de NGINX d’automatiser rapidement les tâches répétitives tout au long du cycle de vie des applications. C’est pourquoi nous avons réalisé un investissement majeur afin de développer davantage de rôles et de collections Ansible, pour faciliter l’automatisation de votre environnement NGINX. Au cours des cinq dernières années, notre intégration d’Ansible est passée d’un simple article de blog à deux collections certifiées et plus de 20 rôles, dont la plupart ont été créés au cours des 9 derniers mois !
Pourquoi utiliser Ansible pour provisionner NGINX ?
Il existe plusieurs excellentes raisons d’utiliser Ansible pour provisionner NGINX :
- Vous utilisez probablement déjà Ansible – et si ce n’est pas le cas, vous envisagez au moins sérieusement de l’essayer. Sinon, vous ne seriez pas ici !
- Les déploiements multicloud décentralisés, résilients et redondants sont de plus en plus courants. Ansible vous fournit les outils nécessaires pour installer et configurer facilement les logiciels NGINX sur plusieurs hôtes cibles.
- En utilisant Ansible comme source de référence, vous bénéficiez d’une visibilité centralisée inégalée sur l’ensemble de vos déploiements NGINX. Toutes les informations relatives à vos déploiements sont regroupées dans vos playbooks Ansible, écrits en YAML, l’un des langages de configuration les plus lisibles.
- Nos collections sont certifiées et entièrement prises en charge par Red Hat. En cas de problème, le service d’assistance primé de Red Hat peut vous aider à rétablir la situation.
Notre histoire avec Ansible
Avant de parler de la nouvelle collection NGINX Core, revenons sur notre parcours avec Ansible.
2015 :
- Publication d’un article de blog expliquant comment créer des playbooks Ansible pour installer NGINX et NGINX Plus. Un membre de la communauté nous a fait remarquer (à juste titre) que notre article de blog deviendrait rapidement obsolète et que nous devions développer et maintenir un rôle Ansible officiel.
2017 :
- Lancement de nos deux premiers rôles Ansible, qui permettaient d’installer séparément les versions de base de NGINX et de NGINX Plus.
2018 :
- Fusion des deux rôles initiaux en un seul rôle « nginx » permettant d’installer à la fois NGINX et NGINX Plus.
- Amélioration du rôle nginx afin de configurer NGINX, d’installer NGINX Unit et d’installer NGINX Amplify.
2020 :
- Publication de 16 nouveaux rôles et d’une collection certifiée pour NGINX Controller.
- Lancement du rôle « nginx_app_protect » pour installer et configurer notre nouvelle solution de sécurité, NGINX App Protect.
- Division du rôle nginx en trois rôles distincts et publication d’une deuxième collection certifiée, NGINX Core.
L’évolution du rôle nginx Role
Le rôle nginx est l’un des rôles les plus populaires sur Ansible Galaxy, avec plus de 700 000 téléchargements depuis son lancement en 2018. Malgré sa popularité, certains utilisateurs nous ont indiqué qu’il était lourd et trop long à installer. Si certains apprécient les couteaux suisses™ capables de tout faire, une approche au scalpel présente de nombreux avantages (une approche qu’Ansible a lui-même adoptée avec l’introduction des collections). C’est pourquoi nous avons décidé de scinder le rôle nginx en trois rôles distincts afin d’offrir davantage de flexibilité et de rapidité :
- nginx – Installe NGINX et NGINX Plus
- nginx_config – Configure NGINX et NGINX Plus
- nginx_unit – Installe NGINX Unit
Présentation de la collection NGINX Core
Dans le cadre de nos efforts continus pour améliorer nos offres Ansible, et à la suite de l’introduction des collections dans Ansible 2.10, nous avons créé une collection NGINX axée sur notre offre « principale » : des logiciels permettant de servir du contenu web rapidement et en toute sécurité, ainsi que de fournir des fonctions de proxy inverse et de répartition de charge. La collection NGINX Core comprend donc trois rôles : les deux rôles d’installation et de configuration de NGINX et de NGINX Plus mentionnés dans la section précédente (nginx et nginx_config), ainsi que le rôle nginx_app_protect pour installer et configurer NGINX App Protect, un module WAF complet pour NGINX Plus.
L’utilisation de la collection NGINX Core est aussi simple que celle d’un rôle. Pour l’installer, exécutez :
$ ansible-galaxy collection install nginxinc.nginx_coreVous pouvez ensuite commencer à utiliser les rôles de la collection dans vos playbooks en ajoutant les lignes suivantes au début de vos playbooks Ansible :
---
- collections:
- name: nginxinc.nginx_core
version: 0.1.3La collection NGINX Core comprend également une série de playbooks couvrant de nombreux cas d’utilisation, allant d’une simple installation de NGINX à la configuration d’un proxy inverse sécurisé par NGINX App Protect devant plusieurs serveurs web. Vous pouvez également consulter les playbooks inclus dans le répertoire molecule de chaque rôle afin de trouver des exemples fonctionnels et à jour pour chacun d’eux.
Choisir entre les collections NGINX Core et NGINX Controller
Vous vous demandez peut-être laquelle des deux collections NGINX que nous proposons vous convient le mieux. Comme souvent, la réponse dépend de votre cas d’usage.
- NGINX Core – Choisissez cette collection si vous :
- Utilisez NGINX Open Source
- Avez l’habitude de gérer NGINX Plus directement
- Souhaitent configurer NGINX App Protect
- N’utilisez pas NGINX Controller
- NGINX Controller – Choisissez cette collection si vous êtes abonné à NGINX Controller.
Bien démarrer avec les rôles et les collections NGINX
Si vous êtes abonné à Ansible Automation Platform, vous pouvez accéder aux collections NGINX certifiées sur Ansible Automation Hub (dans l’espace de noms nginxinc). Vous pouvez également trouver les versions communautaires en amont de nos rôles et collections sur Ansible Galaxy. Nous espérons que vous participerez à l’AnsibleFest virtuel les 13 et 14 octobre et assisterez à la session d’Alessandro sur la collection NGINX Core. Vous pourrez également visiter notre stand virtuel pour échanger avec les auteurs, accéder en exclusivité à des démonstrations et à des webinaires, et gagner des cadeaux !
Nous considérons nos collections comme un point de départ appelé à évoluer au fil du temps grâce aux efforts de NGINX et de la communauté. N’hésitez pas à contribuer à la collection et à nous indiquer les nouvelles fonctionnalités qui vous semblent importantes.
Si vous souhaitez essayer NGINX Plus et NGINX App Protect, demandez dès aujourd’hui un essai gratuit de 30 jours ou contactez-nous pour discuter de vos cas d’utilisation.
Grâce à la collaboration entre Red Hat et NGINX, vous bénéficiez du meilleur de nos deux entreprises ! Ensemble, nous :

À 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.