Skip to content
  • Jonas's avatar
    feat: support "monitoring packs" · f33d0f07
    Jonas authored
    "monitoring packs" are simple tar.gz files that contain a file
    `config.tpl` + additional supporting files. When a user indicates via
    parameter that they want to use a monitoring pack, the bpm plugin goes
    through these steps:
    
    1. Unpacks the file into `~/.bpm/nodes/<node-id>/monitoring`
    2. Appends the file `~/.bpm/nodes/<node-id>/monitoring/config.tpl` to
       the internal filebeat configuration template
    3. Renders the combined template
    4. Starts and stops the filebeat container togeth with the other
       containers when needed
    
    This allows bpm to serve monitoring data and logs to all possible
    filebeat outputs. Optionally the monitoring pack can contain additional
    files like TLS certificates for authentication against monitoring
    endpoints.
    
    To separate the configuration of the environment (e.g. monitoring) and
    the configuration of the actual node I've added a new lifecycle step:
    
    - set-up-environment
    - and for completeness sake (even if currently unused): tear-down-environment
    
    The `set-up-environment` lifecycle step comes before `create-identity` and
    `create-configurations` and is supposed to set up the runtime environment
    for the node but not the node itself.
    f33d0f07