Aller au contenu

Limitations connues

Kontainers est un service de namespaces managés sur un cluster mutualisé — pas un cluster dédié. Certaines capacités d’un cluster « vanilla » sont donc absentes ou encadrées, volontairement. Cette page les liste toutes, avec le contournement quand il existe.

LimitationPourquoiContournement
Pas de DaemonSetsObjet cluster-wide par nature (un pod par nœud)Deployment avec plusieurs replicas + PDB
Pas de ReplicationControllers (quota 0)Objet dépréciéDeployments
NetworkPolicies en lecture seuleL’isolation inter-tenants est gérée par la plateformeLisez les règles avec kubectl get netpol ; besoin spécifique → support
LoadBalancer limité à 1 par namespaceOption payante (0,02 €/h), IP publique dédiéeQuota supplémentaire via ticket ; pour du HTTP(S), l’Ingress mutualisé est inclus
Pas d’accès aux nœuds, PV, CRDs, objets clusterIsolation multi-tenant
kubectl get namespaces refuséPas de visibilité inter-tenantsVos namespaces sont dans votre kubeconfig
Pods privilégiés, hostPath, hostNetwork rejetésPod Security baselineRepenser le besoin ; cas légitime → support
Tolerations control-plane rejetéesProtection du control planeRetirer la toleration
Limite mémoire = request (pas d’overcommit)Stabilité du nœud, prévisibilité de la facturationDimensionner la request sur le pic réel — voir Mutations
Maximum 8 Gi de RAM par conteneurPlafond LimitRangeAugmentable via ticket avec justification
Stockage éphémère limité à 2 Gi par conteneurProtection des nœudsMonter un volume persistant pour les données volumineuses
Pas de restauration de sauvegarde en self-serviceLa restauration est une opération encadréeTicket support, généralement traité en heures ouvrées
Rétention des sauvegardes fixe (10 jours)Politique plateformeDumps applicatifs complémentaires (pg_dump en CronJob) pour un RPO/rétention sur mesure
Pas de création de namespace en self-serviceValidation manuelle (quotas, nommage)Ticket support, gratuit
pods/proxy, pods/attach indisponibles (compte utilisateur)Surface d’attaque réduitekubectl port-forward et kubectl exec couvrent l’essentiel ; le SA CI dispose d’attach/debug

En résumé

Si votre application :

  • tourne dans des conteneurs non privilégiés,
  • s’expose en HTTP(S) via Ingress (ou TCP via NodePort/LoadBalancer),
  • stocke ses données dans des PVC ou une base PostgreSQL managée,

…alors aucune de ces limitations ne vous concernera au quotidien. Dans le doute, contactez le support avant de migrer : mieux vaut une réponse en amont qu’une surprise en production.