乐闻世界logo
搜索文章和话题

Ollama 在生产环境中的部署和最佳实践是什么?

2月19日 19:50

Ollama 在生产环境部署时需要考虑以下关键方面:

1. 系统要求:

硬件要求:

  • CPU:支持 AVX2 指令集的现代处理器
  • 内存:至少 8GB RAM,推荐 16GB+
  • 存储:SSD 存储,每个模型 4-20GB
  • GPU(可选):NVIDIA GPU(CUDA 11.0+)或 Apple Silicon(M1/M2/M3)

操作系统:

  • Linux(推荐 Ubuntu 20.04+)
  • macOS 11+
  • Windows 10/11

2. 部署架构:

单机部署:

bash
# 安装并启动服务 ollama serve # 默认监听 0.0.0.0:11434

Docker 部署:

dockerfile
FROM ollama/ollama # 复制自定义模型 COPY my-model.gguf /root/.ollama/models/ # 启动服务 CMD ["ollama", "serve"]
bash
# 运行容器 docker run -d -v ollama:/root/.ollama -p 11434:11434 --gpus all ollama/ollama

3. 负载均衡:

使用 Nginx 作为反向代理:

nginx
upstream ollama_backend { server 192.168.1.10:11434; server 192.168.1.11:11434; server 192.168.1.12:11434; } server { listen 80; server_name ollama.example.com; location / { proxy_pass http://ollama_backend; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }

4. 监控和日志:

健康检查:

bash
curl http://localhost:11434/api/tags

日志管理:

bash
# 查看实时日志 ollama logs -f # 配置日志级别 export OLLAMA_LOG_LEVEL=debug

5. 安全配置:

API 认证: 使用反向代理添加认证:

nginx
location /api/ { auth_basic "Restricted"; auth_basic_user_file /etc/nginx/.htpasswd; proxy_pass http://localhost:11434/api/; }

防火墙配置:

bash
# 只允许特定 IP 访问 ufw allow from 192.168.1.0/24 to any port 11434

6. 性能优化:

模型预加载:

bash
# 启动时预加载模型 ollama run llama3.1 &

并发处理:

dockerfile
# Modelfile 中设置 PARAMETER num_parallel 4

7. 备份和恢复:

bash
# 备份模型 tar -czf ollama-backup.tar.gz ~/.ollama/ # 恢复模型 tar -xzf ollama-backup.tar.gz -C ~/
标签:Ollama