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>
47 lines
1.8 KiB
Markdown
47 lines
1.8 KiB
Markdown
# 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/`](../../host/ansible/README.md) 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/`](../../../docs/platform/llm-server/encoding/GNENC-000-DOC_Index.md).
|
|
|
|
## Control-node setup
|
|
|
|
Use the shared virtual environment at the repository root (see
|
|
[`../../host/ansible/README.md`](../../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:
|
|
|
|
```bash
|
|
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.
|