Skip to main content

Zilla Runtime Configuration


Zilla Runtime Configuration

The Zilla runtime configuration defines the bindings, guards, vaults, catalogs, and telemetry used by the Zilla runtime engine. The values of properties in the configuration can be literals or expression resolvers.

---
name: zilla-namespace

bindings:
  ...

guards:
  ...

vaults:
  ...

catalogs:
  ...

telemetry:
  ...

 















Configuration

name*

string

Namespace name.

bindings

object as map of named binding properties

Each configured binding represents a step in the pipeline as data streams are decoded, translated or encoded according to a specific protocol type.

A binding also has a kind, indicating how it should behave, such as server, proxy or client.

As each incoming data stream arrives, the binding follows its configured routes to reach an exit binding, or rejects the stream if no routes are viable. Route matching conditions are defined in terms specific to each binding type.

routes.exit

string

Unconditional exit binding acting as a default if none of the conditional routes are viable.

guards

object as map of named guard properties

Each configured guard represents a security checkpoint for one or more bindings based on a specific implementation type.

Guards can be used by specific protocol bindings to enforce authorization requirements.

Associated roles can be enforced during routing by only following routes guarded by specific role requirements when authorized. This implicitly supports falling through to lower privilege routes when guarded higher privilege routes are not authorized.

vaults

object as map of named vault properties

Each configured vault represents a container for digital keys and certificates based on a specific implementation type.

Vaults can be used by specific protocol bindings, such as tls, to negotiate shared encryption keys.

catalogs

object as map of named catalog properties

Each configured catalog represent a catalog of schemas of various format based on a specific implementation type.

Catalogs can be used by specific protocol bindings to enforce validation.

telemetry

object of telemetry properties

telemetry:
  attributes:
    service.namespace: example
  exporters:
    ...
  metrics:
    ...

attributes

object | Default: zilla namespace name

Default attributes to optionally include when exporting metrics.

exporters

object as map of named exporter properties

Map of named exporters.

metrics

array of string of named metrics

Array of named metrics.