Home

confd

Confd is an open-source configuration management tool that keeps local configuration files in sync with data stored in centralized key-value stores such as etcd and Consul. It renders configuration files from templates using values pulled from the backend and updates the files when the backend data changes. Confd is designed for dynamic environments where services frequently reconfigure at runtime, such as containerized or cloud deployments.

Confd operates as a small daemon. It reads a set of TOML configuration files located in a

Backends supported include etcd and Consul, enabling templates to pull values from these centralized stores. Deployment

Confd originated in the ecosystem around CoreOS and early container-oriented deployments and remains in use in

conf.d
directory,
with
each
entry
describing
a
single
template
to
process.
Each
template
specifies
a
source
template
file,
a
destination
path,
and
the
keys
to
fetch
from
the
backend.
Templates
use
Go's
template
syntax
with
helper
functions
to
retrieve
values.
When
confd
detects
a
change
in
the
configured
keys,
it
re-renders
the
template
and
writes
the
updated
content
to
the
destination
file.
It
can
also
trigger
a
reload
command
for
the
associated
service
after
writing.
typically
places
templates
under
/etc/confd/templates
and
the
corresponding
conf.d
definitions
under
/etc/confd/conf.d.
some
infrastructure
stacks
to
decouple
application
configuration
from
image
pipelines.
It
provides
a
lightweight
mechanism
for
dynamic
configuration
without
requiring
more
heavyweight
configuration
management
systems.