Recherche testeurs bêta sur le Play Store : rejoignez-nous sur Discord ou inscrivez-vous par mail.

Ichor pour Talos Linux et Kubernetes
1.41 Plugins pour toute CRD, pull requests depuis le téléphone, capacité et runbooks →

Tous vos clusters, depuis votre téléphone.

Ichor a été conçue pour Talos Linux et lui parle toujours avec le même client que talosctl. Aujourd'hui elle ouvre aussi tout kubeconfig : EKS, GKE, AKS, DigitalOcean, Rancher, Sidero Omni ou une connexion OIDC, sans rien installer sur le cluster et sans intermédiaire. Et quand un opérateur manque, un plugin en un seul fichier YAML lui donne un écran.

Pas de cluster sous la main ? Touchez Essayer la démo sur le premier écran : cinq nœuds d’exemple, graphiques et journaux en direct, entièrement hors ligne. Libre et gratuite, Apache-2.0, en lecture seule par défaut.

Née sur Talos · Chez elle partout

Une app Talos au départ. Elle ouvre désormais n'importe quel kubeconfig.

Déposez un kubeconfig, par fichier, collage, QR ou la feuille de partage. L'aperçu liste chaque contexte avec son mode de connexion et ajoute ceux que vous choisissez. Chaque cluster reçoit un accueil Kubernetes, tous les écrans Kubernetes, les alertes en arrière-plan et une couleur à lui, pour qu'un redémarrage ne vise jamais le mauvais.

  • Talos Linux

    Un talosconfig, avec les rôles inscrits dans son certificat : santé des nœuds, journaux, etcd, KubeSpan, mises à niveau, l'API Talos de bout en bout.

  • Sidero Omni

    Connectez-vous à l'instance comme le fait omnictl, choisissez les clusters qu'elle liste. Le rôle Omni de votre identité est ce que l'app peut faire.

  • Kubernetes managé

    EKS, GKE, AKS, DigitalOcean et Rancher : listez les clusters du compte et ajoutez-les, ou importez le kubeconfig écrit par la CLI. Les plugins exec sont remplacés par une connexion sur le téléphone : IAM Identity Center depuis son URL de départ, votre compte Google ou le client OAuth de votre organisation, Entra ID.

  • Tout le reste

    Un certificat client, un jeton de ServiceAccount, ou OIDC avec kubelogin, dans le navigateur ou par code d'appareil. k3s, RKE2, kubeadm, OpenShift : si kubectl y accède, Ichor aussi.

Connectée comme votre portable, scellée comme une clé

Aucun binaire aws, gcloud ou az ne tourne sur le téléphone : Ichor fait ce que ferait le plugin exec, avec une connexion qui reste sur l'appareil et se renouvelle seule. Jetons et clés sont scellés dans StrongBox ou la Secure Enclave, derrière le verrou de l'app.

« Quel compte utilise ce cluster ? » → affiché sur son accueil.

  • Talos Linux
  • Sidero Omni
  • Amazon EKS
  • Google GKE
  • Azure AKS
  • DigitalOcean
  • Rancher
  • OIDC · kubelogin
  • Client certificate
  • ServiceAccount token
  • Argo CD
  • Flux
  • Argo Rollouts
  • Cilium · Calico
  • CAST AI
  • Cluster API
  • Crossplane
  • Tailscale
  • KubeVirt
  • Longhorn · Rook Ceph
  • CloudNativePG
  • Velero
  • Kyverno · Gatekeeper
  • Alertmanager
  • Any CRD, as a plugin

Sur un cluster cloud, l'accueil Kubernetes dit aussi où le cloud a placé chaque nœud : son pool Karpenter, son groupe de nœuds managé, sa classe de calcul ou son pool d'agents, le type de machine, et s'il est spot ou à la demande. Un cluster Talos peut lui aussi utiliser une de ces identités pour ses écrans Kubernetes, à la place du kubeconfig admin.

Nouveautés de 1.22 à 1.41

Vos opérateurs, votre Git, votre jour 2. Tout sur le téléphone.

Vingt versions en deux semaines : des plugins qui donnent un écran à toute CRD, des pull requests ouvertes depuis un diff sur le téléphone, un écran de capacité qui simule la perte d'un nœud, Alertmanager et le reste de l'accueil Kubernetes, les mises à niveau Talos de tout le cluster, et des runbooks qui continuent de tourner quand l'écran s'éteint.

Tout opérateur, en plugin

Un plugin est un seul fichier YAML : les ressources à lire, ce qui compte comme sain, les cartes, les actions et les constats. Douze sont intégrés, kube-green, External Secrets, ExternalDNS, Sealed Secrets, Rook Ceph, MariaDB, Percona, Dragonfly, Temporal, Numaflow et Dataflow. Importez le vôtre depuis un collage, un fichier, une URL ou un QR code, et voyez ce qu'il lit et peut changer avant de l'activer. Ses constats remontent dans le bilan de santé et les alertes en arrière-plan.

« L'app connaît mon opérateur ? » → maintenant oui, sans nouvelle version de l'app.

Modifier dans Git, depuis le téléphone

Parcourez les fichiers qu'une app Argo CD ou Flux déploie, à la révision que le cluster exécute. Modifiez-en un, ou changez vite un tag d'image ou les réplicas, relisez le diff avec son build kustomize vérifié, et ouvrez une pull request sur GitHub, GitLab, Gitea ou Forgejo. Une valeur changée à la main dans le cluster, ou un changement de configuration machine Talos conservé, est proposé en retour dans son fichier. L'app vous dit quand la pull request est fusionnée et quand le cluster l'exécute.

« Tu peux monter ce tag ? » → une pull request, depuis le train.

