k8sgpt-ai/k8sgpt-operator
Automatic SRE Superpowers within your Kubernetes cluster
k8sgpt‑operator – Kubernetes 向け AI 駆動の分析と自動修復
概要 – クラスター内で K8sGPT エンジンを実行する Kubernetes Operator。クラスターを監視し、リソースデータを設定可能な LLM(OpenAI、Azure OpenAI、Bedrock、LocalAI など)に送信し、診断提案を受け取り、安全で単一ステップの修正(例:失敗したコンテナイメージの置き換え)を自動的に適用できます。すべての LLM 呼び出しは読み取り専用です。operator 自体が JSON‑patch を構築し、ポリシーゲートとドライラン後に適用します。
主な機能
- 自動修復(アルファ、オプトイン) –
ImagePullBackOffなどの失敗を検出し、LLM に修正を求め、セマンティックパッチを生成し、ドライランし、修正されたワークロードをロールアウトします。LLM には書き込み権限は一切ありません。 - マルチクラスター監視 –
kubeconfigシークレットを提供することで、中央の「シード」クラスターからリモートクラスターを管理できます(Cluster‑API フリートに便利)。 - プラグ可能な AI バックエンド – OpenAI、Azure OpenAI、Amazon Bedrock、LocalAI、および
spec.ai.backendフィールドを介した互換性のあるプロバイダー。 - 分散キャッシュ – オプションの Interplex RPC キャッシュ、Azure Blob、または S3 キャッシュにより、繰り返しの LLM 呼び出しを回避。
- 設定可能な分析 – 間隔、リソース制限、イメージプルポリシー、カスタムコンテナイメージ、および
spec.filtersで選択可能な豊富なアナライザー(コアおよびオプション)。 - 結果オブジェクト – 発見結果は
ResultCRD として出力され、元の K8sGPT インスタンス、名前空間、バックエンドでラベル付けされ、フィルタリングが容易です。 - 統合(シンク) – 結果を Slack、Mattermost、CloudEvents などに送信。
インストール(Helm)
helm repo add k8sgpt https://charts.k8sgpt.ai/
helm repo update
helm install release k8sgpt/k8sgpt-operator \
-n k8sgpt-operator-system --create-namespace
はじめに – LLM 資格情報を含むシークレットを作成し、K8sGPT カスタムリソースを適用します。OpenAI の例:
apiVersion: core.k8sgpt.ai/v1alpha1
kind: K8sGPT
metadata:
name: k8sgpt-sample
namespace: k8sgpt-operator-system
spec:
ai:
enabled: true
model: gpt-4o-mini
backend: openai
secret:
name: k8sgpt-sample-secret
key: openai-api-key
repository: ghcr.io/k8sgpt-ai/k8sgpt
version: v0.4.32
Operator は K8sGPT デプロイメントを起動し、スキャンを開始し、kubectl get results で表示できる Result オブジェクトを作成します。
自動修復の有効化 – 修復 CR(valid_k8sgpt_remediation_sample.yaml)を追加し、spec.autoRemediation.enabled: true を設定します。その後、operator は検出されたイメージプル失敗に対して単一イメージ修復を試みます。上記の安全ゲートに従います。
重要性 – LLM に直接書き込みアクセスを許可せずに、LLM 駆動の可観測性と自己修復を Kubernetes にもたらし、セキュリティのベストプラクティスに沿いながら、一般的なクラスター問題の平均解決時間を短縮します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト