Skip to content

TOML Configuration

Daniel Lamando edited this page Feb 18, 2022 · 6 revisions

kubernetes-dns-sync accepts a configuration file in TOML format. The configuration specifies how to discover DNS records (sources) and where to push the DNS records (providers). There are four possible sections, each described below.

The configuration file should be named config.toml and is read from the working directory of the process. The Docker image will default to /config.toml unless you change the working directory.

Example files can be found in the configs/ directory.

Top-Level Settings

There are a couple options which you can add at the top of the file. These concern the timing of the synchronization loop:

# How often to start a sync even if nothing has visibly changed from a Source.
# This interval is useful for fixing any accidental changes on the Provider side.
# Defaults to 1 hour, or 1 minute if watching is disabled.
interval_seconds = 60

# Minimum time between event-triggered syncs.
# This helps deduplicate a batch update (a `kubectl apply` of multiple Ingresses).
# Defaults to 2 seconds. A higher value probably makes sense in a noisy cluster.
debounce_seconds = 2

# If you want to disable watching completely,
#   and only depend on `interval_seconds`, set this to true.
# A fresh list of resources will be downloaded from the API Server on every iteration.
# Possibly makes sense on super noisy clusters.
disable_watching = false
Clone this wiki locally