Guide en six chapitres

Kubernetes sur Proxmox VE, de A à Z

Installer Kubernetes prend un après-midi. En faire une plateforme qui se met à jour seule la nuit, se reconstruit par le code et se restaure pour de vrai, c'est l'objet de ce guide.

Niveau avancé  ·  Lecture 1 h 20 au total  ·  Base Talos 1.14, Kubernetes 1.36

Kubernetes a une réputation de super-pouvoir qui se retourne contre son porteur. Le cluster monté en suivant un tutoriel tourne très bien le premier mois. Puis une version de Kubernetes sort, un certificat expire, un noeud tombe un dimanche, et l'on découvre que personne ne sait plus comment il a été construit ni s'il se restaure.

Ce guide décrit la plateforme que nous avons construite pour nos clients développeurs : deux clusters Kubernetes sur un cluster Proxmox VE avec Ceph, entièrement décrits dans un dépôt Git, qui se mettent à jour seuls la nuit et dont la sauvegarde a été restaurée. Il ne remplace pas la documentation de chaque outil : il dit ce que nous avons choisi, dans quel ordre, et surtout ce qui nous a coûté du temps.

01À qui s'adresse ce guide

Aux administrateurs qui exploitent déjà Proxmox VE, connaissent les bases de Kubernetes et veulent offrir à leurs développeurs une plateforme où l'on déploie sans ticket. Si votre cluster Proxmox n'est pas encore monté, commencez par notre guide cluster Proxmox VE : tout ce qui suit s'appuie dessus.

Côté développeurs, le guide compagnon déployer ses applications montre la plateforme depuis l'autre côté du guichet.

02La plateforme visée

BriqueOutil retenuRôle
Système des noeudsTalos LinuxImmuable, sans SSH, piloté par API
ProvisionnementOpenTofuVM Proxmox et configuration Talos, en code
SecretsSOPS et ageUn seul fichier chiffré, versionné avec le reste
Réseau des podsCiliumCNI, remplacement de kube-proxy, adresses de service
Stockageceph-csiVolumes RBD dans le Ceph de Proxmox
Entrée HTTPTraefikIngress, journaux d'accès
Certificats et DNScert-manager, external-dnsLet's Encrypt et zone DNS automatiques
ProtectionCrowdSecBlocage des IP malveillantes devant chaque application
ConsoleRancherInterface web, droits des équipes
DéploiementArgo CDGitOps : le dépôt fait foi
Mises à jourRenovate et tupprProposées le jour, appliquées la nuit
SauvegardesVelero et talos-backupObjets, volumes et etcd vers un S3 externe

03Nos quatre principes

  • Tout est code. Une VM, une valeur Helm, une règle d'anti-affinité : si ce n'est pas dans le dépôt, ça n'existe pas. Reconstruire la plateforme complète tient en quatre commandes.
  • Aucun secret en clair. Ni dans Git, ni dans l'historique du terminal, ni dans un fichier temporaire oublié dans /tmp.
  • Tout se met à jour, tout le temps. Une plateforme qui ne bouge pas vieillit, et une plateforme qui vieillit finit par se faire visiter.
  • Une sauvegarde n'existe que restaurée. Avant, c'est une rumeur.

04Les six chapitres

05Ce que ce guide ne couvre pas

  • L'observabilité (métriques, tableaux de bord, alertes sur les sauvegardes et les mises à jour) et le durcissement des accès (authentification unique avec double facteur, revue de l'accès à Proxmox). Ces deux briques feront l'objet d'une page dédiée.
  • Le dépôt complet, ligne à ligne. Ce guide montre l'architecture et les extraits qui comptent ; les valeurs d'exemple (exemple.fr, adresses 203.0.113.x réservées à la documentation) sont à remplacer par les vôtres.
  • Les clusters managés des grands fournisseurs : très bien, mais ce n'est pas le sujet.

Une plateforme Kubernetes, sans y laisser vos nuits

Nous concevons, montons et exploitons des plateformes Kubernetes sur Proxmox VE pour des équipes qui veulent se consacrer à leur code : mises à jour nocturnes, sauvegardes testées, déploiement en GitOps. Reprise d'un cluster existant, plateforme clé en main ou astreinte : nous intervenons au forfait comme au long cours.