cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Instrumenting ingress-nginx: Error loading shared library ld-linux-x86-64.so.2: No such file or directory

YuriiB
Observer

Hello,

We're currently facing a challenge with setting up instrumentation for ingress nginx within a Kubernetes cluster managed by Rancher. We're using Nginx version 1.19.10 on CentOS Linux 7.

Following the steps outlined in Instrument ingress-nginx - Dynatrace Docs, we updated the nginx config map to include the Nginx module. However, this resulted in errors within the Nginx pods. The error message indicates a failure to load the shared library ld-linux-x86-64.so.2, which is required by /opt/dynatrace/oneagent/agent/bin/current/linux-x86-64/liboneagentnginx.so, as detailed in the error log. Could anyone shed light on why the shared library fails to load?

 

Error reloading NGINX: ------------------------------------------------------------------------------- Error: exit status 1 2024/07/09 18:20:32 [emerg] 888#888: dlopen() "/opt/dynatrace/oneagent/agent/bin/current/linux-x86-64/liboneagentnginx.so" failed (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /opt/dynatrace/oneagent/agent/bin/current/linux-x86-64/liboneagentnginx.so)) in /tmp/nginx/nginx-cfg2083950123:15 nginx: [emerg] dlopen() "/opt/dynatrace/oneagent/agent/bin/current/linux-x86-64/liboneagentnginx.so" failed (Error loading shared library ld-linux-x86-64.so.2: No such file or directory (needed by /opt/dynatrace/oneagent/agent/bin/current/linux-x86-64/liboneagentnginx.so)) in /tmp/nginx/nginx-cfg2083950123:15 nginx: configuration file /tmp/nginx/nginx-cfg2083950123 test failed

 


OneAgent version is 1.293.153

7 REPLIES 7

YuriiB
Observer

Also, ingress-nginx process has this warning:

yurii_0-1720557892845.png

PacoPorro
Dynatrace Leader
Dynatrace Leader

Did anything change in OneAgent version 1.293? It was working properly before this version.

I've already seen that, but it doesn't clarify why the Nginx instrumentation has begun to cause problems.

Hi @YuriiB 

Did you try to use earlier version of OA (instead of latest, request a specific old version)?

Yos 

dynatrace certificated professional - dynatrace master partner - Matrix Soft Ware Division - Israel

I wanted to let you know that we've identified the cause of the nginx instrumentation issue. According to the Dynatrace documentation we followed, found here Instrument ingress-nginx - Dynatrace Docs, it recommends using the following entry under the main-snippet key: load_module /opt/dynatrace/oneagent/agent/bin/current/linux-musl-x86-64/liboneagentnginx.so;

This solution is effective for certain Linux operating systems, such as Cento OS, but not for others. For instance, on Linux Rocky 9, the correct module to load is  /opt/dynatrace/oneagent/agent/bin/current/linux-x86-64/liboneagentnginx.so;

 

Initially, when we enabled nginx instrumentation, we used the correct library path. However, after temporarily disabling it to assess its impact on performance and later re-enabling it by following the DT documentation, we encountered this issue. This led us to believe the problem might be related to the new version of OA.

It would be helpful if DT could reflect this variation across different Linux versions in that page.

Featured Posts