On This Page

Home / Stream/ Set Up Cribl Stream/ Connect Through Cribl Outpost/Set Up Cribl Outpost

Set Up Cribl Outpost

Create a Cribl Outpost to relay communication between Worker Nodes and the Leader.


Prerequisites

Cribl Outpost requires an Enterprise plan or Enterprise license. For details, see Pricing.

You can install Cribl Outpost on Linux only. Do not run an Outpost Node on the same host as a Stream Worker to avoid both Nodes competing for resources.

Prepare Outpost Group

The Outpost Group the defines the listener URL on which Worker Nodes connect to the Outpost, TLS settings that secure that connection, as well as other options such as the retention time for disconnected Outpost Nodes.

Before you add an Outpost Node, revise the settings in the default_outpost Group and, if needed, change them, or create a new Outpost Group.

To create a new Outpost Group:

  1. In the sidebar, select Outposts, then select Add Outpost Group.
  2. Enter a Name for the group, an optional Description, and Tags.
  3. In Time to keep disconnected Outposts, define how long the Group should retain information about an Outpost that disconnects from the Leader. Leave empty to use the default of one day.
  4. Select Save.
  5. Select the new Group you created, and then Settings to configure its more advanced parameters.
  6. In Distributed Settings > Listener Settings, configure Address and Port. These will form the URL that Worker Nodes will use to connect to Outposts in this Group.
  7. In Distributed Settings > TLS Settings, enable Use TLS to secure Outpost-Worker Node communication with TLS. If you enable TLS, you also need to provide certificate and private key information, as needed.
  8. Optionally, configure any other Outpost Group settings. Refer to Outpost Group Settings for more information.

In versions older than v4.16, TLS information for Outposts was included in the individual Outpost Node settings instead of the Outpost Group. On upgrade to v4.16, Outposts Nodes running older versions are placed in the default_outpost Group.

Create an Outpost

There are two ways of adding a new Outpost Node:

Add an Outpost with a Bootstrap Script

To add a new Outpost Node using a CLI bootstrap script:

  1. From the sidebar, select Outpost, then select an Outpost Group.

  2. Select Add/Update Outpost Node, then select Add.

  3. Fill and modify the deployment option fields:

    • The Install package location defaults to Cribl CDN. If desired, change this to Download URL.
    • As needed, correct the target Outpost Group, as well as the Leader hostname/IP (URI).
    • As needed, correct the User and User Group to run Cribl as.
    • As needed, correct the Installation directory.
  4. Optionally, add Tags that you can use for filtering and grouping Outposts. Use a tab or hard return between (arbitrary) tag names.

  5. Copy the resulting script to your clipboard.

Finally, to add the Outpost, paste the script onto the command line where you want to set up the node, and execute it.

If your script successfully added the Outpost, you will see it in the Outposts list for your selected group.

Add an Outpost from a Binary File

To add a new Outpost Node using a downloaded binary file:

Download and Untar the Binary

  1. Go to the Cribl Download page and set the Software drop-down to Cribl Suite (Edge and Stream) for your processor architecture.

  2. Select Download now to get the .tgz archive.

  3. Un-tar the install package in your directory of choice:

    cd /opt/ 
    tar xvzf cribl-<version>-<build>-<arch>.tgz

Set Installation Mode

Set the installation mode to mode-outpost to connect the Outpost to the designated Leader and allow Worker Nodes to connect to it in turn:

/opt/cribl/bin/cribl mode-outpost /
   -H <leader-hostname-or-IP> /
   -p <port> /
   -u <token> /
   -S 1
Token

<token> must match the Leader token, to ensure a connection with the Leader.

In Cribl.Cloud, get the token for your Workspace from the Worker Node modal (Add/Update Worker Node) from the Auth token field.

In an on-prem deployment, get the token from Settings > Global > System > Distributed Settings > Leader Settings > Auth token.

TLS

The -S 1 parameter enables secure communication between the Outpost Node and the Leader via TLS. If you omit this parameter, the connection will not use TLS. However, TLS must be enabled for the Outpost Node to connect to a Leader in Cribl.Cloud.

Group

By default, a new Outpost Node will be placed in the default_outpost group.

You can specify a different Group by providing the -g parameter to the mode-outpost command, for example:

/opt/cribl/bin/cribl mode-outpost /
   -H <leader-hostname-or-IP> /
   -p <port> /
   -u <token> /
   -g <myGroup> /
   -S 1

Configure Installation as a Service

Finally, configure the installation as a service and start it:

sudo /opt/cribl/bin/cribl boot-start enable -m systemd -u cribl
sudo systemctl restart cribl-outpost.service

At this point your Cribl Outpost is ready for use and you can start configuring Worker Nodes to connect to it.

Connect Nodes to an Outpost

Worker Nodes see Outpost in the same way as a Leader Node. This means that, to connect a Node to an Outpost, you only need to provide the Outpost listener URL and the Leader auth token.

The Outpost doesn’t have a separate auth token. When configuring Node connection, use the auth token of the Leader.

Configure the connection either from Settings (Global > Distributed Settings > Leader Settings), or by setting the CRIBL_DIST_LEADER_URL environment variable:

CRIBL_DIST_LEADER_URL=tcp://<leader-token>@<outpost-hostname>:<outpost-port>