Files
infrastructure/llm-server/encoding/ansible/README.md
T
spektr ba7d829410 Encoding: Ansible-Projekt und Grundzustand für gn-encoding eingerichtet und verifiziert.
llm-server/encoding/ansible/ verwaltet mit video-encoding.yml und der Rolle
video_encoding den CPU-Only-Grundzustand des gesperrten Kontos gn-encoding
(UID/GID 982): Konto-Identität und Passwortsperre, subordinate ID-Bereiche,
Verzeichnisstruktur, Quadlet-Verzeichnis, Linger, getrennter rootless
Podman-Store sowie verwehrter GPU-Zugriff (keine render/video-Gruppe, kein
Lesezugriff auf /dev/kfd oder DRM-Render-Nodes). Ohne beschlossene
Encoder-Entscheidungen stellt die Rolle sicher, dass kein Workload definiert
ist. Check-Mode und zwei Läufe auf ghostnet-ki: jeweils ok=30 changed=0
failed=0. Preflight, host.yml (2x ok=55 changed=0) und ROCm-Probe
(ok=33 changed=0) nach der Projekt-Aufteilung erneut bestanden.
GNENC-000/001, GNAI-000 und GNAI-013 aktualisiert.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
2026-10-19 14:42:14 +02:00

1.8 KiB

Video encoding Ansible control project

This directory contains the reproducible control project for the CPU-based video encoding workload on ghostnet-ki. It belongs to the encoding/ task area of the LLM-Server host root; the shared host baseline lives in ../../host/ansible/ and must be applied first.

playbooks/video-encoding.yml applies the video_encoding role: it verifies the locked gn-encoding account, enforces CPU-only device isolation, manages the encoding directories and proves the separate rootless Podman store. No encoder image, Quadlet, timer or schedule is defined yet; those are open decisions in ../../../docs/platform/llm-server/encoding/.

Control-node setup

Use the shared virtual environment at the repository root (see ../../host/ansible/README.md). The ansible-deploy private key stays outside this repository: ~/.ssh/id_ed25519_ghostnet_ai_ansible_deploy.

Apply and verify

Run the commands from this directory:

cd llm-server/encoding/ansible
../../../.venv/bin/ansible-playbook \
  --inventory inventories/host/hosts.yml \
  playbooks/video-encoding.yml \
  --syntax-check

../../../.venv/bin/ansible-playbook \
  --inventory inventories/host/hosts.yml \
  playbooks/video-encoding.yml \
  --check --diff \
  --private-key ~/.ssh/id_ed25519_ghostnet_ai_ansible_deploy

../../../.venv/bin/ansible-playbook \
  --inventory inventories/host/hosts.yml \
  playbooks/video-encoding.yml \
  --private-key ~/.ssh/id_ed25519_ghostnet_ai_ansible_deploy

Run the final command a second time. The second recap must report changed=0 and failed=0; otherwise the role has not demonstrated convergence.