Generic coordination service
Coordination servicecoordination-service
Vendor-neutral coordination service. Use when the real product is not in the catalogue; every rule for this kind still applies.
- Provider
- default
- Category
- Operations
- Official docs
- not recorded
- Generic?
- Vendor-neutral: the kind itself
| property | type | values | required | default |
|---|---|---|---|---|
| consensus | enum | none | raft | paxos | zab | no | none |
| managed | boolean | — | no | false |
| nodes | integer | — | no | — |
| replicated | boolean | — | no | false |
| role | enum | metadata | lock | discovery | placement | sharding | leader-election | config | yes | — |
Every rule whose selector covers this component's kind or its category. Whether a rule fires depends on the design: its properties, its edges and its groups.
shared-dependency-without-redundancy
The design requires redundant discovery, but this DNS or coordination service, which everything depends on, runs on a single provider or a single replica. Its failure is the whole system's failure.
- — all of these hold:
- — the design requirement `availability.discoveryRedundant` is true
- — any of these hold:
- — the node's `redundantProviders` is false
- — the node's `replicated` is false
stateful-engine-pinned-to-single-zone
A matching engine, coordination service or event store living in exactly one availability zone, with no failover and no replication, is lost with that zone. Everything that depends on it stops with it.
- — all of these hold:
- — the node sits inside exactly 1 availability-zone group
- — any of these hold:
- — the node's `failover` is "none"
- — the node's `replicated` is false
- — the node's `replication` is "none"
nodes:
- { id: "coordination-service", component: "coordination-service" }Microservices Enginealibaba-mseAWS Cloud Mapaws-cloud-mapAzure Arcazure-arcAzure Device Registryazure-device-registryDurable Objectscloudflare-durable-objectsApache Helixapache-helixConsulconsuletcdetcdEurekaeurekaNacosnacosOxiaoxiaApache ZooKeeperzookeeperService Directorygoogle-service-directoryEndpointsk8s-endpointsOpenStack Blazaropenstack-blazarOpenStack Cyborgopenstack-cyborgOpenStack Placementopenstack-placement
# yaml-language-server: $schema=../../schema/component.schema.json # The vendor-neutral coordination service: the kind itself, with no product behind it. It sets no # defaults and adds no properties, so every required kind property stays required on the node. schemaVersion: "1" type: "component" id: "coordination-service" kind: "coordination-service" provider: "default"