La capacité, et ce que coûte la perte d'un nœud

CPU, mémoire et disque libres par cluster, le risque d'OOM et d'éviction de chaque charge de travail selon sa classe QoS et sa priorité, et une simulation : retirez un nœud ou plusieurs et voyez où vont les pods, lesquels sont préemptés, lesquels restent Pending et quoi réduire. Le CPU et la mémoire utilisés viennent de metrics-server, comme kubectl top.

« On peut drainer w-3 ce soir ? » → quatre pods disent non.

Tout l'accueil Kubernetes

Charges de travail, Réseau, Stockage, Observer et Parcourir : Services et répartition de charge, Jobs, demandes de stockage et leur remplissage, autoscaling avec HPA, KEDA, VPA et Karpenter, politiques Kyverno et Gatekeeper, machines virtuelles KubeVirt, sauvegardes Velero, releases Helm, événements en direct, et Alertmanager avec des silences posés depuis le téléphone. Chaque objet a un résumé, son YAML avec l'aide du schéma, la mise à l'échelle, la suppression et les actions que votre RBAC autorise, et les listes se mettent à jour en direct.

« Qui a sonné à 3 h du matin ? » → l'alerte, mise en silence en un geste.

Le jour 2 sur Talos, depuis le téléphone

Mettez à niveau chaque nœud l'un après l'autre, en drainant d'abord quand la mise à niveau ne le ferait pas, et mettez à niveau Kubernetes après une simulation. Ajoutez un nœud : inspectez-le en mode maintenance, créez sa config à partir d'un membre, envoyez-la et suivez-le jusqu'à ce qu'il rejoigne le cluster. Remplacez un nœud de control plane avec un plan guidé, restaurez etcd depuis un instantané, corrigez son alarme NOSPACE en un geste, et réinitialisez ou effacez un nœud, refusé quand cela casserait etcd.

« La mise à niveau 1.13 ? » → les huit nœuds, depuis le canapé.

Les runbooks, et les longues exécutions qui survivent à l'écran

Un runbook est une liste ordonnée des actions propres à l'app, importée avec son plan affiché d'abord et exécutée avec une confirmation par étape destructrice. Synchros, réconciliations, redémarrages, applications de config sur plusieurs nœuds et tests réseau tournent en arrière-plan avec la progression et un bouton Arrêter : dans un canal de notification Opérations sur Android, sur l'écran verrouillé et dans la Dynamic Island sur iOS.

« Le runbook de vendredi est terminé ? » → l'étape 3 vous attend.

  • Connexion au cloud, sans CLI

    GKE avec votre compte Google ou le client OAuth de votre organisation, EKS avec IAM Identity Center à partir de la seule URL de départ. Collez ou scannez une config aws, des identifiants gcloud ou un omniconfig et la connexion est préremplie.

  • Images analysées pour leurs vulnérabilités

    Grype ou Trivy analyse les images d'un pod, d'une charge de travail ou les images système Talos d'un nœud. Les rapports restent sur le téléphone et ce qui est nouveau depuis la dernière analyse est marqué.

  • Trente jours d'historique

    Disponibilité par nœud, ce qui a changé depuis votre dernière visite, courbes de remplissage et de mémoire, une prévision de stockage qui dit « plein dans ~9 jours », et un résumé d'incident anonymisé à partager en Markdown.

  • Recherche, Siri et le poignet

    Cherchez les nœuds, pods, charges de travail et apps de tous les clusters depuis l'accueil, ou depuis Spotlight, Siri et Shortcuts sur iOS. Une app Apple Watch et une tuile Wear OS affichent la santé de chaque cluster.

  • Tablettes et iPad

    Les nœuds et les apps GitOps s'ouvrent à côté de leur liste, la vue d'ensemble affiche deux colonnes, et la barre latérale de l'iPad liste vos clusters et les sections du cluster à côté de l'écran courant.

  • Réglages, sauvegardes et clés

    Des réglages regroupés en pages. Les sauvegardes en fichiers age, avec une phrase secrète ou vos clés publiques age, conservent désormais les épingles, les hôtes Git et les réglages IA, et passent d'Android à iPhone.

  • Plus entre vos mains

    Rollback Helm avec hooks et attente, mise à l'échelle de tout ce qui sert /scale, taints et labels avec un plan simulé, YAML collé avec un diff simulé, un conteneur de débogage pour les images sans shell, une image prétéléchargée sur chaque nœud, les pods morts nettoyés.

  • Outils du nœud et matériel

    Vérifications DNS, ping, port, traceroute et HTTP/TLS depuis un nœud, capteurs, fréquence et bridage du CPU, partitions et chiffrement de chaque disque, et pièces de rechange pour le serveur, depuis son écran matériel.

Opérer, pas seulement observer

Chaque changement consigné, chaque action vérifiée d'abord.

Une clé de sécurité pour déverrouiller l'app, un journal chiffré de ce que l'app a changé et de qui l'a déclenché, le diff qu'Argo CD appliquerait, un assistant PromQL sur l'écran des métriques, les économies CAST AI sur les deux plateformes, et des actions Kubernetes qui savent à l'avance si votre compte peut les exécuter.

Un journal d'audit de ce que le téléphone a fait

Chaque changement fait sur un cluster depuis l'app, redémarrage, restart, synchro, rollback, suppression, est consigné avec son résultat, même quand une exécution en arrière-plan plante, dans un journal chiffré sur l'appareil. L'écran Activité le lit sur Android et iOS.

« Qui a redémarré grafana à 14 h ? » → ce téléphone, depuis cet écran.

Argo CD : voir le diff, puis synchroniser

