Depuis 4 ans, Sysdig, spécialiste de la supervision des applications conteneurisées, suit l’évolution des usages sur les containers à travers les données réelles de ses clients. Avec l’extension de ses capacités de monitoring, ce suivi s’enrichit chaque année, non seulement sur la façon dont évoluent les applications et l’infrastructure, mais aussi sur la prise en charge de la sécurité et de la conformité. L’édition 2021 du rapport « Sysdig 2021 Container security and usage » résulte de l’analyse de millions de containers utilisés chaque jour par une partie des clients Sysdig. Sur une année, ce sont près d’un milliard de conteneurs uniques qui ont été utilisés l'année passée par ses clients.
Le rapport 2021 confirme la nature éphémère de ces conteneurs dont la moitié présentent une durée de vie inférieure à 5 minutes. Cela met en évidence la nécessité de disposer d’un enregistrement détaillé pouvant être utilisé pour répondre aux incidents ou retrouver la cause des problèmes, explique Sysdig. Parmi les tendances, le renforcement des pratiques de qualité et de prévention s’étend à la sécurité de Kubernetes. Il apparaît ainsi que 3/4 des organisations scannent leurs images de containers dans la phase de construction CI/CD avant le déploiement, souligne le rapport. Sur les aspects sécurité, les équipes sont donc particulièrement sensibilisées à l’identification des vulnérabilités. En revanche, ce sont les mauvaises configurations qui « laissent la porte ouverte aux attaquants », pointe l'éditeur dans sa synthèse. Il constate que la majorité des images de containers sont configurées de façon trop permissive. En particulier, 58% d’entre elles sont lancées en « root », ce qui pourtant n’est généralement pas nécessaire et peut au contraire entraîner des problèmes de sécurité.
L'adoption du projet Falco progresse sur la sécurité
Plus les environnements conteneurisés gagnent en maturité, plus les entreprises s’aperçoivent que cela ne suffit plus de vérifier que les containers ne contiennent pas de failles connues. Il faut aussi les scruter pendant leur exécution pour prendre en charge les menaces de façon continue. Le rapport 2021 de Sysdig montre ainsi une forte progression dans l’adoption du projet Falco, hébergé par la CNCF, pour protéger les containers contre les menaces inconnues et pouvoir agir lorsqu’une action malveillante est repérée au sein des containers, des hôtes et des environnements Kubernetes.
Le recours à Kubernetes pour l’orchestration de containers ne s’est pas modifié en 2020, restant utilisé dans 75% des cas, devant OpenShift qui montre une progression puisqu’il est passé de 9% l’an dernier à 15%, Docker Compose (4,8%), Swarm (2,5%), Mesos (1,3%) et Rancher (1%). Le choix des runtimes de containers a de son côté évolué faisant apparaître une désaffection de Docker au profit de containerd et CRI-O dont l'usage a été multiplié par 2 l'an dernier. Kubernetes a d'ailleurs annoncé qu’il allait abandonner Docker en 2021 en tentant ensuite de rassurer les équipes IT sur ce sujet. Cela dit, rappelle l'éditeur, il convient de rappeler que containerd est utilisé par Docker. Les critères de choix de tel ou tel runtime peuvent n’être pas évidents, mais de toutes façons les plateformes les plus populaires (telles OpenShift, GKE et IKS) supportent l’utilisation de plusieurs runtimes de containers en parallèle, note le rapport.
L'usage de Prometheus croît de 35%
Un autre mouvement s’opère vers le système de monitoring et de gestion d’alertes Prometheus, comme le propose d’ailleurs Sysdig pour surveiller ces environnements. L’éditeur constate que cet usage a crû de 35% sur un an parmi ses utilisateurs, les trois principaux exportateurs retenus étant node-exporter, blackbox-exporter et jmx-exporter selon les statistiques de GitHub. Les autres solutions de collecte de métriques sont StatsD et JMX, en baisse par rapport à 2019.
Parmi les usages en progression, le rapport note encore celui du registre d’images de containers Quay (+60%). Néanmoins, il n’arrive qu’en 3ème position (24%), celui de Docker restant en tête des utilisations (36%) suivi de CGR (26%). Autre progression, celle du langage de programmation Go pour le développement natif cloud.
Nginx en tête des technologies open source déployées
Le spécialiste de la supervision des environnements conteneurisés a par ailleurs établi la liste des 10 premières technologies open source déployées par ses clients, sa capacité à auto-découvrir les processus dans les containers lui permettant de le faire. En tête arrivent les solutions de serveur http et reverse proxy de Nginx et Go (66%), suivis de PostgreSQL (24%) et de Redis (20%).
Le top 10 des solutions open source qui s'exécutent dans les containers. (Crédit : Sysdig 2021 Container security and usage report)
Sur les aspects sécurité, le rapport montre que seules 4% des failles concernant l’OS sont élevées ou critiques. Néanmoins, si elles sont exploitées, cela peut compromettre l’image entière et stopper l’application. Le rapport détaille aussi l’analyse des tendances sur le type d’alertes installées par les clients, ce qui permet de comprendre le type de conditions identifiées par les utilisateurs comme étant susceptibles de provoquer le plus d’interruptions dans leurs opérations de containers. Sysdig présente aussi les modèles d’utilisation de Kubernetes (le nombre de clusters, de noeuds et le nombre de pods qui s’exécutent par noeud), les déploiements par namespace pour isoler logiquement les ressources entre de multiples utilisateurs, équipes ou applications.
En conclusion, le rapport confirme la poursuite de l’expansion des technologies de containers dans les applications en rappelant l’importance prise par la sécurité dans Kubernetes, avec la mise en oeuvre de processus de sécurité de plus en plus présente dans le processus de build au sein des équipes DevOps. Mais il reste du travail pour sécuriser les containers eux-mêmes afin d’empêcher d’autres vulnérabilités pendant la production.