Skip to content

Latest commit

 

History

History
68 lines (56 loc) · 2.85 KB

File metadata and controls

68 lines (56 loc) · 2.85 KB

Activate cloud orchestrator at on-premise server

This page describes how to run cloud orchestrator at on-premise server, which manages docker instances containing the host orchestrator inside.

Note that this is under development, some features may be broken yet. Please let us know if you faced at any bugs.

Try cloud orchestrator

Currently we're hosting docker images and its configuration files in Artifact Registry. Please execute the commands below if you want to download and run the cloud orchestrator.

Also, please choose one location among us, europe, or asia. It's available to download artifacts from any location, but download latency is different based on your location.

DOWNLOAD_LOCATION=us # Choose one among us, europe, or asia.
docker pull $DOWNLOAD_LOCATION-docker.pkg.dev/android-cuttlefish-artifacts/cuttlefish-orchestration/cuttlefish-cloud-orchestrator
wget -O conf.toml https://artifactregistry.googleapis.com/download/v1/projects/android-cuttlefish-artifacts/locations/$DOWNLOAD_LOCATION/repositories/cloud-orchestrator-config/files/on-premise-single-server:main:conf.toml:download?alt=media
docker run \
    -p 8080:8080 \
    -e CONFIG_FILE="/conf.toml" \
    -v $PWD/conf.toml:/conf.toml \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -t $DOWNLOAD_LOCATION-docker.pkg.dev/android-cuttlefish-artifacts/cuttlefish-orchestration/cuttlefish-cloud-orchestrator:latest

To enable TURN server support for WebRTC peer-to-peer connections, configure your TURN server settings in the conf.toml file before starting the cloud orchestrator. See the example below.

[[WebRTC.IceServers]]
URLs = ["turn:localhost:3478"]
Username = "username"
Credential = "credential"

If there's a firewall which blocks accessing cloud orchestrator with HTTP/HTTPS requests, please try using SOCKS5 proxy. Establishing SOCKS5 proxy by creating SSH dynamic port forwarding is available with following command.

ssh -D ${SOCKS5_PORT} -q -C -N ${USERNAME}@${CLOUD_ORCHESTRATOR_IPv4_ADDRESS}

Use cloud orchestrator by cvdr

The config file for cvdr is located at scripts/on-premises/single-server/cvdr.toml. Please follow the steps at cvdr.md, to get started with cvdr.

Manually build and run cloud orchestrator

The config file for cloud orchestrator is at scripts/on-premises/single-server/conf.toml. Please follow the steps at cloud_orchestrator.md, to build and run cloud orchestrator.

Also, you may need to prepare another docker image containing the host orchestrator inside, unlike steps in Try cloud orchestrator. Please follow the docker part of README.md in google/android-cuttlefish github repository, and check if proper docker image exists via docker image list.