← Portal Domain Docs

Infrastructure

One operator = one isolated deployment = one DC. Everything below the app - clusters, databases, networking - is provisioned by the Infrastructure team; app teams own what runs on top.

The DC model

A DC (data center) is one complete deployment environment, named dcNN-N. The staging fleet (dc02-2, dc22-2, the dc82 labs...) is shared by engineering; each production DC belongs to one operator and runs their whole stack - portal, DNO services, databases - isolated from every other operator. The Portal is reachable per DC (portal-xx.lotusflare.com, or an operator domain such as portal-globe-vpn.globetel.com).

What a DC runs for the Portal

Kubernetes, portal-sized

The minimum mental model that explains everything above:

Who owns what

LayerOwner
AWS accounts, VPCs, RDS, Redis, clustersInfrastructure / DevOps team, via Terraform
Per-DC desired stateenv/<dc>/ trees in ts-polaris (TS services), lfscala (Scala services), and cm (charts + shared config)
The portal app, its chart values, its alertsplatform-portal team
Feature areas inside the PortalTheir teams (DATAP owns Dataflows, DataHub, Reports)

Observability and alerts

Metrics land in the management VictoriaMetrics/Prometheus (prometheus.mgmt.lotusflare.info); logs in VictoriaLogs / OpenSearch. Alert rules live in the observability-gitops repo; the portal team owns three: PortalUnhandledError, PortalBackendRequestError, and TMOPortalCPUUsageHigh.

When one fires, 24x7 Platform Support (HDS) triages first - reads the logs, checks downstream DNO health - and only pages the owning team through OpsGenie when it needs code or config changes. Production-impacting incidents become PI tickets, coordinated in #production_issues. There are no formal on-call rotations on the engineering side.

Open full screen ↗

Next: Business - who buys this and who uses it.