Skip to content

bosh-dns job from bosh-dns/1.37.5

Github source: 1cf6f5bc or master branch

Properties

address

Address in which the DNS server will bind

Default
169.254.0.2

addresses_files_glob

Glob for any files to look for extra addresses to listen on

Default
/var/vcap/jobs/*/dns/addresses.json

alias_files_glob

Glob for any files to look for DNS alias information

Default
/var/vcap/jobs/*/dns/aliases.json

aliased_address

Address that will be added by default

Default
169.254.0.2

aliases

Hash of domain key to target domains array for aliased DNS lookups

Example
cc.cf.consul:
- one
- two
- '...'
consul.internal:
- 127.0.0.1
third.internal:
- four

api

client

tls

Client-side mutual TLS configuration for the API

port

Port that the DNS servers debug API will listen on

Default
53080

server

tls

Server-side mutual TLS configuration for the API

cache

enabled

When enabled bosh-dns will cache recursor responses using the default coredns cache plugin

Default
false

excluded_recursors

A list of recursor addresses which should not be used by the DNS server

Default
[]

handlers

Array of handler configurations

Default
[]
Example
- cache:
    enabled: true
  domain: endpoint.local.
  source:
    type: http
    url: http://some.endpoint.local
- cache:
    enabled: true
  domain: corp.intranet.local.
  source:
    recursors:
    - 10.0.0.2
    type: dns

handlers_files_glob

Glob for any files to look for DNS handler information

Default
/var/vcap/jobs/*/dns/handlers.json

health

client

tls

Client-side mutual TLS configuration for healthchecking

enabled

Enable healthchecks for DNS resolution

Default
false

local_health_interval

Frequency for the local health server to query monit and job healthiness scripts

Default
5s

max_tracked_queries

Maximum number of DNS resolved FQDNs to maintain live health info for

Default
2000

remote_health_interval

Frequency for the local bosh-dns to query remote health servers

Default
20s

server

port

Port to run health server on

Default
8853
tls

Server-side mutual TLS configuration for healthchecking

synchronous_check_timeout

Network timeout for synchronous health checks

Default
1s

internal_upcheck_domain

enabled

Enables an upcheck, which validates that internal domain resolution is working

Default
false

log_level

Logging level (DEBUG, INFO, WARN, ERROR, NONE)

Default
INFO

logging

format

timestamp

Format for the timestamp in the component logs. Valid values are ‘rfc3339’ and ‘deprecated’.

Default
rfc3339

tags

Provide logging configuration for log tags to overwrite the default logger behavior (e.g log_level property)

Default
[]

metrics

address

Address for metrics server to bind to. Use 0.0.0.0 to bind to all addresses

Default
127.0.0.1

enabled

When enabled bosh-dns will start a metrics server using the default coredns metrics plugin

Default
false

port

Port for metrics server to listen to

Default
53088

override_nameserver

Configure ourselves as the system nameserver (e.g. /etc/resolv.conf will be watched and overwritten)

Default
true

port

Port that the DNS server will bind to

Default
53

records_file

Path to the file containing information that the DNS server will use to create DNS records

Default
/var/vcap/instance/dns/records.json

recursor_max_retries

Maximum number of retries for recursively resolving DNS queries

Default
0

recursor_selection

The selection strategy for the recursors (serial or smart)

Default
smart

recursor_timeout

A timeout value for when dialing, writing and reading from the configured recursors

Default
2s

recursors

Addresses of upstream DNS servers used for recursively resolving queries

Default
[]

request_timeout

A timeout value for when dialing, writing and reading from the bosh-dns or healthcheck servers

Default
5s

upcheck_domains

Domain names that the dns server should respond to with successful answers. Answer ip will always be 127.0.0.1

Default
- upcheck.bosh-dns.

Templates

Templates are rendered and placed onto corresponding instances during the deployment process. This job's templates will be placed into /var/vcap/jobs/bosh-dns/ directory (learn more).

  • bin/bosh_dns_ctl (from bosh_dns_ctl.erb)
  • bin/bosh_dns_health_ctl (from bosh_dns_health_ctl.erb)
  • bin/bosh_dns_resolvconf_ctl (from bosh_dns_resolvconf_ctl.erb)
  • bin/cli (from cli.erb)
  • bin/is-system-resolver (from is-system-resolver.erb)
  • bin/post-start (from post-start.erb)
  • bin/pre-start (from pre-start.erb)
  • bin/wait (from wait.erb)
  • config/certs/api/client.crt (from certs/api/client.crt.erb)
  • config/certs/api/client.key (from certs/api/client.key.erb)
  • config/certs/api/client_ca.crt (from certs/api/client_ca.crt.erb)
  • config/certs/api/server.crt (from certs/api/server.crt.erb)
  • config/certs/api/server.key (from certs/api/server.key.erb)
  • config/certs/api/server_ca.crt (from certs/api/server_ca.crt.erb)
  • config/certs/health/client.crt (from certs/health/client.crt.erb)
  • config/certs/health/client.key (from certs/health/client.key.erb)
  • config/certs/health/client_ca.crt (from certs/health/client_ca.crt.erb)
  • config/certs/health/server.crt (from certs/health/server.crt.erb)
  • config/certs/health/server.key (from certs/health/server.key.erb)
  • config/certs/health/server_ca.crt (from certs/health/server_ca.crt.erb)
  • config/config.json (from config.json.erb)
  • config/health_server_config.json (from health_server_config.json.erb)
  • dns/aliases.json (from aliases.json.erb)
  • dns/handlers.json (from handlers.json.erb)

Packages

Packages are compiled and placed onto corresponding instances during the deployment process. Packages will be placed into /var/vcap/packages/ directory.