Trace install tas - Ollama
Apparence
Trace install tas - Ollama
Rôle
API locale de modèles LLM avec deux instances distinctes :
- une instance AMD/ROCm sur la Radeon RX 7900
- une instance NVIDIA/CUDA sur la GeForce RTX 3070
Accès
Instance AMD / ROCm
- Local : http://10.8.0.1:11434
- Depuis le terminal local : `OLLAMA_HOST=http://127.0.0.1:11434`
- Public : https://lololand.hopto.org:25434
Instance NVIDIA / CUDA
- Local : http://10.8.0.1:11435
- Depuis le terminal local : `OLLAMA_HOST=http://127.0.0.1:11435`
- Pas d'exposition publique dédiée documentée à ce stade
Ports
- 11434/tcp : serveur Ollama AMD / ROCm
- 11435/tcp : serveur Ollama NVIDIA / CUDA
- 25434/tcp : proxy public Caddy vers l'instance AMD/ROCm, protégé par basicauth
Exécution / runtime
AMD / ROCm
- Service systemd user : `/home/loic/.config/systemd/user/ollama.service`
- Conteneur : `ollama_roc`
- Image : `docker.io/ollama/ollama:rocm`
- Devices : `/dev/kfd`, `/dev/dri`
NVIDIA / CUDA
- Service systemd user : `/home/loic/.config/systemd/user/ollama-nvidia.service`
- Conteneur : `ollama_nv`
- Image : `docker.io/ollama/ollama:latest`
- Intégration GPU : Podman + NVIDIA Container Toolkit + CDI
- Device CDI utilisé : `nvidia.com/gpu=all`
Chemins de configuration
- `/home/loic/.config/systemd/user/ollama.service`
- `/home/loic/.config/systemd/user/ollama-nvidia.service`
- `/etc/caddy/Caddyfile`
- `/home/loic/.bashrc` (alias CLI)
- `/home/loic/upgrade/ollama-dual-gpu-plan.md`
Volumes / persistance
- Stockage modèles partagé entre les deux instances : `/media/loic/nem/ollama`
- Montage conteneur : `/media/loic/nem/ollama -> /root/.ollama`
Dépendances
- Caddy 25434 -> 11434 avec basicauth pour l'instance AMD/ROCm
- NVIDIA driver 580 open pour la RTX 3070
- NVIDIA Container Toolkit
- CDI NVIDIA généré dans `/var/run/cdi/nvidia.yaml`
- clients comme Open WebUI
Remarques
- L'instance NVIDIA n'a fonctionné correctement qu'après mise en place de NVIDIA Container Toolkit et CDI.
- Le stockage de modèles est partagé entre les deux serveurs pour éviter les doublons disque.
- Par prudence, éviter les `ollama pull` simultanés sur les deux instances.
- Faire préférentiellement les opérations d'écriture (`pull`, `rm`, création de modèles) sur une seule instance à la fois.
- Le proxy public documenté actuellement cible uniquement l'instance AMD/ROCm.
Utilisation CLI
Sélection explicite du serveur
Pour cibler un serveur particulier depuis le terminal local, utiliser `OLLAMA_HOST`.
Exemples :
OLLAMA_HOST=http://127.0.0.1:11434 ollama list OLLAMA_HOST=http://127.0.0.1:11434 ollama run qwen3 OLLAMA_HOST=http://127.0.0.1:11435 ollama list OLLAMA_HOST=http://127.0.0.1:11435 ollama run qwen3
Alias shell
Alias ajoutés dans `/home/loic/.bashrc` :
alias ollama-amd='OLLAMA_HOST=http://127.0.0.1:11434 ollama' alias ollama-nvidia='OLLAMA_HOST=http://127.0.0.1:11435 ollama'
Exemples :
ollama-amd list ollama-amd run qwen3 ollama-nvidia list ollama-nvidia run qwen3
Exemples de tests
Test basique de disponibilité
curl http://127.0.0.1:11434/api/tags curl http://127.0.0.1:11435/api/tags
Questions de test
OLLAMA_HOST=http://127.0.0.1:11434 ollama run qwen3 "Donne-moi un résumé en 3 phrases de la différence entre ROCm et CUDA." OLLAMA_HOST=http://127.0.0.1:11435 ollama run qwen3 "Donne-moi un résumé en 3 phrases de la différence entre ROCm et CUDA."
OLLAMA_HOST=http://127.0.0.1:11434 ollama run qwen3 "Écris un haïku sur les GPU." OLLAMA_HOST=http://127.0.0.1:11435 ollama run qwen3 "Écris un haïku sur les GPU."
Vérifier le GPU utilisé côté NVIDIA
Les logs de `ollama-nvidia.service` doivent montrer une détection CUDA du type :
- `library=CUDA`
- `description="NVIDIA GeForce RTX 3070"`
Supervision / diagnostic
État des services
systemctl --user status ollama.service systemctl --user status ollama-nvidia.service
Journaux
journalctl --user -u ollama.service -n 100 --no-pager journalctl --user -u ollama-nvidia.service -n 100 --no-pager
Vérifier la carte NVIDIA
nvidia-smi watch -n 1 nvidia-smi
Vérifier que CDI voit le GPU
nvidia-ctk cdi list
Conteneurs actifs
podman ps | grep -E 'ollama_roc|ollama_nv'
Contrôler la réponse API
curl http://127.0.0.1:11434/api/tags curl http://127.0.0.1:11435/api/tags
Données / emplacements à sauvegarder
- `/media/loic/nem/ollama`
- `/home/loic/.config/systemd/user/ollama.service`
- `/home/loic/.config/systemd/user/ollama-nvidia.service`
- `/etc/caddy/Caddyfile`
- `/home/loic/.bashrc`
Sauvegarde
- Sauvegarder le répertoire de modèles partagé `/media/loic/nem/ollama`.
- Sauvegarder les deux services systemd user Ollama.
- Sauvegarder la configuration Caddy liée à `25434`.
Restauration
- Restaurer `/media/loic/nem/ollama`.
- Restaurer les fichiers systemd user `ollama.service` et `ollama-nvidia.service`.
- Recharger systemd user puis relancer les services :
systemctl --user daemon-reload systemctl --user restart ollama.service systemctl --user restart ollama-nvidia.service
- Vérifier ensuite `curl http://127.0.0.1:11434/api/tags` et `curl http://127.0.0.1:11435/api/tags`.
Maintenance documentaire
Lors d'un changement de port, de proxy public, de stockage des modèles, de pilote GPU, de toolkit NVIDIA, d'alias shell ou d'architecture AMD/NVIDIA, mettre à jour cette page et la page centrale Trace install tas.
Trace documentaire
Cette page fait partie de Trace install tas.