Built the Sentinel Tab
This commit is contained in:
78
infrastructure/ops_control_plane/README.md
Normal file
78
infrastructure/ops_control_plane/README.md
Normal file
@@ -0,0 +1,78 @@
|
||||
# Desineuron Ops Control Plane
|
||||
|
||||
Internal Linux-hosted control surface for:
|
||||
|
||||
- AWS machine lifecycle
|
||||
- S3-backed model ingest with generated manifests and checksums
|
||||
- model hydration from S3
|
||||
- runtime and estimated cost tracking
|
||||
- ingress route management
|
||||
- session logging and CSV export
|
||||
|
||||
Main deployment target:
|
||||
|
||||
- Linux box at `192.168.1.4`
|
||||
|
||||
Primary public route:
|
||||
|
||||
- `ops.desineuron.in`
|
||||
|
||||
Canonical S3 bucket:
|
||||
|
||||
- `desineuron-ops-control-plane-819079556187-us-east-1`
|
||||
|
||||
Related AWS nodes:
|
||||
|
||||
- ingress: `i-094df09acafb72494`
|
||||
- current GPU worker: `i-0e4eab5fe67cf9abe`
|
||||
|
||||
Core runtime:
|
||||
|
||||
- FastAPI web + API surface
|
||||
- background worker
|
||||
- PostgreSQL
|
||||
- Docker Compose
|
||||
- systemd wrapper on Linux
|
||||
|
||||
Key files:
|
||||
|
||||
- `docker-compose.yml`
|
||||
- `.env.example`
|
||||
- `app/ops_control_plane/main.py`
|
||||
- `app/ops_control_plane/worker.py`
|
||||
- `app/ops_control_plane/cli.py`
|
||||
- `manage_desineuron_routes.py`
|
||||
- `install_linux_ops_control_plane.sh`
|
||||
|
||||
Runtime paths on Linux:
|
||||
|
||||
- stack root: `/opt/desineuron-ops-control-plane`
|
||||
- env file: `/opt/desineuron-ops-control-plane/.env`
|
||||
- exports: `/opt/desineuron-ops-control-plane/exports`
|
||||
- state: `/opt/desineuron-ops-control-plane/state`
|
||||
|
||||
Access:
|
||||
|
||||
- login route: `https://ops.desineuron.in/login`
|
||||
- operator logins are provisioned as email-style usernames
|
||||
- admin password is stored in the protected `.env` file on Linux and should be retrieved locally rather than copied into repo notes
|
||||
|
||||
Validated live behaviors:
|
||||
|
||||
- market pricing API returns live on-demand and spot views
|
||||
- session and cost tracking persist in PostgreSQL and export to CSV
|
||||
- spot launch failures are recorded cleanly instead of crashing the UI
|
||||
- on-demand GPU launch was validated with a `g6.xlarge` lifecycle test
|
||||
- managed ingress route upsert/delete was validated through the helper on the `t4g.micro` ingress
|
||||
- model ingest from Linux model library to S3 was validated with `ops-smoke-model`, including manifest generation and catalog registration
|
||||
|
||||
Operator retrieval commands:
|
||||
|
||||
- admin password:
|
||||
- `sudo sed -n 's/^OPS_ADMIN_PASSWORD=//p' /opt/desineuron-ops-control-plane/.env`
|
||||
- latest CSV export:
|
||||
- `ls -lah /opt/desineuron-ops-control-plane/exports`
|
||||
|
||||
Installer safety note:
|
||||
|
||||
- `install_linux_ops_control_plane.sh` intentionally excludes runtime directories (`data/`, `exports/`, `logs/`, `state/`, `.env`) from code sync so redeploys do not corrupt Postgres state or overwrite secrets
|
||||
Reference in New Issue
Block a user