Files
infra-phytron/ansible/group_vars/phy_srv_gpu01.yml
T
CubelaPetarandClaude Opus 4.8 b6b242196d Add LLM compose stack for phy-srv-gpu01 (not deployed yet)
Follows the homelab pattern: ironicbadger.docker_compose_generator v2
renders services/<host>/NN-<stack>/compose.yml templates into
~/docker/compose.yaml on the host.

- 01-vllm: chat model, fixed --gpu-memory-utilization
- 02-embeddings: second vLLM instance (--task embed) rather than a
  separate toolchain, so SM120 support only has to be solved once
- 03-openwebui: Open WebUI + pgvector (not chroma — corpus size)
- 99-network: shared bridge; leading comment keeps networks: top-level
- pin docker_compose_generator to 2.0.1 — galaxy tags mix v1/v2 formats
- group_vars: stack config incl. LDAP placeholders still to be filled

The role only writes the compose file; starting the stack stays manual.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-03 14:53:59 +02:00

42 lines
1.4 KiB
YAML

---
# overrides of group_vars/all.yml
hostname: phy-srv-gpu01
# geerlingguy.docker
docker_users:
- "{{ main_username }}"
# ironicbadger.docker_compose_generator
# services/<docker_compose_hostname>/NN-<stack>/compose.yml next to run.yml
appdata_path: "/home/{{ main_username }}/appdata"
docker_compose_generator_output_path: "/home/{{ main_username }}/docker/"
docker_compose_hostname: phy-srv-gpu01
docker_compose_generator_uid: "{{ main_uid }}"
docker_compose_generator_gid: "{{ main_gid }}"
# --- LLM stack -------------------------------------------------------------
llm_dns_name: chat.phytron.local
# ⚠️ TODO: pin to a build verified on SM120 (Blackwell) before the first deploy
vllm_image: vllm/vllm-openai:latest
vllm_model: Qwen/Qwen3-32B-FP8
vllm_served_model_name: qwen3-32b
vllm_gpu_memory_utilization: "0.80"
vllm_max_model_len: "32768"
embedding_model: BAAI/bge-m3
embedding_model_name: bge-m3
embeddings_gpu_memory_utilization: "0.10"
openwebui_image: ghcr.io/open-webui/open-webui:main
pgvector_image: pgvector/pgvector:pg16
# --- AD/LDAP ---------------------------------------------------------------
# ⚠️ TODO: real bind DN / base DN from the customer; group llm_users is agreed
ldap_server_host: dc.phytron.local
ldap_server_port: "389"
ldap_bind_dn: "CN=svc-llm,OU=Service,DC=phytron,DC=local"
ldap_search_base: "DC=phytron,DC=local"
ldap_search_filter: "(&(objectClass=user)(memberOf=CN=llm_users,OU=Groups,DC=phytron,DC=local))"