Afficher le diff montre ce qu'une synchro changerait, objet par objet, à partir de la comparaison déjà faite par le contrôleur, valeurs des Secrets masquées. La révision, chaque entrée d'historique et une synchro en cours renvoient à leur commit sur GitHub, GitLab, Gitea, Forgejo, Codeberg ou Bitbucket. Le rollback demande désormais de taper le nom de l'app.

« Que touche cette synchro ? » → les trois objets, avant de toucher.

Déverrouiller avec une clé de sécurité

Une YubiKey ou toute clé FIDO2, en NFC ou USB, peut remplacer le code et la biométrie pour le verrou de l'app, et sceller les configs stockées pour que rien ne les lise sans la clé, pas même une copie du stockage du téléphone.

« Téléphone perdu ? » → les configs sont scellées à une clé qui n'est pas dedans.

Un assistant PromQL sur l'écran Métriques

Dites ce que vous voulez voir ; l'assistant écrit la requête, l'exécute sur votre Prometheus pour vérifier qu'elle renvoie quelque chose, et ajoute le panneau. Optionnel, désactivé par défaut, avec votre propre clé Claude ou OpenAI, sur Android et iOS.

« Mémoire de chaque pod sur w-2, empilée » → un panneau, vérifié.

CAST AI sur les deux plateformes

Recommandations par charge de travail avec l'argent qu'elles économisent, plans de consolidation des nœuds et ce qu'un plan échoué a laissé en économies manquées, dans une vue des charges de travail repensée, désormais sur iOS comme sur Android.

« Qu'est-ce qui est surdimensionné ? » → classé, avec l'économie.

Tout objet, résumé, avec ce que vous pouvez faire

Chaque objet a désormais un onglet résumé, comme le haut de kubectl describe : conditions, propriétaires, les événements de la dernière heure. Ses actions sont à portée de doigt, et celles que votre compte ne peut pas lancer sont désactivées avec la raison, demandée au serveur d'API avant que vous n'essayiez.

« Puis-je redémarrer ceci d'ici ? » → oui, ou pourquoi pas.

  • Des alertes sur chaque cluster

    Les alertes en arrière-plan, les services de données et l'accueil réorganisable fonctionnent désormais sur les clusters ajoutés par kubeconfig, pas seulement les Talos.

  • Des alertes qui ouvrent le bon écran

    Touchez une notification et arrivez sur le nœud, le pod ou la sauvegarde concernés, avec un canal Android par type pour couper ce que vous voulez.

  • Confirmations à saisir

    Supprimer tous les clusters ou revenir en arrière sur une app Argo CD demande d'en taper le nom. Les actions en un geste sont là où se trouve leur objet.

  • Mêmes réglages, deux plateformes

    Android et iOS partagent une même disposition des réglages, disent d'où viennent les mises à jour, et passent un contrôle d'accessibilité avec un texte dense lisible.

Réseau, stockage et pression

Le réseau, le stockage ou le nœud ? Mesurez-le.

Quelque chose est lent et chaque nœud dit Ready. Ichor mesure le lien entre deux nœuds, vérifie le stockage et les bases de données sur lesquels reposent vos apps, et montre quelle charge de travail un nœud affame, directement depuis le téléphone.

Test réseau

Choisissez deux nœuds, dans une liste ou, sur Android, directement sur la carte du cluster, et Ichor les mesure avec netperf, comme le fait cilium connectivity perf, quel que soit le CNI : débit TCP, puis latence p50, p90 et p99, de pod à pod et, si vous le voulez, d’hôte à hôte. Les résultats sont conservés et tracés dans le temps.

« Le nouveau switch est-il plus rapide ? » → mesuré.

Services de données

Ichor reconnaît Longhorn, CloudNativePG, Garage, Rook Ceph, MariaDB, Percona et Dragonfly dans le cluster et les vérifie : volumes dégradés et leurs réplicas, instances Postgres et sauvegardes périmées ou échouées, instantanés CSI et CronJobs de sauvegarde, nœuds Garage, master et réplicas de Dragonfly. Chaque problème nomme le nœud derrière lui. Promouvez un réplica, basculez, récupérez un volume ou prenez son instantané depuis la ligne, et des alertes facultatives vous préviennent quand un volume est en défaut, qu'un disque se remplit ou que les sauvegardes s'arrêtent.

« La sauvegarde de cette nuit a-t-elle tourné ? » → oui, ou pourquoi pas.

Argo CD

Quand Argo CD tourne dans le cluster, Ichor liste ses applications avec leur santé et leur état de synchronisation, suit une synchronisation vague par vague, et vous permet de synchroniser, rafraîchir, interrompre une synchronisation, suspendre l’auto-sync ou revenir en arrière. Il passe par les ressources Application avec le kubeconfig admin délivré par Talos : aucun jeton Argo CD, et une application gérée par un ApplicationSet n’est jamais modifiée dans son dos.

Une app qu’Ichor ne reconnaît pas, comme un projet personnel, peut apporter son propre logo avec l’annotation ichor.levis.name/icon : un nom Dashboard Icons, un lien https vers un PNG ou un WebP (téléchargé seulement si vous autorisez le téléchargement des icônes) ou l’image elle-même, intégrée en base64.

kubectl -n argocd annotate application my-site \
  ichor.levis.name/icon=https://example.org/logo.png

« Pourquoi cette application est dégradée ? » → le pod et le nœud.

Pression des nœuds et cgroups

Le temps que le travail d’un nœud passe à attendre le processeur, la mémoire ou le disque, tracé sur les cinq dernières minutes, avec la charge de travail qui attend le plus, les OOM kills et les conteneurs proches de leur limite mémoire. L’onglet Cgroups, comme talosctl cgroups, détaille le tout par service, pod et conteneur.

