This page describes how to install and configure the Splunk AppDynamics Infrastructure Collector to monitor non-Kubernetes® Linux hosts.

The Splunk AppDynamics Infrastructure Collector uses the Cisco AppDynamics Distribution of OpenTelemetry Collector to transport data. For advanced configuration, see Deploy the Cisco AppDynamics Distribution of OpenTelemetry Collector in Amazon EC2 (Linux).

To configure the Splunk AppDynamics Infrastructure Collector to monitor Kubernetes Linux hosts, see Cisco AppDynamics Collectors Settings.

Before You Begin

Before installing Host Monitoring, ensure that you meet the following requirements:

  • You have a supported Linux environment. Host Monitoring has been verified to work with the following standalone Linux environments:

    Standalone Linux Software

    Version

    Installer

    Ubuntu

    • 6.04
    • 18.04
    DEB

    Red Hat Enterprise Linux

    • 8
    • 9
    RPM

    CentOS

    • 6
    • 7
    RPM
  • You have a supported CPU architecture. Host Monitoring has been verified to work with the following CPU architectures:
    • AMD64
    • ARM64

  • You have access to the following ports:
    • 4317 (to receive OTLP data over gRPC)
    • 4318 (to receive OTLP data over HTTP)
    • 8888 (to receive self-telemetry metrics)
    • 13133 (Health Check extension)
    • 55679 (zPages extension)

    • 9100 (Prometheus Node Exporter)

      If these ports conflict with your existing ports, see Configure Listening Ports.

  • You have allowlisted the package management URL and the Cisco AppDynamics Distribution of OpenTelemetry Collector endpoint.

Install Host Monitoring for Linux

The instructions to install Host Monitoring for Linux are documented on the Databases and Hosts page of the Cisco Cloud Observability user interface. 

To navigate to the Databases and Hosts user interface page:

  1. Log into the Cisco Cloud Observability UI.
  2. Use the left-hand navigation panel to navigate to Configure > Databases and Hosts.
  3. Follow the instructions on the Databases and Hosts user interface page to install Host Monitoring.
    To set additional configurations in the appdynamics.conf configuration file, see Configuration Options.

The Host Monitoring package installs three systemctl services:

ServiceNameConfiguration File

Splunk AppDynamics Infrastructure Collector

appdinfracol.service/opt/appdynamics/appdinfracol/conf/manager_config.yml

Cisco AppDynamics Distribution of OpenTelemetry Collector 

appdotelcol.service

/opt/appdynamics/appdynamics.conf (see Configuration Options)

Prometheus Node Exporterappdnodeexporter.serviceN/A

Configuration Options

Cisco AppDynamics Infrastructure Collector

Host Monitoring reads configurations from the following variables set in the /opt/appdynamics/appdinfracol/conf/manager_config.yml file:

VariableDescriptionDefaultNotes
log-level

A string specifying the verbosity of the Cisco AppDynamics Infrastructure Collector's logger. Possible values: fatal, error, warn, info, debug.

info-
log-files-max-size-mb

Defines the maximum size in MB of the Cisco AppDynamics Infrastructure Collector log file. Once the log file exceeds this size, the file is copied to a backup file and compressed.

10Host Only
log-files-num-backupsDefines the number of log backups to store on the disk.1Host Only
mtls-enabled

Enables mTLS for the Cisco AppDynamics Infrastructure Collector's communication with the Cisco AppDynamics Distribution of OpenTelemetry Collector. Minimum TLS 1.2 is required. See TLS/mTLS notes below.

false-
tls-enabled

Enables TLS for the Cisco AppDynamics Infrastructure Collector's communication with the Cisco AppDynamics Distribution of OpenTelemetry Collector.  Minimum TLS 1.2 is required. See TLS/mTLS notes below.

false-

When mTLS or TLS is enabled, the Cisco AppDynamics Infrastructure Collector will search for the following files on the host:

File LocationDescriptionNotes
/opt/appdynamics/appdinfracol/certs/ca/ca.pem
  

The location of the Certificate Authority file. If the file is not found at this location, the Cisco AppDynamics Infrastructure Collector defaults to the system's Certificate Authority.

Applicable to TLS and MTLS
/opt/appdynamics/appdinfracol/certs/client/client-key.pemThe location of the client private key when mTLS is enabled.MTLS only
/opt/appdynamics/appdinfracol/certs/client/client.pemThe location of the client client certificate when mTLS is enabled.MTLS only
HTTP_PROXYIf you are using a HTTP-based proxy, set this environment variable to the URL of the proxy. Example: HTTP_PROXY="http://myproxy/".
HTTPS_PROXYIf you are using a HTTPS-based proxy, set this environment variable to the URL of the proxy. Example: HTTPS_PROXY="https://myproxy/".

