Talos OS¶
Dans cet article
- Talos OS. Fonctionnalités principales
- Fonctionnalités de déploiement
- Installation de Talos OS sur le serveur fourni
- Configuration et gestion
- Création d'un cluster Kubernetes
- Interface de gestion du cluster
- Mise à jour du système et surveillance
- Articles utiles sur le sujet
- Commander Talos OS via l'API
Information
Talos OS est un système d'exploitation moderne spécifiquement développé pour exécuter Kubernetes. Il utilise un système de fichiers immuable et une architecture par conteneurs, offrant une sécurité élevée, une surface d'attaque minimale et des performances optimisées pour les clusters Kubernetes.
Talos OS. Fonctionnalités principales¶
- Minimise les risques d'attaques : l'absence de shell (shell), de gestionnaire de paquets et d'autres composants Linux standard réduit les menaces de sécurité.
- Infrastructure immuable : basée sur le concept d'immuabilité où les mises à jour sont appliquées de manière atomique plutôt que de modifier le système existant.
- Kubernetes intégré : Kubernetes intégré et optimisé pour des performances maximales, non installé par-dessus le système.
- Gestion centrée sur l'API : gestion complète via API sans nécessiter SSH ni l'exécution de commandes dans un shell.
- Haute automatisation : configuration et récupération automatisées des composants du cluster sans intervention manuelle.
- Mises à jour simplifiées : mises à jour fiables de l'OS et de Kubernetes avec rollback automatique en cas d'erreur.
- Support des conteneurs intégré : optimisé pour l'exécution d'applications conteneurisées.
- Sécurité stricte : conformité aux meilleures pratiques de sécurité, incluant le chiffrement obligatoire et la vérification des signatures.
- Utilisation efficace des ressources : consommation minimale des ressources système pour maximiser l'allocation aux workloads.
- Haute résilience : conçu pour fonctionner dans des environnements distribués et tolérants aux pannes.
Fonctionnalités de déploiement¶
| ID | OS Name | Alias | Active | BM | GPU | VPS | VDS | Family | OS Group | CloudInit | Avilible |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 322 | Talos 1.12.2 | - | Yes | + | + | + | - | Talos | Others | No | ORDER |
| 329 | Talos 1.14.2 | - | Yes | + | + | + | - | Talos | Others | No | ORDER |
Attention : Chargement temporaire sans installation
Lors de la commande d'un serveur avec Talos OS, le système est initialement chargé en RAM et n'est pas installé sur le disque. Si le serveur est redémarré avant la fin du processus de configuration et d'installation, le système sera perdu et nécessitera une nouvelle commande.
Lorsque vous commandez un serveur avec Talos OS, vous recevez :
- Un serveur avec Talos OS chargé temporairement en mode maintenance ;
- L'accès à la console du serveur via le panneau de contrôle ;
- La possibilité de configurer et d'installer le système sur le disque en utilisant les outils Talos.
Installation de Talos OS sur le serveur fourni¶
Après avoir reçu un serveur avec Talos OS, vous devez aller dans le panneau de gestion des serveurs et de l'API — Invapi allez sur la fiche du serveur et ouvrez la Native Console. Vous verrez le système en mode maintenance (Maintenance) avec une note Ready: True via la console du panneau de contrôle. Il s'agit d'un état temporaire nécessitant une configuration supplémentaire pour une installation permanente :

