Files
wiki/Catalogue-Self-Hosted/apps/app-kubetail.md
T
2026-06-09 18:40:21 +02:00

7.4 KiB


title: Kubetail created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, logs, kubernetes, k8s, dashboard, real-time, multi-pod, typescript, kubectl] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Logs, https://github.com/kubetail-org/kubetail]

📋 Kubetail

Le kubectl logs revisité : dashboard web et TUI pour suivre les logs de plusieurs pods Kubernetes en temps réel, avec sélection de containers, namespaces et tail multi-stream. Le k9s des logs.

📋 Informations Générales

Champ Valeur
Site web kubetail.com
GitHub kubetail-org/kubetail
License Apache-2.0
Langage TypeScript (Node.js) + Go (backend)
Étoiles GitHub 1.7k
Dernière MAJ 2026-06-04
Catégorie [[cat-logs

📝 Description

Kubetail est un dashboard de logs Kubernetes qui résout le plus gros point de friction de kubectl : suivre les logs de plusieurs pods simultanément. Fini le jonglage entre 5 terminaux avec kubectl logs -f pod-1, kubectl logs -f pod-2, etc. Kubetail unifie tout dans une seule UI web (ou TUI) avec sélection des containers, namespaces, et filtrage.

L'outil propose deux interfaces : une UI web moderne (basée sur le kubeconfig local ou un service account K8s) et un TUI terminal (style k9s). Les deux supportent le tail multi-pod, la colorisation par container, la recherche full-text, et la sélection dynamique des ressources à suivre. C'est un outil indispensable pour le debug en cluster.

Kubetail peut être utilisé en mode local (CLI qui lit votre kubeconfig) ou mode serveur (déployé dans le cluster avec un service account, accessible à toute l'équipe). Le mode serveur permet de partager une session de debug avec des collègues ou de surveiller depuis un navigateur distant.

Public cible : développeurs backend qui débuggent des microservices K8s, SRE qui font du troubleshooting en cluster, équipes DevOps qui veulent partager des sessions de logs, toute personne qui trouve kubectl logs limité.

  • Dashboard web : UI moderne accessible depuis le navigateur
  • TUI terminal : pour les SSH dans des jump hosts
  • Multi-pod : tail simultané de N pods/containers
  • Multi-namespace : switch rapide entre namespaces
  • Recherche full-text : grep-like sur les logs en temps réel
  • Colorisation : logs colorés par container/pod
  • Mode CLI local : utilise votre ~/.kube/config
  • Mode serveur : déployé dans le cluster pour l'équipe
  • Kubernetes RBAC : respect des permissions K8s natives
  • Source d'events K8s : integration avec les Events API
  • Apache-2.0 : usage libre, même commercial
  • ⚠️ Pas de rétention : viewer, pas aggregator (utiliser Loki en complément)

🚀 Installation

Option 1 : Kubetail CLI (mode local)

# macOS / Linux
curl -L https://raw.githubusercontent.com/kubetail-org/kubetail/main/install.sh | sh

# Homebrew
brew install kubetail

# Vérifier l'install
kubetail --version

Option 2 : Docker (mode serveur)

# docker-compose.yml (déploiement dans le cluster recommandé)
# Ou en standalone pour test :
version: '3.8'
services:
  kubetail:
    image: kubetail-org/kubetail:latest
    container_name: kubetail
    restart: unless-stopped
    ports:
      - "7500:7500"   # Backend API
      - "8080:8080"   # Web UI
    volumes:
      - ./kubeconfig:/root/.kube/config:ro
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.kubetail.rule=Host(`kubetail.example.com`)"
      - "traefik.http.routers.kubetail.entrypoints=websecure"
      - "traefik.http.routers.kubetail.tls.certresolver=letsencrypt"

Option 3 : Helm (Kubernetes)

helm repo add kubetail https://kubetail-org.github.io/helm-charts
helm install kubetail kubetail/kubetail \
  --namespace logging --create-namespace

Option 4 : kubectl plugin

kubectl krew install tail
kubectl tail deployment/my-app

⚙️ Configuration Initiale

  1. Vérifier kubectl : kubectl get nodes doit fonctionner
  2. Lancer le mode local : kubetail → ouvre le TUI
  3. Sélectionner une ressource : TUI > taper le nom du deployment/statefulset
  4. Lancer le mode web : kubetail web --port 8080
  5. Accéder à l'UI : http://IP:8080
  6. Sélectionner namespace/pods : UI > dropdowns
  7. Tail multi-pod : cocher plusieurs pods dans l'UI
  8. Rechercher : barre de recherche (regex supporté)
  9. Mode serveur cluster : déployer via Helm, créer un ServiceAccount dédié

🔄 Alternatives

Open Source

  • k9s — Dashboard K8s généraliste (inclut logs)
  • Lens — IDE K8s avec logs intégrés
  • Rancher — Plateforme K8s (logs)
  • app-loki + app-grafana — Pour archivage long terme
  • stern — Multi-pod log tailer en CLI (Go)
  • kubectl-tail — Plugin kubectl de base

Comparaison Kubetail vs autres

Critère Kubetail k9s stern Loki/Grafana
Focus Logs K8s général Logs CLI Logs + métriques
UI Web + TUI TUI CLI Web
Multi-pod UI UI
Mode partageable (serveur)
Recherche full-text Excellente
Rétention Configurable
Setup 2 min 5 min 30s 30 min
Ressources cluster Aucune Aucune Aucune Lourdes
License Apache-2.0 Apache-2.0 Apache-2.0 AGPL-3.0

Verdict : Kubetail est le meilleur viewer de logs K8s pour le debug en temps réel. Pour l'archivage long terme, app-loki + Grafana est incontournable. En complément de k9s, c'est le duo parfait.

Propriétaires (ce que Kubetail remplace)

  • Datadog Log Monitoring (cher, K8s integration payante)
  • New Relic Logs (K8s)
  • Splunk Observability Cloud (K8s)
  • Sumo Logic (K8s log monitoring)
  • Dynatrace (K8s log management)

🔐 Sécurité

  • ⚠️ Logs = données sensibles : logs K8s contiennent souvent des secrets, tokens
  • Chiffrement in-transit : TLS obligatoire (Traefik en reverse proxy)
  • K8s RBAC natif : Kubetail respecte les permissions Kubernetes
  • Service Account dédié : créer un SA avec permissions minimales
  • Read-only : Kubetail ne fait que lire, jamais d'écriture sur le cluster
  • ⚠️ Rétention : aucune, c'est un viewer (ne pas y aller pour la conformité)
  • Pas de stockage : aucune base de données à compromettre
  • Audit K8s : les accès logs sont tracés par K8s audit log
  • Pas de backup nécessaire : stateless
  • ⚠️ Secret leak : attention aux secrets en clair dans les env vars des pods

📚 Ressources

Pages Liées