Cisco AppDynamics Distribution of OpenTelemetry Collector

Host Monitoring reads configurations from the following variables set in the /opt/appdynamics/appdynamics.conf file:

VariableRequiredDescription
APPD_OTELCOL_CLIENT_IDYes

Defines the client ID for authenticating with Cisco Cloud Observability.

APPD_OTELCOL_CLIENT_SECRETYes

Defines the secret string in plaintext for authenticating with Cisco Cloud Observability.

APPD_OTELCOL_TOKEN_URLYes

Defines the URL the collector retrieves Oauth2 tokens from.

APPD_OTELCOL_ENDPOINT_URLYesDefines the endpoint the collector sends data to.
APPD_OTELCOL_EXTRA_CONFIGNo

Defines the location of an overwritten configuration file. The value of APPD_OTELCOL_EXTRA_CONFIG must be --config=provider:, where provider can be file, http, or yaml. See https://github.com/open-telemetry/opentelemetry-collector/blob/main/confmap/README.md.

This variable is used to support multiple configuration files. If you have an additional configuration file that must be used, APPD_OTELCOL_EXTRA_CONFIG can be used to extend and override the collector's configuration. You can specify a value for APPD_OTELCOL_EXTRA_CONFIG to define the location of an additional configuration file, whose content will be merged to the default configuration file. The content from the additional configuration file will take higher precedence. If the same configuration exists in the default file, it will be overwritten by the configuration in the additional file.

The overwritten configuration file must be located in the /opt/appdynamics folder to be accessed by Cisco Cloud Observability users. If the file is not in the /opt/appdynamics folder, you must grant access permissions for Cisco Cloud Observability users.

HTTP_PROXYNoIf you are using a HTTP-based proxy, set this environment variable to the URL of the proxy. Example: HTTP_PROXY="http://myproxy/".
HTTPS_PROXYNoIf you are using a HTTPS-based proxy, set this environment variable to the URL of the proxy. Example: HTTPS_PROXY="https://myproxy/".

Update the Configuration File

To update the configuration of a service:

  1. Open the /opt/appdynamics/appdynamics.conf file. Modify the configuration options.
  2. Restart the service using the following command: 

    systemctl restart <service-name>
    BASH

View Diagnostics

Check Status

To check the status of a service, run the following command: 

systemctl status <service-name>
BASH

View Logs

To view diagnostic logs, run the following command:

journalctl -u <service-name>
BASH

Configure Listening Ports

By default, the Cisco AppDynamics Distribution of OpenTelemetry Collector listens to the following ports:

  • 4317 (to receive OTLP data over gRPC)
  • 4318 (to receive OTLP data over HTTP)
  • 8888 (to receive self-telemetry metrics)
  • 13133 (Health Check extension)
  • 55679 for (zPages extension)

If these ports conflict with your existing ports, change the ports by updating the /opt/appdynamics/appdotelcol/config.yaml configuration file. If only local traffic is allowed, the local address 0.0.0.0 can be configured to localhost.

The following snippet displays where to update the ports in the /opt/appdynamics/appdotelcol/config.yaml file:

extensions:
  health_check:
    endpoint: "0.0.0.0:<HEALTH_CHECK_EXTENSION_PORT>"
  zpages:
    endpoint: "0.0.0.0:<ZPAGES_PORT>"

receivers:
  otlp:
    protocols:
      http:
        endpoint: "0.0.0.0:<PORT_FOR_OTLP_HTTP>"
      grpc:
        endpoint: "0.0.0.0:<PORT_FOR_OTLP_GRPC>"

service:
  telemetry:
    metrics:
      address: "0.0.0.0:<PORT_FOR_SELF_TELEMETRY_METRICS>"
YML

Next Steps

When Host Monitoring services are run, they automatically pull metrics associated with the host resources and populate the Observe page with entity-centric pages. You can now Observe Host Monitoring Entities in the Cisco Cloud Observability UI.

This document contains references to third-party documentation. Splunk AppDynamics does not own any rights and assumes no responsibility for the accuracy or completeness of such third-party documentation.

Third party names, logos, marks, and general references used in these materials are the property of their respective owners or their affiliates in the United States and/or other countries. Inclusion of such references are for informational purposes only and are not intended to promote or otherwise suggest a relationship between Splunk AppDynamics and the third party.