otwld/ollama-helm
Helm chart for Ollama on Kubernetes
何がこれか
ollama-helm は、Kubernetes クラスタ上で Ollama LLM サーバーを簡単に実行できる Helm チャートです。Deployment/StatefulSet、Service、Ingress、オプションの Knative Service、PVC など、すべての Kubernetes オブジェクトをパッケージ化し、CPU または GPU でのデプロイ、モデルの事前読み込み、Ingress または Gateway-API での公開、カスタムモデルのビルドブートストラップなど、カスタマイズ可能な値を提供します。
どんな人向けか
- Kubernetes を既に使っているが、原始的なマニフェストを管理したくないチーム。
- GPU サポート(NVIDIA または AMD)が必要で、チャートが追加のフラグを処理してくれることを望むユーザー。
- Ollama を他のクラウドネイティブツール(Knative、自動スケーリング、external-gateway など)と統合したい人。
コア機能
| 機能 | チャートの対応方法 |
|---|---|
| CPU / GPU デプロイ | ollama.gpu.enabled で GPU モードを切り替え;type で nvidia または amd を選択;number で要求する GPU 数を設定。 |
| モデルの事前読み込み | ollama.models.pull にコンテナ起動時に ollama pull するモデルのリストを指定。 |
| カスタムモデルのビルド | ollama.models.create で Docker 風のテンプレート(例:FROM llama3.1 …)を指定可能;ollama.models.run でビルド後にモデルを実行。 |
| Ingress / Gateway-API | オプションの ingress.enabled または gateway.enabled セクションで Ingress リソース、または Gateway-API の Gateway/HttpRoute を生成。 |
| Knative サポート | knative.enabled=true にすると、従来の Deployment ではなく Knative Service を作成し、モデルのダウンロード/ビルド用の別々の bootstrap Job を作成。 |
| 自動スケーリング | 標準の HPA フィールド(autoscaling.enabled、minReplicas、maxReplicas、targetCPUUtilizationPercentage)をサポート。 |
| 永続化 | persistentVolume.enabled で PVC を作成;persistentVolume.existingClaim で既存のクレームをアタッチ可能。 |
| 細かいポッド制御 | affinity、hostNetwork、hostIPC、hostPID、追加環境変数、追加引数、任意の追加 Kubernetes オブジェクトを指定可能。 |
クイックスタート(CPU専用)
helm repo add otwld https://helm.otwld.com/
helm repo update
helm install ollama otwld/ollama \
--namespace ollama --create-namespace
チャートはデフォルト設定で Ollama をデプロイし、ClusterIP サービスで公開します。
クイックスタート(GPU + モデル読み込み)
values.yaml を作成します:
ollama:
gpu:
enabled: true
type: nvidia
number: 1
models:
pull:
- mistral
- llama2
その後インストールします:
helm install ollama otwld/ollama \
--namespace ollama --create-namespace \
-f values.yaml
ポッドは NVIDIA GPU を1つ要求し、起動時に2つのモデルをダウンロードします。
更新手順
- 上流の Ollama リリースノートを確認し、破壊的変更がないかチェック。
- 必要に応じて
values.yamlを調整。 - 次のコマンドを実行:
モデル関連の値を変更した場合、チャートは新しい bootstrap Job を作成します。helm repo update helm upgrade ollama otwld/ollama -n ollama -f values.yaml
削除手順
helm delete ollama -n ollama
チャートが作成したすべてのリソース(PVC を除く、persistentVolume.retain を設定していない場合)が削除されます。
次にやること
- README にリンクされた公式 Ollama ドキュメント(API、クライアントライブラリ、LangChain 統合など)を読む。
- リポジトリ内の
values.yamlを確認して、すべてのカスタマイズ可能なオプションを確認。 - TLS を必要とする場合、
gateway.listener.tlsを有効化し、証明書の参照を提供。 - サーバーレス風のスケーリングが必要な場合、
knative.enabledを有効化し、Knative の機能フラグ手順に従う。
上記のすべての情報は、リポジトリの README およびチャートの値から直接取得されており、追加機能は想定されていません。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト