The infrastructure file
InfraFile
in brane_cfg/infra.rs
.
The infrastructure file, or more commonly referenced as the infra.yml
file, is a control node configuration file that is used to define the worker nodes part of a particular BRANE instance. Its location is defined by the node.yml
file.
The branectl
tool can generate this file for you, using the branectl generate infra
subcommand. See the chapter on installing a control node for a realistic example.
Toplevel layout
The infra.yml
file is written in YAML. It features only the following toplevel field:
locations
: A map that details the nodes present in the instance. It maps from strings, representing the node identifiers, to another map with three fields:name
: Defines a human-friendly name for the node. This is only used on the control node, and only to make some logging messages nicer; there are therefor no constraints on this name.delegate
: The address of the delegate service (i.e.,brane-job
) on the target worker node. Must be given using a scheme (eitherhttp
orgrpc
), an IP address or hostname and a port.registry
: The address of the local registry service (i.e.,brane-reg
) on the target worker node. Must be given using a scheme (https
), an IP address or hostname and a port.
For example, the following defines an infra.yml
file for two workers, amy
at amy-worker-node.com
and bob
at 192.0.2.2
:
locations:
# Amy's node
amy:
name: Amy's Worker Node
delegate: grpc://amy-worker-node.com:50052
registry: https://amy-worker-node.com:50051
# Bob's node
bob:
name: Bob's Worker Node
delegate: http://192.0.2.2:1234
registry: https://192.0.2.2:1235