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.
| Limitation | Pourquoi | Contournement |
|---|---|---|
| Pas de DaemonSets | Objet 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 seule | L’isolation inter-tenants est gérée par la plateforme | Lisez les règles avec kubectl get netpol ; besoin spécifique → support |
| LoadBalancer limité à 1 par namespace | Option payante (0,02 €/h), IP publique dédiée | Quota supplémentaire via ticket ; pour du HTTP(S), l’Ingress mutualisé est inclus |
| Pas d’accès aux nœuds, PV, CRDs, objets cluster | Isolation multi-tenant | — |
kubectl get namespaces refusé | Pas de visibilité inter-tenants | Vos namespaces sont dans votre kubeconfig |
| Pods privilégiés, hostPath, hostNetwork rejetés | Pod Security baseline | Repenser le besoin ; cas légitime → support |
| Tolerations control-plane rejetées | Protection du control plane | Retirer la toleration |
| Limite mémoire = request (pas d’overcommit) | Stabilité du nœud, prévisibilité de la facturation | Dimensionner la request sur le pic réel — voir Mutations |
| Maximum 8 Gi de RAM par conteneur | Plafond LimitRange | Augmentable via ticket avec justification |
| Stockage éphémère limité à 2 Gi par conteneur | Protection des nœuds | Monter un volume persistant pour les données volumineuses |
| Pas de restauration de sauvegarde en self-service | La restauration est une opération encadrée | Ticket support, généralement traité en heures ouvrées |
| Rétention des sauvegardes fixe (10 jours) | Politique plateforme | Dumps applicatifs complémentaires (pg_dump en CronJob) pour un RPO/rétention sur mesure |
| Pas de création de namespace en self-service | Validation manuelle (quotas, nommage) | Ticket support, gratuit |
pods/proxy, pods/attach indisponibles (compte utilisateur) | Surface d’attaque réduite | kubectl 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.