# hashicorp/serf

Service orchestration and management tool.

Repository: https://github.com/hashicorp/serf
Canonical: https://ross.abutalabs.com/products/serf
Homepage: https://github.com/hashicorp/serf/blob/master/docs/index.html.markdown
Language: Go
License: MPL-2.0
License Family: copyleft
Last push: 2026-08-04T19:52:55+00:00

## Health v2 (maintenance only)
Score: 84/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 96, release rhythm 60, longevity 100
- inputs: {"age_days": 4719, "days_push": 29, "days_rel": 56, "gap_med": 540, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 6069, forks 608 (observed 2026-08-28T04:09:34.758168+00:00)

## What it is
Serf is a decentralized service discovery and orchestration tool from HashiCorp that uses an efficient gossip protocol to manage cluster membership. It is lightweight, masterless, and fault tolerant, with an event system for propagating deploys and configuration changes across nodes.

## Use cases
- discover web servers and automatically add them to a load balancer
- organize memcached or redis nodes into a cluster
- trigger web deploys via an event system
- propagate configuration changes to relevant nodes
- update DNS records as cluster membership changes
- detect node failures and notify the rest of the cluster

## When to choose
- you need lightweight, masterless cluster membership and failure detection
- you want to propagate events like deploys or config changes across many nodes
- you need service discovery without a single point of failure

## When to avoid
- you need full key-value storage or strong consistency (use Consul instead)
- you need complex scheduling or container orchestration (use Kubernetes or Nomad)
- your cluster is small enough that static configuration suffices

## Facets
- artifact type: service
- maturity: maintenance
- function: service-discovery, message-queue, monitoring, deployment, microservices
- domain: microservices, infrastructure-as-code, self-hosted
- platform: windows, go, cross-platform
- tags: gossip-protocol, cluster-management, masterless, failure-detection, event-propagation, orchestration, devops, linux, macos

## Member repositories
- hashicorp/serf (main) score 84

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:09:34.758168+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:48:34.394003+00:00, confidence not recorded.
  - readme: https://github.com/hashicorp/serf (fetched 2026-08-28T04:09:34.758168+00:00, sha dab429f3a74d)
  - homepage: https://github.com/hashicorp/serf/blob/master/docs/index.html.markdown (fetched 2026-08-29T08:45:01.916560+00:00, sha 4bcfad145c07)
- Data as of 2026-08-30T08:39:29.467469+00:00.
