AWS Cloud Map

Managed service registry with API and DNS-based discovery.

Provider
aws
Category
Operations
Properties · 2 set by this component
propertytypevaluesrequiredkind defaultthis component
consensusenumnone | raft | paxos | zabnononeinherited
discoveryMethod · component propertyenumapi | dns-private | dns-publicno—inherited
healthCheckProvider · component propertyenumroute53 | third-partyno—inherited
healthChecking · component propertyboolean—nofalseinherited
managedboolean—nofalse▸ true
nodesinteger—no—inherited
replicatedboolean—nofalseinherited
roleenummetadata | lock | discovery | placement | sharding | leader-election | configyes—▸ discovery
servesOnlyHealthyInstances · component propertyboolean—notrueinherited
Rules that apply · 2

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"
Use it in a design
nodes:
  - { id: "cloud-map", component: "aws-cloud-map" }
Other Coordination service products · 17
Source
# yaml-language-server: $schema=../../schema/component.schema.json
# AWS Cloud Map: fully managed service registry mapping logical names to backend resources.
# "What Is AWS Cloud Map?": a namespace fixes the discovery method (DiscoverInstances API, private DNS or
# public DNS), health checking is optional per service, and only healthy instances are returned when it is on.
schemaVersion: "1"
type: "component"
id: "aws-cloud-map"
kind: "coordination-service"
provider: "aws"
docs: "https://docs.aws.amazon.com/cloud-map/latest/dg/what-is-cloud-map.html"
defaults:
  managed: true
  role: "discovery"
properties:
  discoveryMethod:
    type: "enum"
    values: ["api", "dns-private", "dns-public"]
  healthChecking:
    type: "boolean"
    default: false
  servesOnlyHealthyInstances:
    type: "boolean"
    default: true
  healthCheckProvider:
    type: "enum"
    values: ["route53", "third-party"]

The same page as markdown, for an agent: /catalogue/components/aws-cloud-map.md