Learn About Agent Management Configuration

George Alpizar
George Alpizar
  • Updated

Overview

You can use this document to learn at a high level how to create and manage agent configurations.

In the Edge Delta App, you can generate, deploy, and manage configuration files used by Edge Delta services. 

When you create a configuration file, configuration API keys are generated to pre-configure agents during deployment.

Additionally, when you update and modify configuration files directly through the app, changes are automatically propagated  to active agents. 


Create a Configuration

There are 2 ways to create a configuration:

  • Use a template with default settings

    • After you save a template, you can view and update the template's configurations in the YAML file.
  • Use a visual editor to populate a YAML file

    • Before and after you save, you can view and make changes directly in the YAML file.

Option 1: Use a template with default settings

  1. In the Edge Delta App, on the left-side navigation, click Data Pipeline, and then click Agent Settings.
  2. Click Create Configuration.
  3. Select a template, and then click Save.
  4. Refresh the page to view the newly created configuration in the table.
    • This entry will also list the API key associated with the configuration.
    • The API key is utilized as part of the agent deployment process, which allows new agents to install and deploy based on this configuration.

As an optional step, you can view and update the configurations in the template.

  1. In the Configurations table, for the newly created configuration, under Actions, click the vertical ellipses, and then click Edit.
  2. Click YAML.
  3. Make your desired changes, and then click Save.

Option 2: Use a visual editor to populate a YAML file

  1. In the Edge Delta App, on the left-side navigation, click Data Pipeline, and then click Agent Settings.
  2. Click Create Configuration.
  3. Click Visual.
  4. On the right-side, select a configuration option. In the empty field, enter your configurations. When you are done, click the back button on top of the form to return to the list of configuration options. Do not click Save.
  5. Add additional configurations.
  6. As an optional step, you can click YAML to view and change your configurations in a YAML file.
  7. When you are done with the configuration file, click Save.
  8. Refresh the page to view the newly created configuration in the table.
    • This entry will also list the API key associated with the configuration.
    • The API Key is utilized as part of the agent deployment process, which allows new agents to install and deploy based on this configuration.

View Agent Deployment Status

You can use these instructions to view the deployment status of an agent. 

  1. In the Edge Delta App, on the left-side navigation, click Data Pipeline, and then click Agent Settings
  2. In the table, locate the desired agent configuration, then under Actions, click the vertical ellipses, and then click Deployment Status
  3. Review the following status types:
    Status Type Description
    Not Running Agents This status type indicates that the agent has not sent a heartbeat to Edge Delta. As a result, the agent has not been updated with the latest configuration changes. 
    Not Reloaded Agents This status types indicates that the agent is active; however, the agent has not been updated. In other words, the agent's configuration has been updated, but those updates have not been detected in the agent. 
    Reloaded Agents This status type indicates that the agent was recently updated. 

View Configuration History

Any change made to a configuration will be tracked and displayed in the Edge Delta App.

  1. In the Edge Delta App, on the left-side navigation, click Data Pipeline, and then click Agent Settings.
  2. Review the listed entries.
  3. To filter for specific entry types, click Filters, and then mark a filter option.
  4. To view a diff, locate the desired configuration, then under Actions, click the vertical ellipses, and then click Config History.
  5. In the window that appears, click Show Change.
  6. In Left Side and Ride Side, select the 2 versions of the config file that you want to see.
  7. You can also click Diff From Current to see how the latest version differs from the previous version.

Update an Existing Configuration

  1. In the Edge Delta App, on the left-side navigation, click Data Pipeline, and then click Agent Settings.
  2. Locate the desired configuration, then under Actions, click the vertical ellipses, and then click Edit.
  3. Make your changes, and then click Save.
  4. A new entry will appear in the table, with the date and time of the update.

After you update a configuration via the app, the updated configuration version will be automatically propagated to any active agent that uses the same API key. The agents communicate with the Edge Delta backend to retrieve any updates. Typically, the agent will be updated within a minute or less.


Configure File Management Locally

While you can use the Edge Delta App to update a configuration, you can also manage and deploy configuration files locally, with tools such as Chef, Puppet, Ansible, Salt, Terraform, etc.

To configure locally, a flag must be provided during agent deployment to let the Edge Delta backend know that Local Configuration File Management is in place.

Run Parameter:

-c path/to/config.yml

Linux Example:

./edge_delta.sh -c /opt/configs/edge_delta.yml

Windows Example:

start /wait msiexec /qn /i edgedelta-version_64bit.msi -c /opt/configs/edge_delta.yml

Create and Add a Child Configuration 

In the Edge Delta App, you can add a configuration into another, existing configuration to create a parent and child configuration. 

Note

In the Edge Delta App, the process to create a parent or child configuration is the same. To convert existing configurations into a parent or child, you must "import" a configuration into another configuration. With this action, the existing configurations will convert into a parent and child configuration. 

To learn how to create a configuration, see Agent Configuration Overview.

Before you create or add a child configuration into a parent configuration, consider the following statements: 

  • You can add a child configuration into multiple parent configurations.
  • A configuration cannot be both a parent and child configuration.
  • The user who created or updates the parent configuration should have access to the child configuration. 

  • If a parent and child configuration have sources that point to the same resource, such as a file input that has the same path, then these 2 sources will only be merged if they have the same configuration, with the exception of labels. If not, then the configuration validation will give an error. 

To add a child configuration into a parent configuration: 

  1. In the Edge Delta App, on the left-side navigation, click Data Pipeline, and then click Agent Settings.
  2. Locate the desired parent configuration, then under Actions, click the vertical ellipses, and then click Edit.  
  3. Update the YAML file with the following parameters. 
    • To better understand, review the table and sample configuration below.
  4. Update the workflow and add related configurations, such as inputs, processors, filters, outputs, etc. 
Parameter Description 
name

Enter the name of the child configuration. 

Review the following example: 

name: "Test_Team"
conf_id

Enter the configuration ID or the API key for the child configuration. 

Review the following example: 

conf_id: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
prefix

Enter a descriptive term that will be inserted in front of the metrics, inputs, filters, etc. from that configuration.  

If you do not enter a prefix, then the name of the child configuration will be used. 

Review the following example: 

prefix: test_team
exclude_workflows

Enter true or false

False indicates that the parent configuration will not use the configurations from the child configuration. 

The default value is false

Review the following example: 

exclude_workflows: true
params

Enter a key-value pair that will be used for templating purposes for the child configuration.

To avoid errors during the configuration validation process, in the workflow, use the following format: `'{{ Param "KEY" }}'`

  • Parametrization only works for the child configuration's workflow.

If you enter "... '{{ Param "<Key>" }}' ...", then the <Value> will replace all content within the curly brackets. 

Review the following example: 

params: 
WorkflowProcessor: "flog"

Review the following sample configurations: 

imports:
- name: "<Name of the config>" conf_id: "<Config ID>" prefix: "<Prefix>" exclude_workflows: true params: WorkflowProcessor: "flog"
imports:
- name: "Test_Team"
  conf_id: "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
  prefix: test_team
  params:
    ElasticIndexName: TEST_INDEX

 


Share this document