Deploy the Collector with Puppet for Linux π
Use this module to install and configure the Collector on Linux. Download and install the module from Puppet Forge . After downloading the module, you can add customizations using the class
parameter.
Currently, we support the following Linux distributions and versions:
Amazon Linux: 2, 2023. Log collection with Fluentd isnβt supported for Amazon Linux 2023.
CentOS / Red Hat / Oracle: 7, 8, 9
Debian: 9, 10, 11
SUSE: 12, 15 (Note: Only applicable for Collector versions v0.34.0 or higher. Log collection with Fluentd not currently supported.)
Ubuntu: 16.04, 18.04, 20.04, 22.04
On Linux systems, the puppetlabs/stdlib module is required.
Note
systemd is required to be installed on the host for service management.
Use the Puppet module π
To use this module, include the splunk_otel_collector
class in your manifests with the supported parameters (see Modify the class parameters for descriptions of the available parameters). For example, the following deployment definition is the simplest deployment definition with the default parameters (replace VERSION
with the desired Collector version, SPLUNK_ACCESS_TOKEN
with your Splunk access token to authenticate requests, and SPLUNK_REALM
for the realm to send the data to):
class { splunk_otel_collector:
collector_version => 'VERSION'
splunk_access_token => 'SPLUNK_ACCESS_TOKEN',
splunk_realm => 'SPLUNK_REALM',
}
Modify the class parameters π
The class accepts the parameters described in the following table:
Name |
Description |
Default value |
---|---|---|
|
Version of the Collector package to install, for example, |
None |
|
Replaces |
90% of |
|
The Splunk access token to authenticate requests. This attribute is required. |
None |
|
Which realm to send the data to, for example, |
None |
|
Sets the Splunk ingest URL explicitly instead of the URL inferred by the |
|
|
Sets the Splunk API URL explicitly instead of the URL inferred by the |
|
|
Sets the Splunk trace endpoint URL explicitly instead of the URL inferred by the |
|
|
Sets the Splunk HEC endpoint URL explicitly instead of the URL inferred by the |
|
|
Sets the Splunk HEC authentication token if different than |
|
|
The path to the Smart Agent bundle directory. The default path is provided by the Collector package. If the specified path is changed from the default value, the path should be an existing directory on the node. The |
|
|
The path to the collectd configuration directory for the Smart Agent bundle. The default path is provided by the Collector package. If the specified path is changed from the default value, the path should be an existing directory on the node. The |
|
|
Total memory in MIB to allocate to the Collector; automatically calculates the ballast size. The |
|
|
|
None |
|
The source path to the Collector configuration YAML file. This file is copied to the |
|
|
Destination path of the Collector configuration file on the node. The |
|
|
Sets the user or group ownership for the Collector service. The user or group is created if they do not exist. |
|
|
Whether to install or manage Fluentd and dependencies for log collection. On Linux, the dependencies include |
|
|
Source path to the Fluentd configuration file. This file is copied to the |
|
|
Destination path to the Fluentd configuration file on the node. Only applicable if |
|
|
In cases where the Collector and Fluentd apt/yum repositories are managed externally, set this to |
|
Configure automatic discovery for back-end application(s) (Linux only) π
You can automatically instrument your back-end applications along with the Collector installation using automatic discovery. Automatic discovery (formerly zero configuration auto instrumentation) removes the need to install and configure the OpenTelemetry SDKs separately. See Automatic discovery of apps and services for more information.
The following table shows the variables that you can configure for this Puppet module:
Name |
Description |
Default value |
---|---|---|
|
Whether to install or manage automatic discovery for back-end applications. When set to |
|
|
The automatic discovery SDKs to install and activate. Note: |
|
|
Version of the |
|
|
Whether to activate and configure the automatic discovery for |
|
|
By default, the |
None |
|
Configure the OpenTelemetry instrumentation resource attributes, for example, |
None |
|
Explicitly sets the service name for all instrumented applications, for example, |
None |
|
Activates or deactivates AlwaysOn CPU Profiling. |
|
|
Activates or deactivates AlwaysOn Memory Profiling. |
|
|
Activates or deactivates exporting instrumentation metrics. |
|
|
Sets the OTLP endpoint for collected metrics, traces, and logs by all activated SDKs. Only applicable if |
|
|
Sets the OTLP endpoint protocol for collected metrics, traces, and logs by all activated SDKs, for example |
|
|
Comma-separated list of exporters for collected metrics by all activated SDKs, for example |
|
|
Sets the exporter for collected logs by all activated SDKs, for example |
|
|
Path to the Splunk OpenTelemetry Java agent. The default path is provided by the |
|
|
The path to the pre-installed |
|
Next steps π
After you have installed the package, see: