# Command Center VM304 | Item | Value | |------|-------| | VM | MCP · Proxmox VMID **304** | | IP | `10.0.21.33` | | SSH | `root@10.0.21.33` | | Gitea | `http://atc-mgt01.dell-atc.lan:3001/mo/atc-agents` | ## Stack - **ui** — React (Data Platform, Presentation, DQ, Knowledge Chat, S3 Storage, Jupyter link) - **api** — FastAPI + WebSocket + S3 browser API - **dq-api / rag-api** — from `mo/atc-data-quality` - **jupyter** — JupyterLab with S3 credentials - **chromadb, docling, postgres, redis, caddy** ## ObjectScale S3 | Item | Value | |------|-------| | Endpoint | `http://10.0.20.111:9020` | | Namespace | `ns1` | | Default user | `object_admin1` (see ECS deploy.yml) | | UI browse | Command Center → **Object Storage** | ## Jupyter - URL: `http://10.0.21.33/jupyter/` - Token: `JUPYTER_TOKEN` in `.env` - Work dir persisted in Docker volume `jupyter_data` - Preconfigured: `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, `S3_ENDPOINT` Example in notebook: ```python import boto3, os s3 = boto3.client("s3", endpoint_url=os.environ["S3_ENDPOINT"]) print(s3.list_buckets()) ``` ## Gitea sync ```bash ./scripts/sync-gitea.sh ``` ## Elasticsearch firewall (atc-elastic01) Port **9200** opened via firewalld rich rules for lab subnets: - `10.0.21.0/24` (Command Center, lakehouse, kafka, …) - `10.0.20.0/24` (ObjectScale, db01, …) Kibana **5601** was already public on elastic01. `elastic` password: set in `/opt/atc-agents/.env` as `ELASTIC_PASSWORD` (not in git). ## Elasticsearch / Kibana login | System | Username | Password | |--------|----------|----------| | Elasticsearch API | `admin` or `elastic` | Lab password (see `.env` `ELASTIC_PASSWORD`) | | Kibana UI | `admin` or `elastic` | Same | | SSH atc-elastic01 | `root` or `admin` | Lab password | Command Center uses `ELASTIC_USER=admin` in `/opt/atc-agents/.env`.