Rédacteur – Ce billet fait partie d’ une série en 10 parties :
Vous pouvez également télécharger l’ensemble complet des blogs sous forme d’eBook gratuit – Taking Kubernetes from Test to Production .
L’adoption de microservices accélère les expériences numériques, mais les architectures de microservices peuvent également rendre ces expériences plus fragiles. Alors que vos développeurs travaillent d'arrache-pied pour proposer de nouvelles applications, votre architecture peut vous exposer à un risque accru de pannes, d'expositions à des problèmes de sécurité et de perte de temps en dépannage inefficace ou en résolution de problèmes évitables. Dans ce deuxième blog de notre série sur Kubernetes de niveau production, nous examinons comment les composants qui offrent une visibilité sur le trafic peuvent réduire la complexité et améliorer la sécurité dans vos environnements de microservices.
Commençons par examiner quelques définitions :
Dans une enquête réalisée en 2020 par StackRox , 75 % des utilisateurs de Kubernetes ont identifié la visibilité comme une capacité « indispensable ». Nous convenons que la visibilité est essentielle dans Kubernetes car il peut être particulièrement difficile de savoir ce qui est déployé. Et pourtant, 95 % des personnes interrogées dans le cadre de l'étude State of Application Strategy (SOAS) 2021 de F5 ont indiqué que, bien qu'elles disposent d'une multitude de données, elles ne disposent pas des informations sur les performances, la sécurité et la disponibilité des applications dont elles ont besoin pour protéger et faire évoluer leur infrastructure et leur activité. Alors pourquoi la perspicacité est-elle importante et comment l’obtenir ?
Grâce à cette perspicacité, vous pouvez :
Pour obtenir des informations détaillées, vous avez besoin de deux types de données de visibilité : en temps réel et historiques. Les données en temps réel vous permettent de diagnostiquer la source d’un problème qui se produit actuellement, tandis que les données historiques fournissent une perspective sur ce qui est « normal » par rapport à ce qui est une valeur aberrante. Combinés, ces deux types de sources de visibilité peuvent fournir des informations cruciales sur les performances des applications et de Kubernetes.
Comme pour d’autres investissements technologiques, vous avez également besoin d’une stratégie pour en récolter les bénéfices. Le rapport SOAS indique également que les individus ne parviennent pas à obtenir des informations précieuses en raison de facteurs organisationnels liés au recrutement et au développement des employés, à la stratégie et aux processus, ainsi qu’au consensus sur l’utilisation des données, le moment et la personne qui les utilise. Ces résultats comprennent :
Le reste de cet article se concentre sur les aspects techniques de l’insight. Gardez un œil sur les futurs blogs sur la stratégie, le processus et d’autres sujets.
Nous savons que la plupart des déploiements Kubernetes utilisent déjà un outil de surveillance et n’en ont pas besoin d’un autre. Nous avons donc instrumenté l' API NGINX Plus pour une exportation facile des métriques et fournissons des intégrations avec des outils populaires comme OpenTracing , Grafana et Prometheus , afin que vous puissiez obtenir une image complète des performances au sein de vos clusters. Vous obtenez des informations ciblées sur les performances et la disponibilité des applications avec des traces approfondies afin de comprendre comment les demandes sont traitées dans vos applications de microservices.
Aperçu du trafic entrant-sortant (nord-sud)
NGINX Ingress Controller fournit un aperçu du trafic entrant et sortant de vos clusters Kubernetes.
Saviez-vous qu’il existe trois contrôleurs Ingress populaires basés sur NGINX ? Ils ne sont pas tous prêts pour la production, et un mauvais choix pourrait finir par compliquer plutôt que d’améliorer votre stratégie de microservices. Notre article de blog Attendez, quel contrôleur d'entrée NGINX pour Kubernetes suis-je en train d'utiliser ? fournit une comparaison des options afin que vous puissiez prendre la meilleure décision en fonction de vos besoins.
Lisez la suite pour découvrir comment nous pouvons vous aider à résoudre deux problèmes courants :
Si vous êtes prêt à voir la technologie en action, regardez cette démonstration en direct et AMA avec les experts NGINX et Grafana. Vous les verrez démontrer comment obtenir une surveillance en direct des mesures clés d’équilibrage de charge et de performances, exporter les mesures vers Prometheus et créer des tableaux de bord Grafana pour une vue des performances cumulées.
Vous suspectez une attaque DDoS ? Les utilisateurs signalent-ils des erreurs sur votre site Web ? Vous ne pouvez pas commencer à résoudre le problème tant que vous n’avez pas déterminé exactement où il se situe.
Surveillance en direct avec NGINX Ingress Controller
Avec NGINX Plus, le tableau de bord de surveillance des activités en direct , alimenté par l' API NGINX Plus , affiche des centaines de mesures clés de charge et de performances. Obtenez des détails précis jusqu’au niveau d’un seul pod afin de pouvoir mesurer rapidement et facilement les temps de réponse des applications et diagnostiquer la source d’un problème. Si votre environnement Kubernetes se développe, vous obtenez automatiquement des tableaux de bord pour chaque instance NGINX Ingress Controller supplémentaire.
À titre d’exemple, deux colonnes de l’onglet HTTP Upstreams vous donnent une lecture instantanée de l’état de l’application et de l’infrastructure :
Vous avez des erreurs HTTP ? 503
et 40x
les erreurs indiquent qu’il y a un problème avec vos ressources, tandis que 502
Cela signifie qu’un changement de configuration n’a pas fonctionné. Utilisez les données historiques pour diagnostiquer où vous pourriez manquer de ressources.
Les métriques de Prometheus
L’une des fonctionnalités les plus populaires du contrôleur d’entrée NGINX est sa liste toujours plus longue de mesures Prometheus , qui incluent des mesures sur les performances du réseau et le trafic du contrôleur d’entrée. Avec NGINX Plus, le contrôleur d'entrée NGINX exporte des métriques sur les connexions, la mise en cache, le trafic HTTP et TCP/UDP géré par des groupes de travailleurs NGINX qui partagent des données dans une zone mémoire , le trafic HTTP et TCP/UDP géré par des groupes de serveurs back-end , et plus encore.
NGINX Service Mesh déploie un serveur Prometheus qui utilise l' API NGINX Plus pour extraire les métriques des side-cars NGINX Service Mesh et des pods NGINX Ingress Controller. Si vous préférez utiliser un déploiement Prometheus existant, nous fournissons également des configurations de scraping à ajouter à votre fichier de configuration Prometheus.
Le contrôleur d’entrée NGINX prêt pour la production (basé sur NGINX Plus) est disponible pour un essai gratuit de 30 jours qui inclut NGINX App Protect pour sécuriser vos applications conteneurisées. Le service mesh NGINX toujours gratuit est disponible en téléchargement sur f5.com .
« Cet article de blog peut faire référence à des produits qui ne sont plus disponibles et/ou qui ne sont plus pris en charge. Pour obtenir les informations les plus récentes sur les produits et solutions F5 NGINX disponibles, explorez notre famille de produits NGINX . NGINX fait désormais partie de F5. Tous les liens NGINX.com précédents redirigeront vers un contenu NGINX similaire sur F5.com."