PoPs & Providers
Providers and Points of Presence (PoPs) form the infrastructure map in Polycrate: who operates a resource and where it runs, including fields, relationships, workspace placement, PoP-to-PoP latency, maintenance scope and RBAC.
PoPs & Providers
Providers and Points of Presence (PoPs) represent the physical/logical infrastructure map in Polycrate. They answer the questions:
- Who operates a resource? → Provider
- Where does a resource run? → PoP
Both models are maintained at platform level and are visible to all organizations.
Provider
A provider is a catalog entry for a company that supplies infrastructure, hardware or software — e.g. Hetzner, AWS, OVH, Cisco, VMware. Providers are not credentials and are not defined per workspace; they are a stable, system-wide reference.
| Field | Purpose |
|---|---|
name / display_name |
Display name in the UI |
kind |
infrastructure, hardware, software |
logo |
Logo for lists and detail views |
ccm_block / csi_block |
Optional hint which Polycrate block fits this provider as cloud controller manager or CSI driver |
website / status_page_url |
Links to external resources |
What are providers for?
- Consistent assignment — a PoP in "Hetzner FSN1" shows the same provider entry as another PoP in "Hetzner NBG1".
- Status integration — a provider can be linked to a DataSource
that imports its status page as an RSS feed. This automatically creates notes with
kind=provider-status. - Block recommendation — when a CCM or CSI driver is to be installed on a cluster at a
provider, Polycrate suggests a suitable block based on the
ccm_block/csi_blockfields.
PoP (Point of Presence)
A PoP is a concrete location: a data center, a cloud region, an edge node. PoPs are the basis for workspace placement, latency measurements and maintenance planning.
| Field | Purpose |
|---|---|
name / display_name |
e.g. hetzner-fsn1, "Hetzner Falkenstein 1" |
kind |
datacenter, region, edge |
provider_entity |
FK to provider — must be set |
city, country, latitude, longitude |
Geo coordinates for map and routing |
endpoint_monitor |
Optional: an Endpoint that checks the PoP from outside |
What a PoP enables
- Workspace placement
- A workspace can be given a preferred PoP. When new resources (K8s clusters, LoadBalancers, S3 buckets) are created, they are suggested to be placed in this PoP.
- PoP-to-PoP latency
- When two PoPs have endpoint monitoring active, Polycrate generates the metric
polycrate_latency_pop_to_pop_secondswith labelssource_pop/target_pop. This creates a matrix of all latencies between presences — helpful for routing decisions and troubleshooting. - Maintenance scope
- A Maintenance can be restricted to a PoP. All resources in this PoP then automatically appear in the maintenance scope without having to be selected individually.
- Map display
- The dashboard shows all PoPs as pins on a world map, colored by current state (OK / WARNING / CRITICAL).
Relationships
┌──────────┐ ┌──────┐ ┌─────────────┐
│ Provider │◀──────│ PoP │◀──────│ Workspace │
└──────────┘ └──────┘ └─────────────┘
▲ ▲ ▲
│ optional FK │ optional FK │
│ │ │
┌──────────────┐ ┌──────────┐ ┌──────────────┐
│ DataSource │ │ Maint. │ │ K8s/S3/LB/… │
│ (status-feed)│ │ (scope) │ │ Resources │
└──────────────┘ └──────────┘ └──────────────┘
- Every PoP has exactly one provider.
- A provider can have many PoPs.
- DataSources can point to a provider (for status feeds).
- Maintenances can point to a PoP (to restrict their scope).
- Infrastructure resources (clusters, LoadBalancers, S3, …) can optionally carry a PoP assignment to represent geo context and latencies.
Typical workflow
- Create a provider — e.g. "Hetzner Cloud" as
kind=infrastructure, with logo and status URL. - Status DataSource (optional) — create the RSS feed of the Hetzner status page as a DataSource and link it to the provider. From then on, Hetzner incidents automatically land as notes in the system.
- Create PoPs — one PoP per Hetzner region (FSN1, NBG1, HEL1) with geo coordinates.
- Endpoint monitor per PoP (optional but recommended) — enables latency measurements and visible health state on the map.
- Workspaces & resources — point workspaces/resources to the appropriate PoPs so that dashboards, maintenances and latency metrics group correctly.
RBAC & visibility
Creating and editing providers and PoPs is superuser-only, because they apply system-wide. All authenticated users see the entries in lists and detail views — the information is not sensitive.
Related topics
- DataSources — status feeds per provider.
- Endpoint Monitoring — basis for PoP health and latency.
- Maintenances — how PoPs are used as maintenance scope.
- Metrics — which metrics originate from PoPs.