Skip to content

Topology Service Rest

The Topology Service implements a limited set of functions responsible for providing essential features for Cells to operate.

Deployment and service configuration is managed in a separate topology-service-deployer repository.

Deployment configuration including scaling is managed using a Runway service manifest in the topology-service-deployer repository (see runway.yml in .runway/*).

Configuration for the service is managed in config.toml, which is provided as an environment variable as part of deployment in the topology-service-deployer repository (see the CONFIG_TOML environment variable defined in env-*.yml in .runway/*). Details on the configuration syntax found here.

Topology service is a Go container deployed using Runway. It sits in its own GCP project and responds to router requests for information pertaining to Cells.

More detailed documentation found here.

Topology service is deployed using Runway and its scaling is handled by Cloud Run and configured as part of Runway deployment (doc).

Topology service is deployed to multiple regions. In future, when storing data, the storage system (Cloud Spanner) will also be configured in multiple regions.

Currently, no customer data is stored in Cells or in the topology service and is available as a public endpoint.

Topology service is deployed using Runway, which supports observability by integrating with the monitoring stack. You can see the metrics via the general Runway Service Metrics dashboard.