« Qui dévore w-2 ? » → nommé.

Ces fonctions nécessitent un certificat os:admin. Le test réseau lance ses pods dans un namespace dédié, avec le profil de sécurité de pod restricted, et le supprime ensuite ; chaque mesure sature le lien pendant 5 à 20 secondes. Les résultats enregistrés restent chiffrés sur le téléphone, hors des sauvegardes, et les alertes des services de données restent désactivées tant que vous ne les activez pas.

  • Carte du cluster

    Sur Android, l’écran KubeSpan dessine vos sites, nœuds et tunnels, actifs, dégradés ou coupés, avec un drapeau pour chaque zone. Touchez deux nœuds pour tester le lien entre eux.

  • Ouvrir une application dans le navigateur

    La fiche d’une application liste ses adresses web, trouvées dans les Ingress et les HTTPRoutes Gateway API qui pointent vers elle, à un toucher de distance.

  • Trouve votre cluster sur le réseau local

    Aucun endpoint ne répond d’ici ? Sur Android, Ichor cherche sur le réseau local les nœuds qui acceptent vos identifiants, et vous permet de modifier les endpoints à la main.

  • Commandes de débogage toutes prêtes

    Une quarantaine de commandes netshoot pour le DNS, le MTU, le TLS, KubeSpan et plus encore, à un toucher dans le shell de débogage, pour que vous n’ayez presque pas besoin du clavier du téléphone.

Applications et Kubernetes

Sachez ce qui tourne sur votre cluster, et donnez un coup de pouce quand ça coince.

Talos vous dit que les nœuds vont bien. Mais Grafana est-il à jour, pourquoi un agent Cilium est-il resté sur l’ancienne version, et quel pod redémarre en boucle ? Ichor affiche désormais les logiciels qui tournent dans le cluster et, avec un certificat admin, redémarre la charge de travail ou supprime le pod bloqué, sans ordinateur.

Inventaire des applications

Chaque conteneur de chaque nœud, regroupé dans les apps que vous reconnaissez, avec leurs logos : Home Assistant, Immich, la pile *arr, Longhorn, Cilium et environ 400 autres. Les sidecars et les conteneurs init rejoignent leur app, et Ichor signale une app qui tourne en deux versions à la fois ou une image :latest non épinglée.

« Tout est passé sur la nouvelle version ? » → un coup d’œil suffit.

Charges de travail et redémarrage progressif

Les Deployments, StatefulSets et DaemonSets avec leur disponibilité et l’état de leur déploiement, en commençant par ceux qui demandent votre attention. Redémarrez-en un par mise à jour progressive, comme kubectl rollout restart, après une confirmation qui vous prévient s’il ne fait tourner qu’un seul pod. Le déploiement s’affiche ensuite en direct, anciens et nouveaux pods, jusqu’à ce que chaque nouveau pod soit prêt ; fermez-le quand vous voulez, le déploiement continue.

« Il a juste besoin d’un coup de pouce. » → c’est fait, depuis votre lit.

Les pods, défaillants en premier

Chaque pod avec le statut qu’affiche kubectl get pods (CrashLoopBackOff, Init:Error, Terminating), ses redémarrages et son nœud. Supprimez un pod bloqué pour que son contrôleur en lance une copie neuve ; la confirmation vous indique si quelque chose le recréera.

« Pourquoi redémarre-t-il encore ? » → supprimé, recréé.

Les CronJobs, à la demande

Chaque CronJob avec son planning, sa prochaine exécution et le bilan de ses dernières, en commençant par celles en échec ou en cours. Lancez-en une tout de suite, comme kubectl create job --from, après une confirmation : le Job reste rattaché à son CronJob, l’historique et le nettoyage s’appliquent donc toujours.

Donnez à chacun un logo, un nom et une ligne de description avec un label ou une annotation ; sans icône, Ichor prend celle de l’app à laquelle appartient son image, sinon une horloge. Mettez ichor.levis.name/trigger=false pour qu’un job ne tourne que selon son planning.

kubectl label cronjob db-backup ichor.levis.name/icon=postgresql
kubectl annotate cronjob db-backup ichor.levis.name/title="Database backup"
kubectl annotate cronjob db-backup ichor.levis.name/description="Nightly dump to S3"
kubectl label cronjob wipe-staging ichor.levis.name/trigger=false

« La sauvegarde a échoué cette nuit. » → relancée, depuis le canapé.

L’inventaire des applications fonctionne avec un certificat os:reader en lecture seule et les logos sont intégrés à l’app : rien n’est recherché en ligne. Les charges de travail et les pods utilisent le kubeconfig admin émis par Talos, conservé uniquement en mémoire. Le mode capture d’écran masque tous les logos ainsi que les adresses et les noms des nœuds.

  • « Cluster injoignable », enfin expliqué

    VPN coupé ou mauvais réseau ? Au lieu d’un mur de nœuds en rouge, un seul message explique pourquoi, réessaie tout seul et se rétablit dès que votre connexion revient.

  • Des preuves pour chaque incident

    Les incidents enregistrés conservent désormais l’état des services et les changements de liens réseau capturés sur le moment, avec les détails techniques à portée de doigt.

  • Des logos pour le reste, si vous le souhaitez

    Pour les apps au-delà des 400 intégrées, Ichor peut télécharger un logo depuis le jeu ouvert Dashboard Icons. C'est désactivé par défaut et seul le nom public de l'icône est envoyé.

  • Écarts de version repérés

    Un nœud encore sur l’ancien Cilium, un tag :latest oublié : les applications à vérifier sont comptées directement sur la vue d’ensemble.

Analyse du cluster

Arrêtez de deviner ce qui a changé. Votre téléphone l’a vu.

