콘텐츠로 이동

kubectl-ai - Kubernetes용 AI 어시스턴트 치트시트

kubectl-ai - Kubernetes용 AI 어시스턴트 치트시트

kubectl-ai는 Kubernetes용 AI 기반 어시스턴트 (Google Cloud)로 자연 언어 요청을 해석하고 kubectl 작업으로 변환합니다. 실행 중인 것을 설명하고, 매니페스트를 생성하고, 실패한 pod를 진단하고, 다단계 조사를 연결할 수 있습니다 — 대화형 에이전트 또는 일회성 명령어로 실행합니다. 모델 불가지론적입니다: Gemini, OpenAI, 또는 Ollama를 통한 로컬 모델, 클러스터 세부사항을 호스팅 API로 보내고 싶지 않다면 중요합니다.

에이전트는 클러스터 작업을 실행할 수 있습니다. 파괴적인 것을 승인하기 전에 제안을 검토하고, 탐색할 때 읽기 전용 컨텍스트를 선호합니다.

설치

방법명령어
설치 스크립트`curl -sSL https://raw.githubusercontent.com/GoogleCloudPlatform/kubectl-ai/main/install.sh
Krewkubectl krew install ai
Homebrewbrew install kubectl-ai
바이너리GitHub Releases에서 다운로드
확인kubectl-ai --version

모델 설정

백엔드설정
Geminiexport GEMINI_API_KEY=... (기본값)
OpenAIexport OPENAI_API_KEY=...--llm-provider=openai
Ollama (로컬)--llm-provider=ollama --model=llama3.1
Azure OpenAI제공자 + 엔드포인트 환경 변수
Grok / 기타지원되는 제공자 플래그
# 완전히 로컬 — 클러스터 데이터가 기계를 떠나지 않음
kubectl-ai --llm-provider=ollama --model=gemma3:12b

사용 모드

모드명령어
대화형kubectl-ai (채팅 세션)
일회성kubectl-ai "list pods not in Running state"
파이프된 입력cat error.log | kubectl-ai "what is failing here?"
플러그인으로kubectl ai "scale the api deployment to 5"

잘 처리할 항목

작업예제 프롬프트
검사”which pods restarted in the last hour?”
진단”why is the checkout deployment not ready?”
매니페스트 생성”create a deployment for nginx with 3 replicas and a service”
설명”explain what this CRD does”
다단계 심사”find failing pods and show their recent logs”
리소스 수학”which namespaces use the most CPU requests?”

대화형 세션 명령어

명령어수행
models사용 가능한 모델 나열
model <name>세션 중간에 모델 전환
clear대화 재설정
exit / quit세션 떠나기
후속컨텍스트에서 요청: “now show me its logs”

안전 제어

제어목적
확인 프롬프트실행 전 명령어 승인
--quiet비대화형 (스크립팅; 신중히 사용)
읽기 전용 kubeconfig 컨텍스트가장 강력한 가드레일
네임스페이스 범위피해 반경 제한
생성된 YAML 검토kubectl apply 전에

가장 안정적인 안전 조치는 플래그가 아닙니다 — 그것은 자격증명이 프로덕션을 변경할 수 없는 컨텍스트에 도구를 가리킵니다.

MCP 통합

kubectl-ai는 MCP 서버 또는 클라이언트로 작동하여 Kubernetes 작업을 다른 AI 클라이언트에 도구로 노출하거나 (또는 세션 중 외부 MCP 도구를 사용).

모드플래그
MCP 서버--mcp-server
MCP 클라이언트외부 MCP 서버 설정

실제 워크플로우

# 실패한 서비스 심사, 로컬 호스팅 모델
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?

출력을 지식 있는 제안으로 취급합니다. 절대권이 아닙니다 — 인용하는 기본 kubectl 출력을 검증합니다.

kubectl-ai vs 관련 도구

측면kubectl-aik9skubectl + 문서
인터페이스자연 언어TUI수동 명령어
진단 도움예 (추론)시각 검사자신의 지식
로컬 모델 옵션예 (Ollama)N/AN/A
최적 대상설명/진단, YAML 드래프팅빠른 클러스터 네비게이션정밀 제어

k9s 네비게이션 및 kubectl 정확한 작업을 보완합니다.

리소스