otwld/ollama-helm
Helm chart for Ollama on Kubernetes
是什麼
ollama-helm 是一個 Helm 圖表,可輕鬆在 Kubernetes 集群上執行 Ollama LLM 伺服器。它打包了所有 Kubernetes 物件(Deployment/StatefulSet、Service、Ingress、可選的 Knative Service、PVC 等),並提供一組可設定的值,讓您能以僅 CPU 或 GPU 加速方式啟動 Ollama,預載模型,透過 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 時,圖表會建立 Knative Service 而非傳統 Deployment,並建立一個獨立的 bootstrap Job 用於模型下載/建構。 |
| 自動伸縮 | 支援標準 HPA 欄位(autoscaling.enabled、minReplicas、maxReplicas、targetCPUUtilizationPercentage)。 |
| 持久化 | persistentVolume.enabled 建立 PVC;您也可以透過 persistentVolume.existingClaim 連接現有宣告。 |
| 細粒度 Pod 控制 | 支援 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
Pod 將請求一個 NVIDIA GPU,並在啟動時下載兩個模型。
更新
- 檢查上游 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 和圖表值;未假設任何額外功能。
相關
- 專案
- 專案
- 專案
- 專案
- 專案