Il est 3 h du matin, un nœud fait le yoyo et votre ordinateur est dans l’autre pièce. L’analyse du cluster fait passer Ichor de simple page d’état à véritable trousse de dépannage : repérez le nœud qui s’écarte des autres, enregistrez l’incident pendant qu’il se déroule et voyez quelle ressource sature vraiment. Le tout avec un certificat os:reader en lecture seule.

Écarts de configuration

Le seul worker avec un MTU différent, le serveur NTP oublié, l’extension restée à la traîne lors d’une mise à jour. Ichor compare DNS, NTP, MTU, versions des extensions, Secure Boot, UKI et versions de Talos au sein de chaque rôle, ou par rapport à une référence que vous enregistrez, et désigne l’intrus.

« Pourquoi seul w-3 est-il lent ? » → trouvé.

Enregistrement d’incident

Lancez l’enregistrement pendant que ça se produit et Ichor construit une chronologie sur dix minutes au plus : les événements Talos en direct, plus la disponibilité des nœuds, les services, les liens et les compteurs réseau, mesurés toutes les cinq secondes. La chronologie est sauvegardée, prête pour le post-mortem.

« Qu’est-ce qui a lâché en premier ? » → c’est sur la chronologie.

Indicateurs de saturation

Charge élevée, mais est-ce le processeur, le disque, le réseau ou un voisin bruyant sur l’hyperviseur ? L’onglet Direct affiche désormais l’attente E/S et le temps volé de la VM, le débit et le temps d’E/S par disque, ainsi que le débit, les erreurs et les pertes par interface, sans faux pics après un redémarrage.

« C’est le disque ? » → maintenant, vous savez.

Les références et les enregistrements sont chiffrés sur le téléphone, séparés par cluster et jamais sauvegardés. Aucune configuration machine, aucun kubeconfig ni aucun journal brut n’est collecté, et vous pouvez tout supprimer depuis l’écran d’analyse.

  • Retrouve les nœuds oubliés

    Votre talosconfig ne liste qu’un seul endpoint ? Ichor demande au cluster la liste de ses membres et propose d’ajouter les nœuds manquants d’un simple toucher.

  • Wake-on-LAN

    Réveillez un nœud éteint depuis son menu d’actions. Ichor mémorise les cartes réseau de chaque nœud tant qu’il est allumé, pour que vous puissiez le réveiller même sans l’avoir jamais configuré.

  • Essayez sans cluster

    La démo intégrée tourne hors ligne avec cinq nœuds d’exemple, des métriques en direct, des journaux, etcd et plus encore. Découvrez tout avant d’importer la moindre config.

  • Imports plus sûrs, bascule plus rapide

    Importer un contexte au nom déjà connu n’écrase jamais un cluster. Un appui long sur l’icône de l’app vous emmène directement dans n’importe quel cluster.

À quoi ça ressemble

De vrais écrans d’un cluster en production, pris en mode capture d’écran : les adresses et les noms des nœuds sont remplacés par des substituts.

Écran de vue d’ensemble du cluster d’Ichor pour Talos Linux
Vue d’ensemble du clusterTous les nœuds d’un coup d’œil, et un bandeau quand une nouvelle version de Talos est disponible.
Écran des services d’Ichor pour Talos Linux
ServicesL’état de chaque service Talos, avec redémarrage pour les opérateurs.
Écran des journaux du noyau et des services d’Ichor pour Talos Linux
Journaux du noyau et des servicesColorés par niveau, répétitions regroupées, filtrage sur les avertissements ou les erreurs.
Écran des événements d’Ichor pour Talos Linux
ÉvénementsChangements de services et conditions des nœuds, en temps réel.
Écran des graphiques en direct d’Ichor pour Talos Linux
Graphiques en directProcesseur, mémoire, réseau, disque et charge toutes les deux secondes.
Écran de capture de paquets d’Ichor pour Talos Linux
Capture de paquetsUne liste de paquets en direct, enregistrée en .pcap pour Wireshark.
Écran de mise à jour de Talos d’Ichor pour Talos Linux
Mise à jour de TalosVotre image d’installation avec la nouvelle version, après des vérifications préalables.

Les commandes talosctl de tous les jours, sous forme d’écrans

Tout passe par le client Go officiel de Talos : les contextes du talosconfig, le mTLS et le relais des endpoints vers les nœuds se comportent exactement comme avec talosctl.

Au lieu de Ouvrez Rôle
talosctl get machinestatus Vue d’ensemble du clusterChaque nœud : prêt, non prêt ou injoignable, avec les conditions non remplies, la dérive d’horloge et les mises à jour de Talos disponibles. reader
talosctl services, talosctl logs -f Services et journauxL’état des services, et les journaux des services ou du noyau colorés par niveau, avec répétitions regroupées et un mode de suivi en direct. reader
talosctl events Chronologie des événementsChangements de services, phases de démarrage et changements d’adresses dans tout le cluster, en temps réel. reader
talosctl dashboard, talosctl processes Graphiques en direct et processusProcesseur, mémoire, réseau, disque et charge toutes les deux secondes, et la liste des processus triée par processeur ou par mémoire. reader
talosctl get members Découverte des nœudsLes membres du cluster que votre talosconfig ne cible pas encore, ajoutés au contexte d’un toucher, et, sur Android, une recherche sur le réseau local quand aucun endpoint ne répond. reader
diff of talosctl get … on every node Écarts de configurationDNS, NTP, MTU, extensions, Secure Boot, UKI et versions de Talos comparés au sein d’un rôle ou par rapport à une référence enregistrée. reader
talosctl events + watch, in a terminal Enregistrement d’incidentLes événements et l’état mesuré des nœuds, des services et du réseau, réunis dans une chronologie sauvegardée. reader
talosctl read /proc/stat, /proc/diskstats Indicateurs de saturationAttente E/S, temps volé, E/S par disque, erreurs et pertes par interface, en direct. reader
talosctl containers -k PodsConteneurs regroupés par pod, avec processeur et mémoire. reader
talosctl containers -k on every node Inventaire des applicationsLes logiciels qui tournent dans le cluster, regroupés en applications avec leur logo, leurs versions, les écarts de version et les images non épinglées. reader
talosctl get links, talosctl netstat RéseauInterfaces, adresses, routes, serveurs DNS et de temps, et connexions ouvertes. reader
talosctl apply-config --mode try Configuration machineLa configuration du nœud champ par champ ou en YAML, avec les secrets masqués tant que vous ne les révélez pas. Modifiez-la et essayez le changement : le nœud revient de lui-même en arrière si vous ne le conservez pas. admin
talosctl etcd status, etcd snapshot etcdMembres, leader, taille et alarmes, défragmentation, et une sauvegarde enregistrée sur le téléphone. reader / backup
talosctl get kubespanpeerstatuses KubeSpanLes pairs de chaque nœud : état, endpoint, dernière poignée de main et trafic, et, sur Android, une carte des sites, nœuds et tunnels. reader
talosctl service restart Contrôle des servicesDémarrer, arrêter ou redémarrer un service, avec un avertissement pour les services critiques. operator
talosctl reboot -m powercycle Redémarrage, arrêt et réveilEn douceur, par coupure d’alimentation ou forcé, après avoir saisi le nom d’hôte pour confirmer. Réveillez un nœud éteint avec Wake-on-LAN. operator
talosctl pcap Capture de paquetsUne liste de paquets en direct avec les détails décodés, enregistrée en .pcap à ouvrir dans Wireshark. operator
talosctl upgrade Mise à jour de TalosUn nœud à la fois, refusée si etcd risque de perdre le quorum, avec la progression jusqu’au retour du nœud. admin
kubectl get deploy,sts,ds, kubectl rollout restart Charges de travail KubernetesDisponibilité et état du déploiement de chaque Deployment, StatefulSet et DaemonSet, et un redémarrage progressif après confirmation. admin
kubectl get cronjobs, kubectl create job --from CronJobs KubernetesPlanning, prochaine exécution et exécutions récentes de chaque CronJob, avec l’icône et le nom que vous lui donnez, et un lancement manuel après confirmation. admin
kubectl get pods, kubectl delete pod Pods KubernetesStatut, disponibilité, redémarrages et nœud de chaque pod, défaillants en premier ; supprimez un pod bloqué pour que son contrôleur le recrée. admin
cilium connectivity perf, netperf Test réseauDébit TCP et latence p50 à p99 entre deux nœuds, de pod à pod ou d’hôte à hôte, enregistrés et tracés dans le temps. admin
kubectl get volumes.longhorn.io, clusters.postgresql.cnpg.io Services de donnéesVolumes Longhorn, clusters CloudNativePG et leurs sauvegardes, Garage, Rook Ceph, MariaDB, Percona et Dragonfly, avec le nœud derrière chaque problème et le correctif dans la ligne. admin
talosctl cgroups Pression des nœuds et cgroupsPression processeur, mémoire et disque, la charge de travail qui attend le plus, les OOM kills, et l’utilisation par service, pod et conteneur. admin
talosctl config new Émettre un talosconfigRenouvelez le certificat de ce téléphone, ou créez-en un en lecture seule pour un autre appareil, sous forme de QR code. admin
talosctl rotate-ca Renouveler la CA TalosChaque nœud fait confiance à la nouvelle CA avant que l’ancienne disparaisse, et le talosconfig de ce téléphone suit en route. admin
talosctl health Vérification de l’état du clusterLes vérifications côté serveur, affichées au fil de leur exécution. admin
talosctl debug Shell de débogageLancez une image comme nicolaka/netshoot sur un nœud et obtenez un terminal, avec une quarantaine de commandes toutes prêtes. admin
dig, ping, nc -z, traceroute, curl -v Outils réseau du nœudVérifications DNS, ping, port, traceroute et HTTP/TLS lancées depuis un nœud, décomposées en champs. admin
talosctl upgrade on every node, talosctl upgrade-k8s Mise à niveau du clusterChaque nœud l'un après l'autre, drainé d'abord si besoin, et Kubernetes après une simulation, avec un avertissement quand une extension n'a pas de build pour la cible. admin
talosctl apply-config --insecure, talosctl reset Ajouter, remplacer, réinitialiser un nœudInspectez un nœud en mode maintenance, envoyez-lui une config créée à partir d'un membre et suivez-le jusqu'à ce qu'il rejoigne le cluster ; remplacez un nœud de control plane avec un plan guidé ; réinitialisez ou effacez-en un, refusé quand etcd casserait. admin
talosctl etcd defrag, alarm disarm, bootstrap --recover-from Réparation d'etcdCorrigez une alarme NOSPACE en un geste (instantané, défragmentation, désarmement, vérification) et restaurez etcd depuis un instantané. admin
talosctl get disks, volumestatus Stockage et matérielPartitions, espace libre et chiffrement de chaque disque, capteurs, fréquence et bridage du CPU, et pièces de rechange pour le serveur. reader
kubectl get all -A, kubectl describe, kubectl scale Tout objet KubernetesUn navigateur de tous les types, chaque objet avec un résumé de ses conditions, propriétaires et événements, son YAML avec l'aide du schéma, la mise à l'échelle, la suppression et les actions que votre RBAC autorise. RBAC
kubectl get svc,jobs,pvc,hpa, kubectl top Services, Jobs, Stockage, Autoscaling, CapacitéAdresses et routes, pools de répartiteurs de charge, état et propriétaire des Jobs, demandes de stockage et leur remplissage, HPA, KEDA, VPA et Karpenter, place libre par cluster et ce que coûterait la perte d'un nœud. RBAC
kubectl get events -w, amtool alert, amtool silence Événements en direct et AlertmanagerLes événements de tout le cluster au fil de l'eau, les alertes actives et les silences, un silence posé depuis le téléphone, et des alertes sur votre téléphone quand l'une se déclenche. RBAC
kubectl get cpol,policyreports, constraints PolitiquesPolitiques Kyverno et Gatekeeper, leurs constats et la santé du moteur ; basculez une politique entre Audit et Enforce. RBAC
virtctl, kubectl get vm,vmi Machines virtuellesVM KubeVirt avec démarrage, arrêt, redémarrage, migration, pause et une console série dans le terminal de l'app. RBAC
helm rollback, velero restore, kubectl apply --dry-run Helm, Velero et YAMLRevenez en arrière sur une release Helm avec ses hooks, restaurez une sauvegarde Velero avec un aperçu et une correspondance de namespaces, lancez une planification maintenant, et appliquez du YAML collé après un diff simulé. RBAC
kubectl argo rollouts, kubectl get managed, tailscale Argo Rollouts, Crossplane, Tailscale, Cluster APIPromouvez, interrompez ou relancez un rollout ; mettez en pause, reprenez ou réconciliez une ressource Crossplane ; connecteurs et groupes de proxys ; clusters, machines et serveurs Sidero Metal. RBAC
grype, trivy image Analyse d'imagesVulnérabilités des images d'un pod, d'une charge de travail ou des images système Talos d'un nœud, rapports conservés avec ce qui est nouveau depuis la dernière analyse. reader
git checkout -b, git commit, gh pr create Git et pull requestsParcourez et cherchez dans les fichiers qu'une app déploie, modifiez-en un ou plusieurs, relisez le diff et son build kustomize, et ouvrez une pull request sur GitHub, GitLab, Gitea ou Forgejo. Git token
a shell script of kubectl and talosctl calls RunbooksUne liste ordonnée des actions propres à l'app, importée avec son plan affiché d'abord, exécutée avec une confirmation par étape destructrice. per step
kubectl get <your CRD> PluginsDouze opérateurs intégrés, et vos propres CRD décrites dans un seul fichier YAML, avec des cartes, des actions et des constats qui remontent dans le bilan de santé et les alertes. RBAC

