Aller au contenu

kubectl-ai - Assistant IA pour Kubernetes

kubectl-ai - Assistant IA pour Kubernetes

kubectl-ai est un assistant alimenté par IA pour Kubernetes (de Google Cloud) qui interprète les demandes en langage naturel et les traduit en opérations kubectl. Il peut expliquer ce qui s’exécute, générer des manifestes, diagnostiquer les pods défaillants et enchaîner les investigations multi-étapes — s’exécutant en tant qu’agent interactif ou commande unique. Il est agnostique du modèle : Gemini, OpenAI, ou un modèle local via Ollama, ce qui compte quand vous préféreriez ne pas envoyer les détails du cluster à une API hébergée.

L’agent peut exécuter les opérations du cluster. Examinez ce qu’il propose avant d’approuver n’importe quoi de destructif, et préférez les contextes en lecture seule lors de l’exploration.

Installation

MéthodeCommande
Script d’installationcurl -sSL https://raw.githubusercontent.com/GoogleCloudPlatform/kubectl-ai/main/install.sh | bash
Krewkubectl krew install ai
Homebrewbrew install kubectl-ai
Binairetélécharger depuis GitHub Releases
Vérifierkubectl-ai --version

Configuration du Modèle

BackendConfiguration
Geminiexport GEMINI_API_KEY=... (par défaut)
OpenAIexport OPENAI_API_KEY=... et --llm-provider=openai
Ollama (local)--llm-provider=ollama --model=llama3.1
Azure OpenAIvars env du fournisseur + point de terminaison
Grok / autresdrapeaux du fournisseur supportés
# Entièrement local — aucune donnée du cluster ne quitte la machine
kubectl-ai --llm-provider=ollama --model=gemma3:12b

Modes d’Utilisation

ModeCommande
Interactifkubectl-ai (session de chat)
Uniquekubectl-ai "list pods not in Running state"
Entrée pipedcat error.log | kubectl-ai "what is failing here?"
En tant que pluginkubectl ai "scale the api deployment to 5"

Ce qu’il Gère Bien

TâcheExemple d’invite
Inspection« quels pods ont redémarré au cours de la dernière heure ? »
Diagnostic« pourquoi le déploiement checkout n’est-il pas prêt ? »
Génération de manifeste« créer un déploiement pour nginx avec 3 réplicas et un service »
Explication« expliquer ce que fait ce CRD »
Triage multi-étapes« trouver les pods défaillants et afficher leurs logs récents »
Calcul de ressources« quels namespaces utilisent le plus de demandes CPU ? »

Commandes de Session Interactif

CommandeFait
modelsLister les modèles disponibles
model <name>Changer de modèle en mi-session
clearRéinitialiser la conversation
exit / quitQuitter la session
SuivisDemander en contexte : « montre-moi maintenant ses logs »

Contrôles de Sécurité

ContrôleObjectif
Invites de confirmationApprouver les commandes avant l’exécution
--quietNon-interactif (scripting; utiliser avec prudence)
Contexte kubeconfig en lecture seuleGarde-fou le plus solide
Scoping de namespaceLimiter le rayon d’impact
Revoir le YAML généréAvant kubectl apply

La mesure de sécurité la plus fiable n’est pas un drapeau — c’est de pointer l’outil sur un contexte dont les credentials ne peuvent pas muter la production.

Intégration MCP

kubectl-ai peut opérer en tant que serveur ou client MCP, exposant les opérations Kubernetes en tant qu’outils à d’autres clients IA (ou consommant des outils MCP externes lors d’une session).

ModeDrapeau
Serveur MCP--mcp-server
Client MCPconfigurer les serveurs MCP externes

Flux de Travail Pratique

# Triage d'un service défaillant, modèle local hébergé
kubectl-ai --llm-provider=ollama --model=llama3.1
> why are pods in the payments namespace crashlooping?
> show me the last 50 log lines from the worst offender
> what would you change in the resource limits?

Traitez la sortie comme une suggestion informée, pas comme une autorité — vérifiez la sortie kubectl sous-jacente qu’elle cite.

kubectl-ai vs Outils Associés

Aspectkubectl-aik9skubectl + docs
InterfaceLangage naturelTUICommandes manuelles
Aide au diagnosticOui (raisonnement)Inspection visuelleVotre propre connaissance
Option de modèle localOui (Ollama)N/AN/A
Meilleur pourExplication/diagnostic, brouillon YAMLNavigation cluster rapideContrôle précis

Complète k9s pour la navigation et kubectl pour les opérations exactes.

Ressources