K8sGPT
K8sGPT 是一款用于扫描 kubernetes 集群的工具,能用简单的英语诊断问题。它将 SRE 经验编入其分析器中,有助于提取最相关的信息,并通过人工智能加以丰富。
k8sgpt 使用 openai 作为默认模型,不过openai 已经对国内禁用了 api,可以使用本地模型尝鲜。
Ollama run llama3
Ollama 是一个开源的大模型工具,mac brew安装
brew install ollama
~ ollama -v
ollama version is 0.1.48
启动Ollama
OLLAMA_HOST=0.0.0.0 ollama start
下载大模型
ollama run llama3
配置 K8sGPT CLI
brew install k8sgp
新增后端模型
k8sgpt auth add --backend localai --model llama3 --baseurl http://localhost:11434/v1
设置成默认 provider
k8sgpt auth default --provider localai
测试
创建一个镜像错误的 pod
kubectl create deployment demo1 --image=httpd44444 --port=80
使用k8sgpt 进行诊断
~ k8sgpt analyze --explain --filter=Pod -n=default
100% |█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| (1/1, 667 it/s)
AI Provider: localai
0: Pod default/demo1-69cf8994d-tcnhz(Deployment/demo1)
- Error: Back-off pulling image "httpd44444"
Error: Back-off pulling image "httpd44444"
Solution:
1. Check if the image exists on Docker Hub or your registry.
2. Verify the image name and tag are correct.
3. Run docker pull httpd44444
to test the image pull.
4. If still failing, check network connectivity and firewall rules.
5. Update your Kubernetes configuration with the correct image path.
可以发现错误问题的 pod 和错误提示还有一些可能的解决方案
[…] 接上一篇我们用 k8sgpt 对 pod 进行分析,本文主要对 pod 诊断的源码进行解析, […]