Krieger (GPU host)
The home GPU machine — Windows, on the tailnet as krieger
(100.90.162.24). Normally asleep; woken on demand rather than left running
24/7.
What it runs
Section titled “What it runs”- Ollama — local LLM inference. Models currently proxied through LiteLLM include Qwen 2.5 7B, a Foundation-Sec 8B fine-tune, Moondream, and Qwen 3.5 9B.
- ComfyUI — image generation.
- Presumably a transcription service too, given the
transcribe-wake-proxydescribed below — worth confirming/documenting what specifically runs there.
How it gets woken
Section titled “How it gets woken”Lana never talks to Krieger directly. Each service has its own small
“wake-proxy” container on Lana (ollama-wake-proxy, comfyui-wake-proxy,
transcribe-wake-proxy, all part of the litellm stack in vps-infra)
that:
- Receives the request meant for Krieger.
- Sends a Wake-on-LAN packet via Home Assistant if Krieger looks asleep.
- Waits for the target service (Ollama, ComfyUI, etc.) to come up.
- Forwards the original request over Tailscale.
This is why LiteLLM’s ollama_chat/* models can have a longer first-request
latency — that’s Krieger waking up, not a slow model.
There’s also a separate, more direct Wake-on-LAN call from Home Assistant
that predates the wake-proxies and may power an in-app “wake now” button
rather than the transparent per-request wake above. Worth checking
litellm/ollama-wake-proxy and litellm/providers/ollama-provider.js in
vps-infra/flowviz before assuming which code path is actually live.
Gaps to fill in
Section titled “Gaps to fill in”This page is a starting point, not exhaustive — worth adding:
- Hardware specs (GPU model, RAM)
- Exactly what the transcription service is and how it’s invoked
- How sleep/wake is triggered on the Windows side (Home Assistant integration, WoL config)