Files
threshold/website/content/docs/configuration/index.mdx
T

71 lines
2.8 KiB
Plaintext
Raw Normal View History

2020-09-23 12:15:21 -07:00
---
layout: docs
page_title: Server Configuration
description: Boundary configuration reference.
---
# Configuration
[listener]: /docs/configuration/listener
[telemetry]: /docs/configuration/telemetry
[controller]: /docs/configuration/controller
[worker]: /docs/configuration/worker
[kms]: /docs/configuration/kms
Outside of development mode, Boundary controllers and workers are configured using a file.
The format of this file is [HCL](https://github.com/hashicorp/hcl). In this section you'll find
configuration block examples for Boundary controllers and workers.
After the configuration is written, use the `-config` flag to specify a local path to the file.
## Parameters
2020-10-13 15:21:09 -04:00
- [`controller`](/docs/configuration/controller): Controller specific
configuration. If present, `boundary server` will start a Controller subprocess.
2020-09-23 12:15:21 -07:00
2020-10-13 15:21:09 -04:00
- [`worker`](/docs/configuration/worker): Worker specific configuration. If
present, `boundary server` will start a Worker subprocess.
2020-09-23 12:15:21 -07:00
2020-10-13 15:21:09 -04:00
- [`listener`](/docs/configuration/listener): Configures the listeners on which
Boundary serves traffic (API, cluster, and proxy).
2020-09-23 12:15:21 -07:00
2020-10-13 15:21:09 -04:00
Controllers will have two listener blocks: one marked for `api` purpose and
the other marked for `cluster` purpose. By default, the API listener runs on
:9200 and the cluster listener (currently used for worker communication) uses
:9201.
2020-09-23 12:15:21 -07:00
2020-10-13 15:21:09 -04:00
Workers will have only one listener, marked for `proxy` purpose.
2020-09-23 12:15:21 -07:00
2020-10-13 15:21:09 -04:00
- [`kms`](/docs/configuration/kms): Configures KMS blocks [for various
purposes](/docs/concepts/security/data-encryption).
2020-09-23 12:15:21 -07:00
- `disable_mlock` `(bool: false)` – Disables the server from executing the
2020-10-13 15:21:09 -04:00
`mlock` syscall, which prevents memory from being swapped to disk. This is
fine for local development and testing; in production, it is not recommended
unless the systems running Boundary only use encrypted swap or do not use swap
at all. Boundary only supports memory locking on UNIX-like systems that
support the mlock() syscall (Linux, FreeBSD, etc).
2020-09-23 12:15:21 -07:00
On Linux, to give the Boundary executable the ability to use the `mlock`
syscall without running the process as root, run:
```shell
2020-10-13 15:21:09 -04:00
sudo setcap cap_ipc_lock=+ep $(readlink -f $(which boundary))
2020-09-23 12:15:21 -07:00
```
If you use a Linux distribution with a modern version of systemd, you can add
the following directive to the "[Service]" configuration section:
```ini
LimitMEMLOCK=infinity
```
2020-10-13 15:21:09 -04:00
- `log_level` `(string: "info")` – Specifies the log level to use; overridden by
2020-09-23 12:15:21 -07:00
CLI and env var parameters. Supported log levels: Trace, Debug, Error, Warn, Info.
- `log_format` `(string: "")` – Specifies the log format to use; overridden by
2020-10-13 15:21:09 -04:00
CLI and env var parameters. Supported log formats: `"standard"`, `"json"`.
## Example Configurations
For complete example configurations see the sections for [controller](/docs/configuration/controller) and [worker](/docs/configuration/worker).