Votre téléphone n’a que les accès que vous lui donnez

Générez un talosconfig dédié au téléphone. L’app lit ses rôles et n’affiche que ce que ce certificat autorise. Si le téléphone est perdu, le certificat ne donne aucun droit de plus, et il expire de lui-même.

Opérateur

os:operator

Tout ce que permet la lecture seule, plus le redémarrage et l’arrêt des nœuds, le redémarrage des services et la capture de paquets.

Admin

os:admin

Ajoute le bilan de santé, la configuration machine, les mises à niveau Talos et Kubernetes, l'ajout, le remplacement et la réinitialisation de nœuds, la réparation d'etcd, l'émission de talosconfigs, l'export du kubeconfig, les shells de débogage, les tests réseau, la pression des nœuds, et tous les écrans Kubernetes via le kubeconfig admin émis par Talos. Sur un cluster kubeconfig, ce que vous pouvez faire, c'est votre RBAC, demandé avant que vous ne touchiez.

Le talosconfig est chiffré avec une clé conservée dans la puce de sécurité du téléphone : StrongBox ou le TEE sur Android, la Secure Enclave sur iPhone. Un verrouillage facultatif par empreinte, Face ID ou code PIN protège l’app et chaque redémarrage.

Devenez testeur bêta sur le Play Store

Ichor est en test fermé sur Google Play avant sa sortie publique. Seuls les comptes inscrits comme testeurs peuvent l’installer, d’où deux étapes.

  1. Inscrivez-vous comme testeur

    Rejoignez les testeurs sur Discord, ou envoyez l’adresse du compte Google que votre téléphone utilise pour le Play Store.

    Votre application mail s’ouvre avec le message prêt à envoyer à ichorformobile@proton.me ; rien ne passe par ce site.

  2. Installez depuis Google Play

    Une fois votre compte inscrit, ouvrez le lien Play Store sur votre téléphone Android et installez Ichor.

    Pas sur votre téléphone ? Rejoignez le test sur le web avec le même compte Google.

Demander un plugin à partir de sa CRD

Tout opérateur dont la CRD est publique peut devenir un plugin Ichor. Donnez le lien vers son manifeste de CRD : une pull request brouillon est ouverte à partir de celui-ci, puis un mainteneur la relit et la traduit. Consultez d'abord les demandes ouvertes : un pouce levé sur l'une d'elles compte autant qu'une nouvelle demande.

Ceci ouvre une issue préremplie sur GitHub, où vous vous connectez et la soumettez ; rien ne passe par ce site.

Installer

  1. Créer un talosconfig pour le téléphone

    Sur votre poste de travail, signez un certificat en lecture seule sur un nœud du control plane, puis listez vos nœuds.

    talosctl -n <control-plane-ip> config new talosconfig-phone --roles os:reader --crt-ttl 8760h
    talosctl --talosconfig talosconfig-phone config node <node-1> <node-2> …
  2. Installer l’app

    Sur Android, rejoignez la bêta du Play Store et installez Ichor depuis Google Play.

  3. Importer la config

    Choisissez le fichier, collez-le ou scannez-le sous forme de QR code :

    qrencode -t ansiutf8 -r talosconfig-phone

    Trop grand pour un seul QR code ? Compressez-le, l'app le décompresse :

    gzip -9 < talosconfig-phone | qrencode -8 -t ansiutf8

