Cilium et eBPF

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type CNI fondé sur eBPF
Statut CNCF Gradué (octobre 2023)
Composants clés Datapath eBPF · Hubble · Cluster Mesh
Chiffrement natif WireGuard · IPsec
Voir aussi CNI — Panorama et choix · NetworkPolicies · Egress et air-gap · Service mesh et mTLS

Cilium est un CNI fondé sur eBPF, couvrant réseau, sécurité et observabilité. Projet CNCF gradué (octobre 2023), adopté par les principaux clouds et fréquemment intégré à RKE2/Rancher. Cette page couvre le datapath eBPF, le chiffrement natif et Hubble.

eBPF en bref

eBPF permet d'injecter du bytecode vérifié dans le noyau Linux à des points d'accroche (I/O réseau, sockets, tracepoints), sans module noyau ni patch. Cilium l'utilise pour programmer le datapath réseau directement dans le noyau : moins de sauts, moins d'iptables, plus de débit.

Datapath

<mermaid> flowchart LR

   P[Pod] --> S[Socket]
   S -->|eBPF connect/sockmap| K[Noyau eBPF]
   K -->|hash table services| LB[Load-balancing
kube-proxy replacement] LB --> DST[Pod destination
ou service externe]

</mermaid>

  • Sécurité par identité — les décisions ne reposent pas sur l'IP (volatile) mais sur une identité dérivée des labels du Pod. Une policy survit au recyclage des IP.
  • Remplacement de kube-proxy — le load-balancing des Services est fait en eBPF (tables de hachage), avec réécriture au niveau socket (est-ouest) et DSR/Maglev (nord-sud).
  • Modes de transport — overlay (VXLAN/Geneve) ou routage natif/BGP. Voir SDN datacenter vs overlay CNI.

Chiffrement natif

Chiffrement du trafic inter-nœuds transparent, sans sidecar :

  • WireGuard — simple, performant, recommandé par défaut.
  • IPsec — pour les exigences de conformité imposant IPsec.

En contexte classifié, c'est un moyen d'assurer la confidentialité est-ouest au niveau réseau, indépendamment de l'applicatif.

Hubble (observabilité)

Composant d'observabilité de Cilium. Expose les flux est-ouest L3-L7 (qui parle à qui, sur quel protocole, autorisé ou refusé), en CLI, UI et métriques Prometheus. Précieux pour : construire des NetworkPolicies en connaissance de cause, auditer, et détecter des flux anormaux — utile pour une chaîne de détection Sigma/Loki/Grafana.

Fonctions avancées

  • Policies L7 — filtrage HTTP (méthode, chemin), gRPC, Kafka.
  • Cluster Mesh — services et identités partagés entre clusters.
  • Egress Gateway — IP source maîtrisée en sortie (voir Egress et air-gap).
  • Gateway API / Ingress — implémentation intégrée (voir Ingress et Gateway API).

Voir aussi