Cilium
Technologie

Cilium

Réseau, sécurité et observabilité pour Kubernetes, propulsés par eBPF

Cilium est une solution de réseau, de sécurité et d’observabilité pour Kubernetes construite sur eBPF, une technologie du noyau Linux qui permet à Cilium d’exécuter la logique réseau et de sécurité directement dans le noyau, sans la surcharge des approches traditionnelles basées sur iptables.

Comment ça marche

Cilium fonctionne comme un plugin CNI (Container Network Interface) de Kubernetes, ce qui lui donne une visibilité sur tout le trafic réseau de chaque Pod. Comme son chemin de données est implémenté par des programmes eBPF qui s’exécutent dans le noyau, il peut appliquer des politiques réseau, répartir la charge et chiffrer les communications entre Pods avec une surcharge bien moindre que les alternatives basées sur des proxys ou iptables. Il travaille aussi avec des identités (Pods, services) plutôt qu’avec de simples adresses IP brutes.

Concepts clés

  • eBPF : une technologie du noyau Linux qui permet à Cilium d’attacher des programmes personnalisés aux événements réseau sans modules noyau ni correctifs hors arbre.
  • CiliumNetworkPolicy : une ressource de politique réseau étendue qui prend en charge des règles des couches 3 à 7, y compris des règles sensibles à HTTP comme la restriction des chemins d’API autorisés.
  • Identité : Cilium attribue une identité de sécurité à des groupes de Pods partageant des labels, de sorte que la politique et l’observabilité s’expriment en termes de workloads, et non d’IP éphémères.
  • Hubble : le composant d’observabilité de Cilium, qui offre une vue en direct, au niveau des flux, du trafic réseau et des décisions de politique à travers le cluster.

Pourquoi les équipes adoptent Cilium

  • Performance. Les chemins de données basés sur eBPF évitent la surcharge par paquet des chaînes iptables, ce qui compte à grande échelle.
  • Politique tenant compte de l’identité. Les politiques réseau sont définies en termes d’identité de workload et même de sémantique applicative, et pas seulement de tuples IP/port.
  • Visibilité approfondie. Hubble donne une vue en temps réel, flux par flux, du trafic et de l’application des politiques à travers le cluster, utile à la fois pour le débogage et l’audit.
  • Au-delà du CNI. Cilium peut aussi gérer la répartition de charge, remplacer kube-proxy, et s’étendre jusqu’à un plan de données de service mesh.

Pour commencer

Installez Cilium comme CNI de votre cluster (de nombreuses offres Kubernetes managées le prennent en charge comme add-on réseau), puis définissez des ressources CiliumNetworkPolicy pour contrôler le trafic entre les workloads. Les guides ci-dessous couvrent les schémas de politique courants et l’obtention de visibilité avec Hubble.