Android

Android 8 et plus, depuis Google Play pendant la bêta. Les mises à jour passent par le Play Store.

Rejoindre la bêta

iPhone

iOS 17 et versions ultérieures. Chaque version inclut une IPA non signée : installez-la avec Sideloadly ou AltStore, qui la signent avec votre identifiant Apple.

Dernière version

Pourquoi Ichor

Une seule veine gardait en vie le géant de bronze. Gardez un œil sur la vôtre.

Dans la mythologie grecque, Talos était le géant de bronze qui gardait la Crète, faisant le tour de ses rivages trois fois par jour. Une seule veine courait de son cou à sa cheville, charriant l’ichor, le sang doré des dieux. Tant que l’ichor coulait, Talos tenait debout.

Votre cluster a lui aussi un pouls : nœuds prêts, services en bonne santé, etcd avec son quorum. Ichor est l’app que vous ouvrez pour le prendre, où que vous soyez, et celle qui vous tape sur l’épaule quand il faiblit.

Questions

Puis-je l’essayer sans cluster Talos ?

Oui. Touchez Essayer la démo sur l’écran d’import : un cluster hors ligne de cinq nœuds d’exemple avec métriques en direct, services, journaux, événements, etcd et réseau. Il est clairement signalé comme données de démonstration, peut cohabiter avec vos vrais clusters et se supprime depuis Gérer les clusters.

Ça marche sans Talos, sur EKS, GKE ou AKS ?

Oui. Ajoutez un cluster depuis un kubeconfig, ou listez les clusters d'un compte AWS, Google Cloud, Azure, DigitalOcean ou Rancher et ajoutez ceux que vous choisissez. La connexion que le plugin exec du kubeconfig lancerait se fait sur le téléphone : IAM Identity Center, Entra ID, une clé de compte de service, ou OIDC dans le navigateur. Les écrans Talos sont masqués ; tous les écrans Kubernetes, les alertes en arrière-plan et les services de données sont là, et ce que vous pouvez faire, c'est votre RBAC.

Mon opérateur n'est pas dans la liste. L'app peut-elle l'afficher ?

Oui. Un plugin décrit une ressource personnalisée dans un seul fichier YAML : quoi lire, ce qui compte comme sain, les cartes, les actions et les constats. Douze opérateurs sont livrés en plugins intégrés, et vous pouvez importer le vôtre depuis un collage, un fichier, un lien https ou un QR code ; Réglages → Plugins montre ce que chacun lit et peut changer avant que vous ne l'activiez. La référence des plugins décrit le format, et le formulaire de demande transforme un lien public vers une CRD en pull request brouillon.

Ichor est-elle une app officielle de Sidero Labs ?

Non. Ichor est un client indépendant pour Talos Linux, développé par la communauté. Elle utilise la bibliothèque client Go open source de Sidero, mais n’est ni conçue, ni approuvée, ni prise en charge par Sidero Labs.

Dois-je installer quoi que ce soit sur le cluster ?

Non. Ichor dialogue avec l’API Talos que chaque nœud expose déjà, avec un talosconfig, exactement comme talosctl. Il n’y a ni agent, ni opérateur, ni serveur relais. Les écrans Kubernetes utilisent le kubeconfig admin que Talos émet pour un certificat admin, conservé uniquement en mémoire. Le test réseau est la seule exception : il lance des pods netperf éphémères dans un namespace dédié et le supprime une fois terminé.

Où vont mes données ?

Uniquement vers vos nœuds. L’app consulte GitHub pour connaître les nouvelles versions, et rien d’autre ne quitte le téléphone sans que vous l’activiez. Le diagnostic IA est désactivé par défaut, vous montre d’abord le rapport exact et ne l’envoie que lorsque vous touchez Demander, avec les noms et les adresses masqués si vous le souhaitez. Le téléchargement des logos des applications non intégrées est lui aussi désactivé par défaut, et n’envoie que le nom public de l’icône, jamais vos noms d’images.

Peut-elle casser mon cluster ?

Pas avec un certificat en lecture seule : l’API Talos refuse toute modification. Avec un certificat opérateur ou admin, les actions risquées vous demandent de saisir le nom d’hôte du nœud, et les mises à jour sont refusées si etcd risque de perdre le quorum.

Comment passer à un nouveau téléphone ?

Sauvegardez vos clusters et réglages depuis les Paramètres, scellés par une phrase secrète. Sur le nouveau téléphone, touchez Restaurer une sauvegarde sur le premier écran ou, sur Android, ouvrez le fichier de sauvegarde depuis votre gestionnaire de fichiers. Les sauvegardes passent d’Android à iPhone et inversement.

Gère-t-elle plusieurs clusters ?

Oui. Importez autant de talosconfigs ou de contextes que vous voulez, passez de l’un à l’autre depuis l’en-tête et donnez à chaque cluster sa propre couleur pour toujours savoir où vous êtes.

Votre cluster a un pouls. Gardez-le sur vous.

Installez Ichor en une minute, ouvrez la démo, puis connectez-la à votre propre cluster avec un certificat en lecture seule. Libre, gratuite, sans compte.

Soutenir le projet

Ichor est gratuite, sans publicité ni pistage. La détection des écarts, l’enregistrement d’incident et toutes les fonctions présentées sur cette page sont développés en public. Si Ichor vous évite d’aller chercher votre ordinateur, aidez à financer la suite via GitHub Sponsors ou en crypto.