Étape 1 : Chargement de l'outil Talos CLI¶
Tout d'abord, installez l'utilitaire talosctl sur votre machine locale :
Pour Linux/MacOS :
Pour Windows :
- Créez un dossier pour talosctl (s'il n'existe pas encore)
- Téléchargez la dernière version de talosctl pour Windows
- Ajoutez le chemin vers talosctl à la variable d'environnement PATH
Information
Vous pouvez également installer talosctl sans utiliser la ligne de commande :
- Téléchargez la dernière version de talosctl pour Windows directement depuis GitHub ;
- Renommez le fichier téléchargé en
talosctl.exe; - Copiez le fichier dans le dossier
C:\Windows\System32\(droits d'administrateur requis).
Après l'installation, ouvrez une nouvelle fenêtre de terminal et vérifiez le fonctionnement :
Étape 2 : Préparation des fichiers de configuration¶
Génération des secrets :
Génération de la configuration de base :
Remplacez [SERVER-IP] par l'adresse IP réelle de votre serveur.
Étape 3 : Création d'un fichier de patch¶
Les paramètres disk et interface dans la configuration doivent correspondre au matériel de votre serveur. Pour déterminer ces valeurs, exécutez les commandes suivantes :
-
Déterminer les disques disponibles
2. Déterminer les interfaces réseau
Dans la sortie de la commande, recherchez :
- Le nom de votre disque principal (généralement
/dev/sda,/dev/vdaou/dev/nvme0n1) ; - Le nom de votre interface réseau (généralement
eth0,ens3,enp0s3, etc.).
Créez un fichier nommé patch.controlplane.yaml avec le contenu suivant :
cluster:
apiServer:
certSANs:
- [SERVER-IP]
- 127.0.0.1
- localhost
- kubernetes
- kubernetes.default
- kubernetes.default.svc
- kubernetes.default.svc.cluster.local
machine:
install:
disk: /dev/sda
image: factory.talos.dev/installer/376567988ad370138ad8b2698212367b8edcb69b5fd68c80be1f2ec7d603b4ba:v1.9.5
wipe: true
extraKernelArgs:
- talos.platform=metal
features:
hostDNS:
enabled: false
forwardKubeDNSToHost: false
kubelet:
clusterDNS:
- [SERVER-IP]
network:
hostname: node-talos
interfaces:
- interface: eth0
dhcp: true
nameservers:
- 8.8.8.8
- 8.8.4.4
time:
disabled: false
servers:
- ntp.ix.com
bootTimeout: 2m0s
Remplacez [SERVER-IP] par l'adresse IP de votre serveur à plusieurs endroits dans le fichier.
Remarque
Pour travailler avec des IP statiques, utilisez le patch suivant :
cluster:
apiServer:
certSANs:
- 127.0.0.1
- localhost
- kubernetes
- kubernetes.default
- kubernetes.default.svc
- kubernetes.default.svc.cluster.local
- [SERVER-IP-ADDRESS]
machine:
install:
disk: /dev/sda
image: factory.talos.dev/installer/376567988ad370138ad8b2698212367b8edcb69b5fd68c80be1f2ec7d603b4ba:v1.9.5
wipe: true
extraKernelArgs:
- talos.platform=metal
features:
hostDNS:
enabled: false
forwardKubeDNSToHost: false
kubelet:
clusterDNS:
- [SERVER-IP-ADDRESS]
network:
hostname: node-talos
interfaces:
- interface: [INTERFACE NAME]
addresses:
- [YOUR SERVER'S API]/[SUBNET MASK]
mtu: 8765
routes:
- network: 0.0.0.0/0
gateway: [YOUR SERVER's GATEWAY]
nameservers:
- 8.8.8.8
- 8.8.4.4
time:
disabled: false
servers:
- pool.ntp.org
bootTimeout: 2m0s
Étape 4 : Configuration du client Talos¶
talosctl --talosconfig talosconfig config endpoint [SERVER-IP]
talosctl --talosconfig talosconfig config node [SERVER-IP]
Étape 5 : Application du patch à la configuration¶
Pour Linux/macOS :
talosctl machineconfig patch controlplane.yaml --patch @patch.controlplane.yaml -o controlplane_patched.yaml
Pour Windows (PowerShell) :
talosctl machineconfig patch controlplane.yaml --patch "`@patch.controlplane.yaml" -o controlplane_patched.yaml
Étape 6 : Application de la configuration au serveur¶
talosctl --talosconfig ./talosconfig apply-config --insecure -n [SERVER-IP] -e [SERVER-IP] --file ./controlplane_patched.yaml
Après l'exécution de cette commande, le processus d'installation commencera sur le serveur. Vous pouvez suivre ce processus via la console du panneau de contrôle.
Étape 7 : Attente de la fin de l'installation¶
Attendez que le statut de la console du serveur change :
Stage: Booting>Stage: Running;Ready: Truedoit rester actif :

La console devrait afficher un message :
[talos] etcd is waiting to join the cluster. If this node is the first node in the cluster, please run 'talosctl bootstrap'
Étape 8 : Initialisation du cluster¶
Une fois que le serveur affiche un message indiquant qu'il attend de rejoindre le cluster, exécutez :
Étape 9 : Obtention de la configuration Kubernetes¶
Attendez le message [talos] machine is running and ready dans la console, puis exécutez :
Cette commande créera un fichier kubeconf, qui pourra être utilisé pour gérer le cluster Kubernetes.
Remarques importantes
- Enregistrez les fichiers
secrets.yamlettalosconfigdans un endroit sûr - ils sont nécessaires pour l'accès futur au cluster ; - Après une installation réussie, le système sera sauvegardé sur le disque et ne sera pas perdu lors du redémarrage ;
- Le nom d'hôte doit correspondre exactement entre vos fichiers de configuration et vos commandes.
Configuration et gestion¶
Après avoir installé avec succès Talos OS sur le disque, vous pouvez gérer votre serveur en utilisant talosctl :
- Obtenir le statut du nœud :
- Voir les ressources système :
- Lister les services en cours d'exécution :
- Redémarrer le nœud :
Création d'un cluster Kubernetes¶
Votre cluster Kubernetes devrait déjà être initialisé après l'exécution de la commande bootstrap. Pour commencer à travailler avec :
- Installez kubectl sur votre machine locale :
Pour Linux :
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x kubectl
sudo mv kubectl /usr/local/bin/
Pour Windows :
- Configurez l'accès au cluster :
pour Linux/macOS :
pour Windows PowerShell :- Vérifiez le fonctionnement du cluster :
Création d'un cluster multi-nœuds¶
Pour ajouter des nœuds supplémentaires au cluster :
-
Pour un nouveau nœud de contrôle (control plane) :
-
Pour un nœud worker :
Remarque
Le bootstrap n'est effectué qu'une seule fois sur le premier nœud. Les nœuds supplémentaires rejoindront automatiquement le cluster existant.
Interface de gestion du cluster¶
Après la création du cluster, divers outils sont disponibles pour la gestion :
- talosctl : gestion des nœuds Talos OS ;
- kubectl : gestion des ressources Kubernetes ;
- Panneaux Web : des panneaux de contrôle supplémentaires peuvent être installés via Kubernetes.
Mise à jour du système et surveillance¶
Mise à jour de Talos OS¶
Talos OS prend en charge les mises à jour atomiques sans interruption de service du cluster :
-
Vérifier les versions disponibles :
-
Effectuer la mise à jour du nœud :
Surveillance du système¶
Talos OS propose plusieurs méthodes de surveillance :
-
Outils intégrés :
-
Installer des solutions de surveillance via Kubernetes :
Remarque
Des informations détaillées sur les configurations supplémentaires de Talos OS sont disponibles dans la documentation des développeurs.
Articles utiles sur le sujet¶
Commander Talos OS via l'API¶
Pour installer ce logiciel via l'API, suivez ces instructions.