Hosts and VM Integration

The Datadog Agent can collect telemetry from standalone hosts(systems) such as AWS EC2, Azure VMs, and GCP instances.

Datadog Agent

Install the Datadog Agent

To install the agent and running the following command in bash.

Replace <KFUSE-DNS> with your Kloudfuse cluster hostname.

DD_UPGRADE=true \
DD_API_KEY=kloudfuse \
DD_URL="https://<kloudfuse-hostname>" \
bash -c "$(curl -L https://s3.amazonaws.com/dd-agent/scripts/install_script_agent7.sh)"

The install script writes DD_URL to the dd_url setting in /etc/datadog-agent/datadog.yaml.

If your Kloudfuse cluster presents a self-signed or expired TLS certificate, add skip_ssl_validation: true to /etc/datadog-agent/datadog.yaml and restart the Agent (sudo systemctl restart datadog-agent), otherwise metric flushes fail TLS validation.

Collect Metrics

Host-level metrics (CPU, memory, network, disk) are collected automatically.

To collect additional Prometheus-style metrics, enable the OpenMetrics check by copying the example configuration:

cp /etc/datadog-agent/conf.d/openmetrics.d/conf.yaml.example \
   /etc/datadog-agent/conf.d/openmetrics.d/conf.yaml

See Datadog — OpenMetrics Integration for configuration options.

Collect Logs

Edit your /etc/datadog-agent/datadog.yaml file to enable log collection. Replace <KFUSE-DNS> with your Kloudfuse cluster hostname.

logs_enabled: true

logs_config:
  logs_dd_url: https://<kloudfuse-hostname>
  logs_no_ssl: false
  use_http: true
  use_v2_api: false

metadata_providers:
  - name: host
    interval: 300

use_v2_api:
  series: true
yaml

Collect Custom Log Files

To tail custom log files, add a custom conf.yaml in the appropriate conf.d subdirectory. Specify start_position to ensure all data is collected rather than only new "live" data.

Dual Shipping Logs

The Datadog Agent supports dual shipping — sending telemetry to multiple endpoints. This can be either Kloudfuse and another observability system or multiple instances of Kloudfuse.

logs_enabled: true

logs_config:
  logs_dd_url: https://<kloudfuse-hostname>
  logs_no_ssl: false
  use_http: true
  use_v2_api: false
  additional_endpoints:
    - api_key: apikey1
      Host: "<ALTERNATE-DNS>"
      Port: 443
      use_compression: true
      use_http: true
      use_v2_api: false
yaml

Collect Events

Edit your /etc/datadog-agent/datadog.yaml file to enable event collection and forward events to Kloudfuse.

collect_events: true

process_config:
  events_dd_url: "https://<kloudfuse-hostname>/ingester"
yaml

The collect_events option enables collection of container lifecycle events (start, stop, die) and system events such as log rotations. The process_config.events_dd_url setting forwards those events to Kloudfuse.

Collect Traces

  1. Open /etc/datadog-agent/datadog.yaml and enable APM, pointing the trace endpoint at Kloudfuse:

    apm_config:
      enabled: true
      apm_dd_url: "https://<kloudfuse-hostname>/ingester"
    yaml
  2. Instrument your applications with the Datadog APM library for your language (dd-trace for Python, ddtrace for Java, and so on).

  3. Configure your application to send traces to the local agent:

    DD_AGENT_HOST=localhost
    DD_TRACE_ENABLED=true
    DD_ENV=<YOUR_ENV_NAME>
    DD_SERVICE=<YOUR_SERVICE_NAME>
    DD_VERSION=<YOUR_SERVICE_VERSION>
    text

Verify Metrics Are Arriving

  1. Confirm the agent service is running:

    sudo systemctl status datadog-agent
  2. Check the agent status for active checks and any errors:

    sudo datadog-agent status
  3. In the Kloudfuse UI, click Infrastructure > Hosts. Your host (identified by its hostname) should appear within a few minutes of the agent starting.

  4. To verify metrics, open Metrics Explorer and search for system.cpu.user. Filter by host:<hostname> to scope to your instance.

Troubleshooting

Agent Not Starting

If systemctl status datadog-agent shows failed or the agent does not start:

  1. Check the agent log for startup errors:

    sudo journalctl -u datadog-agent -n 50
  2. Confirm /etc/datadog-agent/datadog.yaml has valid YAML syntax. Run sudo datadog-agent check to validate the configuration.

No Metrics Appearing in Kloudfuse

If the agent is running but no metrics appear:

  1. Confirm DD_URL in /etc/datadog-agent/datadog.yaml points to your Kloudfuse cluster:

    sudo grep dd_url /etc/datadog-agent/datadog.yaml
  2. Test outbound connectivity to the Kloudfuse ingester:

    curl -I https://<kloudfuse-hostname>
  3. Inspect the agent log for outbound connection errors:

    sudo tail -50 /var/log/datadog/agent.log | grep -i "error\|failed"