Skip to main content

MA Sandbox Ports and Endpoints

Use this reference when connecting to services in your local Michelangelo sandbox. The sandbox maps ports from the K3d cluster to localhost so you can access all services directly from your browser or CLI.

Default (Cadence) mode

The sandbox maps NodePorts from the k3d cluster to localhost for easy access.

ServiceHost portNodePortIn-cluster serviceContainer portPurpose
MySQL330630001mysql3306Storage for Cadence/Temporal
MinIO (Console)909030008minio9090Web UI for MinIO
MinIO (S3 API)909130007minio9091S3-compatible API endpoint
Michelangelo API Server1556630009ma-apiserver15566gRPC API (YARPC)
Envoy (gRPC-web proxy)808130010envoy8081gRPC-web → gRPC proxy for UI/clients
Cadence Frontend (gRPC)783330002cadence7833Cadence SDK/clients
Cadence Frontend (TChannel)793330003cadence7933Cadence internal comms
Cadence Web808830004cadence-web8088Web UI for Cadence

Quick links:

  • MinIO Console: http://localhost:9090
  • Michelangelo API (Envoy gRPC-web): http://localhost:8081
  • Cadence Web UI: http://localhost:8088

Notes:

  • Envoy is applied unless --exclude ui is used. If excluded, the 8081 mapping may be unused.
  • The API server is reachable inside the cluster at michelangelo-apiserver:15566 and externally via localhost:15566.

Temporal mode

When --workflow temporal is used, Cadence services are not exposed. Instead, the script automatically port-forwards Temporal services:

ServiceHost portAccessIn-cluster servicePurpose
Temporal Web8080kubectl port-forward svc/temporaltest-web 8080:8080temporaltest-webWeb UI
Temporal Frontend (gRPC)7233kubectl port-forward svc/temporaltest-frontend 7233:7233temporaltest-frontendTemporal SDK/clients

Quick links:

  • Temporal Web UI: http://localhost:8080

All other sandbox ports (MySQL, MinIO, API Server, Envoy) remain the same as in the Cadence table.

Optional Ray jobs cluster

If you pass --create-compute-cluster, a dedicated k3d cluster for Ray jobs is created with the following host mappings:

ServiceHost portPurpose
Ray Client10001Ray client (ray job submission / client API)
Ray Dashboard8265Ray Dashboard UI

Quick links:

  • Ray Dashboard: http://localhost:8265

Internal (in-cluster) ports reference

These ports are primarily for intra-cluster communication but are listed for reference:

  • michelangelo-controllermgr
    • Controller Manager webhook/manager: 9443
    • Metrics: 8080
    • Health probe: 8081
  • michelangelo-apiserver (service ma-apiserver): 15566
  • minio: 9090 (console), 9091 (S3 API)
  • mysql: 3306
  • cadence: 7833 (gRPC), 7933 (TChannel)
  • cadence-web: 8088
  • envoy: 8081

Troubleshooting port conflicts

If a service fails to start because its port is already in use, find and stop the conflicting process:

# Find what's using a port (e.g., 9090)
lsof -i :9090

# Stop the process if safe to do so
kill <PID>

Then restart your sandbox with ma sandbox delete && ma sandbox create.