diff --git a/roles/container-engine/containerd/defaults/main.yml b/roles/container-engine/containerd/defaults/main.yml index 9ecace92f00..a6b24843c8b 100644 --- a/roles/container-engine/containerd/defaults/main.yml +++ b/roles/container-engine/containerd/defaults/main.yml @@ -109,3 +109,11 @@ containerd_supported_distributions: # Enable container device interface enable_cdi: false + +# For containerd tracing configuration please check out the official documentation: +# https://github.com/containerd/containerd/blob/main/docs/tracing.md +containerd_tracing_enabled: false +containerd_tracing_endpoint: "0.0.0.0:4317" +containerd_tracing_protocol: "grpc" +containerd_tracing_sampling_ratio: 1.0 +containerd_tracing_service_name: "containerd" \ No newline at end of file diff --git a/roles/container-engine/containerd/templates/config.toml.j2 b/roles/container-engine/containerd/templates/config.toml.j2 index 30773aacc90..088a680abc4 100644 --- a/roles/container-engine/containerd/templates/config.toml.j2 +++ b/roles/container-engine/containerd/templates/config.toml.j2 @@ -92,6 +92,18 @@ oom_score = {{ containerd_oom_score }} disable = false {% endif %} +{% if containerd_tracing_enabled %} + [plugins."io.containerd.tracing.processor.v1.otlp"] + endpoint = "{{ containerd_tracing_endpoint }}" + protocol = "{{ containerd_tracing_protocol }}" + {% if containerd_tracing_protocol == "grpc" %} + insecure = false + {% endif %} + [plugins."io.containerd.internal.v1.tracing"] + sampling_ratio = {{ containerd_tracing_sampling_ratio }} + service_name = "{{ containerd_tracing_service_name }}" +{% endif %} + {% if containerd_extra_args is defined %} {{ containerd_extra_args }} {% endif %}