K8sGPT 的使用

K8sGPT

介绍

k8sgpt 是一个扫描 Kubernetes 集群、诊断和分类问题的工具。它将 SRE 经验编入其分析器中,并帮助提取最相关的信息,通过人工智能来丰富它。它还可以与 OpenAI、Azure、Cohere、Amazon Bedrock 和本地模型结合使用。
K8sGPT Github 地址

部署 LocalAI

部署 LocalAI

配置 LocalAI

bash 复制代码
k8sgpt auth add --backend localai --model ggml-gpt4all-j --baseurl http://localhost:8080/v1
k8sgpt auth list

测试诊断

部署创建带错误的 deployment

yaml 复制代码
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
  labels:
    app: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80
        securityContext:
          readOnlyRootFilesystem: true
bash 复制代码
# 部署
kubectl apply -f ./nignx.yaml -n demo
# 诊断
k8sgpt analyze -n demo --explain --backend localai

大概意思是告诉你思路去排查吧,好像还很初级就是了,可以针对自己环境的问题做成文档喂给 AI,锻炼一下,就更有针对性。

安全扫描分析

bash 复制代码
k8sgpt integration list
k8sgpt integration activate trivy
k8sgpt filters list
k8sgpt analyse --filter=VulnerabilityReport
k8sgpt analyze --filter VulnerabilityReport --explain --backend localai

k8sgpt integration deactivate trivy

Operator 使用

部署 operator

bash 复制代码
helm repo add k8sgpt https://charts.k8sgpt.ai/
helm repo update
helm pull k8sgpt/k8sgpt-operator
tar xvf k8sgpt-operator-0.1.0.tgz
cd k8sgpt-operator && vim values.yaml
# 开启 serviceMonitor 和 GrafanaDashboard
serviceMonitor:
	enabled: true
GrafanaDashboard:
	enabled: true
helm install k8sgpt-operator . -n k8sgpt-operator-system --create-namespace

部署 promethues

bash 复制代码
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm install prom prometheus-community/kube-prometheus-stack -n k8sgpt-operator-system --set prometheus.prometheusSpec.serviceMonitorSelectorNilUsesHelmValues=false
kubectl port-forward service/prom-grafana -n k8sgpt-operator-system 3000:80

配置部署 K8sGPT

bash 复制代码
kubectl apply -f -n k8sgpt-operator-system - << EOF
apiVersion: core.k8sgpt.ai/v1alpha1
kind: K8sGPT
metadata:
  name: k8sgpt-local-ai
spec:
  ai:
    enabled: true
    model: ggml-gpt4all-j
    backend: localai
    baseUrl: http://192.168.3.39:8080/v1
    anonymized: true
    language: english
    method: /v1
    remote_addr: 192.168.3.39:8080
  noCache: false
  version: v0.3.8
EOF

查看故障报告

bash 复制代码
 kubectl get -n k8sgpt-operator-system result k8sgptoperatorsystemnginxdeployment866dc6df9cn5qqj -o yaml

Grafana 查看对应面板

备注:登陆的账号密码可以查看 secret/prom-grafana

Reference

https://www.youtube.com/watch?v=SX_2YHC15cM\&t=1578s

https://anaisurl.com/k8sgpt-full-tutorial/

https://cloud.tencent.com/developer/article/2311268

https://www.sfernetes.com/k8sgpt/

相关推荐
蜡笔婧萱1 小时前
Docker介绍及其基础简介(一)
云原生·eureka
sbjdhjd6 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
热爱Liunx的丘丘人6 小时前
1、什么是K8s
云原生·容器·kubernetes
openFuyao1 天前
新增Agent沙箱调度能力!openFuyao v26.09社区发行版上线,AI原生基础设施能力进一步升级
云原生·ai-native·ai推理·openfuyao·多样化算力集群软件
阿里云云原生1 天前
云效工作项智能优化:先澄清,再开工
云原生
阿里云云原生1 天前
阿里云日志服务 SLS 全新升级,打造 Agent 时代的智能数据引擎
云原生
阿里云云原生1 天前
从“治已病”到“治未病”:浩瀚能源与阿里云共建充电补能异地双活高可用体系实践
云原生
wzq11_6661 天前
kubernetes集群——灰度发布
云原生·容器·kubernetes
阿里云云原生1 天前
阿里云发布 Alibaba Cloud AI Agent Handbook,阐述“智能面积”
云原生
Zhu7582 天前
在k8s环境中,离线部署与使用Topograph
云原生·容器·kubernetes