draft: Add fleet inventory.yml appendix to Ansible WebUI PRD
This commit is contained in:
@@ -314,3 +314,151 @@ volumes:
|
||||
---
|
||||
|
||||
*End of PRD — Iron Legion Labs*
|
||||
|
||||
---
|
||||
|
||||
## Appendix: Iron Legion Fleet Inventory (`inventory.yml`)
|
||||
|
||||
This inventory file is the authoritative source for Ansible targeting across the fleet. It is structured for **Semaphore UI**, **AWX**, or **command-line Ansible** consumption.
|
||||
|
||||
**File:** `inventories/iron-legion.yml`
|
||||
|
||||
```yaml
|
||||
# Iron Legion Fleet Inventory
|
||||
# Generated: 2026-06-03
|
||||
# Source: fleet documentation + live SSH config
|
||||
|
||||
---
|
||||
all:
|
||||
children:
|
||||
fleet_nodes:
|
||||
children:
|
||||
core_services:
|
||||
hosts:
|
||||
mk7:
|
||||
ansible_host: 192.168.7.7
|
||||
ansible_user: jarvis
|
||||
node_role: swarm_manager
|
||||
docker_host: true
|
||||
|
||||
nebuchadnezzar:
|
||||
ansible_host: 192.168.192.24
|
||||
ansible_user: jarvis
|
||||
node_role: docker_host
|
||||
docker_host: true
|
||||
|
||||
pve_workers:
|
||||
hosts:
|
||||
mk33:
|
||||
ansible_host: 192.168.7.33
|
||||
ansible_user: root
|
||||
node_role: pve_worker
|
||||
pve_api_url: "https://192.168.7.33:8006/"
|
||||
|
||||
mk34:
|
||||
ansible_host: 192.168.7.34
|
||||
ansible_user: root
|
||||
node_role: pve_worker
|
||||
pve_api_url: "https://192.168.7.34:8006/"
|
||||
|
||||
mk39:
|
||||
ansible_host: 192.168.7.39
|
||||
ansible_user: root
|
||||
node_role: pve_worker
|
||||
pve_api_url: "https://192.168.7.39:8006/"
|
||||
|
||||
physical_agents:
|
||||
hosts:
|
||||
artemis:
|
||||
ansible_host: 192.168.15.182
|
||||
ansible_user: jarvis
|
||||
node_role: discord_gateway
|
||||
hermes_agent: true
|
||||
|
||||
mark44:
|
||||
ansible_host: 192.168.5.214
|
||||
ansible_user: jarvis
|
||||
node_role: gpu_host
|
||||
gpu: true
|
||||
|
||||
mark5:
|
||||
ansible_host: 192.168.6.5
|
||||
ansible_user: jarvis
|
||||
node_role: tbd
|
||||
|
||||
mk42:
|
||||
ansible_host: 192.168.0.196
|
||||
ansible_user: jarvis
|
||||
node_role: pve_worker
|
||||
|
||||
infrastructure:
|
||||
hosts:
|
||||
shield:
|
||||
ansible_host: 192.168.27.205
|
||||
ansible_user: jarvis
|
||||
node_role: pxe_server
|
||||
|
||||
igor:
|
||||
ansible_host: 192.168.10.211
|
||||
ansible_user: jarvis
|
||||
node_role: nas
|
||||
|
||||
tailscale_fallback:
|
||||
hosts:
|
||||
ts-mk7:
|
||||
ansible_host: 100.66.70.51
|
||||
ansible_user: jarvis
|
||||
ts-mk33:
|
||||
ansible_host: 100.125.155.41
|
||||
ansible_user: jarvis
|
||||
ts-mk34:
|
||||
ansible_host: 100.94.190.43
|
||||
ansible_user: jarvis
|
||||
|
||||
docker_hosts:
|
||||
children:
|
||||
swarm_manager:
|
||||
hosts:
|
||||
mk7:
|
||||
standalone_docker:
|
||||
hosts:
|
||||
nebuchadnezzar:
|
||||
|
||||
vars:
|
||||
ansible_ssh_private_key_file: "~/.ssh/artemis_key"
|
||||
ansible_python_interpreter: /usr/bin/python3
|
||||
ansible_connection: ssh
|
||||
ansible_ssh_common_args: ">-
|
||||
-o StrictHostKeyChecking=accept-new
|
||||
-o ConnectTimeout=5"
|
||||
fleet_domain: ai.home
|
||||
|
||||
pve_workers:
|
||||
vars:
|
||||
ansible_ssh_private_key_file: "~/.ssh/vscode_ed25519"
|
||||
ansible_become: true
|
||||
ansible_become_user: root
|
||||
|
||||
core_services:
|
||||
vars:
|
||||
ansible_become: true
|
||||
ansible_become_user: root
|
||||
ansible_ssh_private_key_file: "~/.ssh/artemis_key"
|
||||
|
||||
physical_agents:
|
||||
vars:
|
||||
ansible_become: false
|
||||
ansible_ssh_private_key_file: "~/.ssh/artemis_key"
|
||||
```
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
# Test reachability
|
||||
ansible all -m ping -i inventories/iron-legion.yml
|
||||
|
||||
# Target PVE workers only
|
||||
ansible pve_workers -m setup -i inventories/iron-legion.yml
|
||||
|
||||
# Check Docker services on swarm manager
|
||||
ansible swarm_manager -a "docker service ls" -i inventories/iron-legion.yml
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user