Aller au contenu principal

cert-manager

Overview

cert-manager, c'est le contrôleur Kubernetes CNCF qui pense que gérer les certificats TLS à la main, c'est une perte de temps monumentale. Il automatise complètement la génération, le renouvellement, et la distribution des certificats depuis Let's Encrypt, Vault, ou n'importe quelle CA. Si tu veux du HTTPS partout sans te prendre la tête, c'est parfait.

cert-manager utilise des CRDs (Certificate, Issuer, ClusterIssuer) pour définir déclarativement tes besoins en certificats. Il s'occupe automatiquement du challenge ACME (HTTP-01, DNS-01), du renouvellement avant expiration, et de l'injection dans les Secrets et Ingress Kubernetes. Support de multiples CAs et workflows complexes.

cert-manager se distingue par son statut CNCF (projet officiel), son support multi-CA (Let's Encrypt, Vault, CA privées), et son intégration native avec l'écosystème Kubernetes (Ingress, Gateway API, Service Mesh).


Informations essentielles

PropriétéValeur
Site officielhttps://cert-manager.io/
Repositoryhttps://github.com/cert-manager/cert-manager
LicenceApache 2.0
Développeurcert-manager (CNCF)
LangageGo
Version K8s1.22+

Cas d'usage typiques

  • Certificats TLS automatiques Let's Encrypt pour Ingress
  • Gestion de certificats internes avec CA d'entreprise (Vault, etc.)
  • Certificats pour Service Mesh (Istio, Linkerd) avec rotation auto
  • Certificats client pour authentification mutuelle (mTLS)
  • Wildcard certificates avec validation DNS automatique
  • Intégration dans pipelines GitOps avec gestion déclarative

Intégrations et écosystème

  • CAs supportées : Let's Encrypt, Vault, Venafi, CAs privées, self-signed
  • Validation ACME : HTTP-01, DNS-01 avec 15+ providers DNS
  • Kubernetes : Ingress, Gateway API, Service annotations
  • Service Mesh : Istio, Linkerd, Consul Connect pour mTLS
  • Monitoring : Prometheus metrics, alerting sur expiration
  • GitOps : ArgoCD, Flux pour déploiements automatiques

Avantages

  • Automatisation complète : génération, renouvellement, distribution sans intervention
  • Multi-CA support : Let's Encrypt, Vault, CAs privées dans un seul outil
  • CNCF officiel : projet mature, bien maintenu, production-ready
  • Kubernetes natif : intégration parfaite avec Ingress, annotations, CRDs
  • Observabilité : métriques Prometheus, events K8s, logging détaillé
  • Sécurité : rotation automatique, challenge DNS sécurisé, validation stricte

Inconvénients et limitations

  • Complexité DNS-01 : configuration providers DNS peut être délicate
  • Dépendances réseau : nécessite connectivité vers CAs et DNS externes
  • Debugging challenges : troubleshooting des challenges ACME parfois complexe
  • Ressources : consommation CPU/mémoire non négligeable en production
  • Migration : migration depuis solutions existantes nécessite planification

Alternatives

  • Manual certificates : gestion manuelle (non scalable)
  • External secrets : avec External Secrets Operator pour certificats externes
  • Service mesh natif : certificats gérés par Istio/Linkerd directement
  • Cloud providers : AWS ACM, GCP Managed SSL (vendor lock-in)
  • HashiCorp Vault : pour environnements Vault-centriques uniquement

Ressources