Skip to content

Deploying on Kubernetes


Install DataKit Agent

Before performing system and application link data analysis, you need to deploy the Guance DataKit collector on each target host to collect the necessary link data.

Enable DDTrace Collector

DDTrace is used to receive, process, and analyze Tracing protocol data. Execute the following command to enable the DDTrace collector. For other third-party Tracing collector configurations, please refer to Integrations.

- name: ENV_DEFAULT_ENABLED_INPUTS
  value: cpu,disk,diskio,mem,swap,system,hostobject,net,host_processes,container,ddtrace

After configuration, restart DataKit:

datakit service -R

Choose Language

Java

Install dependencies:

wget -O dd-java-agent.jar 'https://static.guance.com/dd-image/dd-java-agent.jar'

Run the application:

In Kubernetes, you can inject the trace agent through Datakit Operator, or manually mount the trace agent to the application container:

apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      containers:
        - name: <CONTAINER_NAME>
          image: <CONTAINER_IMAGE>/<TAG>
          env: 

Parameter configuration:

  1. service.name: Service name;
  2. env: Environment information of the application service;
  3. version: Version number;
  4. Customize DataKit listening address, if not set, follow the default address;
  5. Set sampling rate: After enabling, it can reduce the actual amount of data generated; the number range is from 0.0(0%) ~ 1.0(100%);
  6. Collect Profiling data: After enabling, you can see more information about the application runtime;
  7. Enable JVM metric collection: Requires enabling the statsd collector simultaneously.

For more parameter configurations, refer to here.

Python

Install dependencies:

pip install ddtrace

Run the application:

apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      containers:
        - name: <CONTAINER_NAME>
          image: <CONTAINER_IMAGE>/<TAG>
          env: 
            - name: DD_AGENT_HOST
              value: "datakit-service.datakit.svc"
            - name: DD_TRACE_AGENT_PORT
              value: 9529

Parameter configuration:

  1. service.name: Service name;
  2. env: Environment information of the application service;
  3. version: Version number;
  4. Customize DataKit listening address, if not set, follow the default address;
  5. Set sampling rate for the service: After enabling, it can reduce the actual amount of data generated; the number range is from 0.0(0%) ~ 1.0(100%);
  6. Collect Profiling data: After enabling, you can see more information about the application runtime;
  7. Enable Python metric collection: Requires enabling the statsd collector simultaneously.

For more parameter configurations, refer to here.

Golang

Install dependencies:

go get gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer

Run the application:

apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      containers:
        - name: <CONTAINER_NAME>
          image: <CONTAINER_IMAGE>/<TAG>
          env: 
            - name: DD_AGENT_HOST
              value: "datakit-service.datakit.svc"
            - name: DD_TRACE_AGENT_PORT
              value: 9529

Parameter configuration:

  1. service.name: Service name;
  2. env: Environment information of the application service;
  3. version: Version number;
  4. Customize DataKit listening address, if not set, follow the default address;
  5. Set sampling rate: After enabling, it can reduce the actual amount of data generated; the number range is from 0.0(0%) ~ 1.0(100%).

For more parameter configurations, refer to here.

Node.JS

Run the application:

apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      containers:
        - name: <CONTAINER_NAME>
          image: <CONTAINER_IMAGE>/<TAG>
          env: 
            - name: DD_AGENT_HOST
              value: "datakit-service.datakit.svc"
            - name: DD_TRACE_AGENT_PORT
              value: 9529

Parameter configuration:

  1. service.name: Service name;
  2. env: Environment information of the application service;
  3. version: Version number;
  4. Customize DataKit listening address, if not set, follow the default address;
  5. Set sampling rate: After enabling, it can reduce the actual amount of data generated; the number range is from 0.0(0%) ~ 1.0(100%).

C++

PHP

Run the application:

apiVersion: apps/v1
kind: Deployment
spec:
  template:
    spec:
      containers:
        - name: <CONTAINER_NAME>
          image: <CONTAINER_IMAGE>/<TAG>
          env: 
            - name: DD_AGENT_HOST
              value: "datakit-service.datakit.svc"
            - name: DD_TRACE_AGENT_PORT
              value: 9529

Parameter configuration:

  1. service.name: Service name;
  2. env: Environment information of the application service;
  3. version: Version number;
  4. Customize DataKit listening address, if not set, follow the default address;
  5. Set sampling rate for the service: After enabling, it can reduce the actual amount of data generated; the number range is from 0.0(0%) ~ 1.0(100%);
  6. Collect Profiling data: After enabling, you can see more information about the application runtime.

Feedback

Is this page helpful? ×