The BindPlane Agent can be setup as an agent that is managed by the BindPlane OP platform via OpAMP.
The agent can be configured to connect to the server a few different ways.
The agent can be configured to read its connection config from a manager.yaml
file. The --manager
flag can be used to specify the location of this config file, by default it's ./manager.yaml
. The contents of the manager.yaml
are detailed out in the table below.
Parameter | Required | Description |
---|---|---|
endpoint | X | The API endpoint to communicate with the server via websocket |
secret_key | The Secret Key defined for the server to be used for authorization | |
agent_id | A ULID used to uniquely identify the agent | |
labels | A comma separated list of labels in the form label=value |
|
agent_name | Human readable name for the agent | |
tls_config | See tls config section |
Here's an example of what a common manager.yaml
looks like:
endpoint: ws://bindplane.localnet/v1/opamp
secret_key: 3d83f0cb-2567-42c7-ada6-960842924d11
agent_id: 01H5MG7N9N36J28WEC8A8X5B17
If TLS is enabled on the server the agent will need to be configured in order to connect.
Note: If using TLS on the server the endpoint
field will need to have the wss
protocol for TLS enabled websockets.
Parameter | Required | Description |
---|---|---|
insecure_skip_verify | InsecureSkipVerify controls whether a client verifies the server's certificate chain and host name. | |
key_file | Path to the .key file |
|
cert_file | Path to the Certificate file | |
ca_file | Path to the Certificate Authority file |
The agent can also use environment variables to set portions of the connection configuration. This is useful for a containerized agent where a mounted volume might not be present.
If the agent can not find the specified manager.yaml
file it will search for the environment variables and create a manager.yaml
at the location of the --manager
command argument.
Note: Only the OPAMP_ENDPOINT
is required. If this is not set and there is no manager.yaml
the agent will start in its normal standalone mode.
Environment Variable | Required | Description |
---|---|---|
OPAMP_ENDPOINT | X | The API endpoint to communicate with the server via websocket |
OPAMP_SECRET_KEY | The Secret Key defined for the server to be used for authorization | |
OPAMP_AGENT_ID | A UUID used to uniquely identify the agent. If not supplied one will be generated | |
OPAMP_LABELS | A comma separated list of labels in the form label=value |
|
OPAMP_AGENT_NAME | Human readable name for the agent | |
OPAMP_TLS_SKIP_VERIFY | Set to "true" to skip verification of the OpAMP server's TLS certificate |
|
OPAMP_TLS_CA | File path to a certificate authority file that should be used to validate the server's TLS certificate | |
OPAMP_TLS_CERT | File path to a certificate file that will be used for client TLS authentication | |
OPAMP_TLS_KEY | File path to a private key file that will be used for client TLS authentication |