# OpenTelemetry Integration on AirGapped Environment

**URL:** <https://discuss.elastic.co/t/opentelemetry-integration-on-airgapped-environment/385042>\
**Category:** Elastic Agent\
**Created:** [February 13, 2026, 2:53pm UTC](https://discuss.elastic.co/t/opentelemetry-integration-on-airgapped-environment/385042 "2026-02-13T14:53:16Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![gbschenkel](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/gbschenkel/32/96985_2.png) [@gbschenkel](https://discuss.elastic.co/u/gbschenkel)\
**Post date:** [February 13, 2026, 2:53pm UTC](https://discuss.elastic.co/t/opentelemetry-integration-on-airgapped-environment/385042/1 "2026-02-13T14:53:17Z")

</div>

Hi, we have two ELK clusters, one for production and other for monitoring.

The cluster don’t have access to internet, so is an AirGapped environment, the Elastic Artifacts are being rerouted using Sonatype Nexus Repository as Agent Binary Download, and the Elastic Package Registry is been hosted on OpenShift, using the “distribuition” version.

I found an Issue when trying to deploy an Integration of OpenTelemetry Collector, it give the error: `[system_otel] package not installed of found in registry`

Looking for this, I think the Kibana/Fleet is trying to access the otel schema on [OpenTelemetry.io](http://OpenTelemetry.io) or in [GitHub.com](http://GitHub.com) which has the latest schema in there.

Said that, if this is true, how can I configure the fleet/kibana to use Nexus to access the data?  
Are any plans to host it direct on Elastic Artifacts since I think this OTel Integration is in fact EDOT Collector?

---

<div class="post-metadata">

**Author:** ![gbschenkel](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/gbschenkel/32/96985_2.png) [@gbschenkel](https://discuss.elastic.co/u/gbschenkel)\
**Post date:** [February 19, 2026, 6:27pm UTC](https://discuss.elastic.co/t/opentelemetry-integration-on-airgapped-environment/385042/2 "2026-02-19T18:27:52Z")

</div>

I was hosting the _[docker.elastic.co/package-registry/distribution:9.3.0](http://docker.elastic.co/package-registry/distribution:9.3.0)_ and I tried to change it to _[docker.elastic.co/package-registry/distribution:production](http://docker.elastic.co/package-registry/distribution:production)_ and the [https://epr.elastic.co/package/system\_otel/0.2.5/](https://epr.elastic.co/package/system_otel/0.2.5/) don’t exist in both images.

I tried to use Sonatype Nexus Repository to proxy the EPR, but it’s performance in this case is a bit awful.

I will continue to try to find a way, since the EPR images have 33GB.

---

<div class="post-metadata">

**Author:** ![gbschenkel](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/gbschenkel/32/96985_2.png) [@gbschenkel](https://discuss.elastic.co/u/gbschenkel)\
**Post date:** [February 19, 2026, 7:31pm UTC](https://discuss.elastic.co/t/opentelemetry-integration-on-airgapped-environment/385042/3 "2026-02-19T19:31:48Z")

</div>

Okay, I was able to use Nexus to proxy the [epr.elastic.co](http://epr.elastic.co), the performance issue was the Kibana was complaining about the internal certificate, which I resolved using `NODE_EXTRA_CA_CERTS`, this can be set on `sysconfig` or overriding kibana `systemd` config.

Now I am getting other issue.

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/5/0/50ed5ba3293e9fe638afc3a609e9f19058ee0ba4.png)

It only show this error when on the `Overview` tab, other tabs appears are working

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/1/9/191903d7660da65035f81c98e59a22467f966c9d.png)

Maybe the problem is with Nexus, I need to investigate, but the weird part is Kibana showing `text/x-yaml` instead of `application/x-yaml` which is the standard now since `text/x-yaml` is not UTF-8 complaint.

---

<div class="post-metadata">

**Author:** ![gbschenkel](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/gbschenkel/32/96985_2.png) [@gbschenkel](https://discuss.elastic.co/u/gbschenkel)\
**Post date:** [February 20, 2026, 4:47pm UTC](https://discuss.elastic.co/t/opentelemetry-integration-on-airgapped-environment/385042/4 "2026-02-20T16:47:58Z")

</div>

The weirdness didn’t stopped.

```json
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:26:56.920-03:00","message":"'404 Not Found' error response from package registry at https://nexus/repository/epr-elastic/package/threat_map/1.34.0/changelog.yml","log":{"level":"ERROR","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":76878.851975498},"trace":{"id":"05a5605deeabe2b1c832aaa5658f5186"},"transaction":{"id":"d9e2b75b2a3645a2"}}
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:26:58.970-03:00","message":"'404 Not Found' error response from package registry at https://nexus/repository/epr-elastic/package/threat_map/1.34.0/changelog.yml","log":{"level":"ERROR","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":76880.902096593},"trace":{"id":"c598dc562cc3d66fe38f848b97cd7b4a"},"transaction":{"id":"07731c01780ee4e9"}}
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:35:48.910-03:00","message":"getPackage - otel_internal_telemetry-1.34.0 failed with error: PackageNotFoundError: otel_internal_telemetry@1.34.0 not found","log":{"level":"WARN","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":77410.843090167},"trace":{"id":"d637e85b9d12d0248a0cc1fb02461e8e"},"transaction":{"id":"2819774922a5d233"}}
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:35:48.912-03:00","message":"otel_internal_telemetry@1.34.0 not found","log":{"level":"ERROR","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":77410.843482981},"trace":{"id":"d637e85b9d12d0248a0cc1fb02461e8e"},"transaction":{"id":"2819774922a5d233"}}
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:35:48.918-03:00","message":"getPackage - otel_internal_telemetry-1.34.0 failed with error: PackageNotFoundError: otel_internal_telemetry@1.34.0 not found","log":{"level":"WARN","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":77410.849554084},"trace":{"id":"5b48d2de08ff51ef526f877a59fa2b43"},"transaction":{"id":"ef4382cc7f68b165"}}
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:35:48.918-03:00","message":"otel_internal_telemetry@1.34.0 not found","log":{"level":"ERROR","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":77410.849860826},"trace":{"id":"5b48d2de08ff51ef526f877a59fa2b43"},"transaction":{"id":"ef4382cc7f68b165"}}
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:36:01.931-03:00","message":"getPackage - system_otel-1.34.0 failed with error: PackageNotFoundError: system_otel@1.34.0 not found","log":{"level":"WARN","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":77423.863319837},"trace":{"id":"c622538b8c126cf4262f2bace52a2089"},"transaction":{"id":"5900c6bb4129700f"}}
{"service":{"node":{"roles":\["background_tasks","ui"\]}},"ecs":{"version":"9.0.0"},"@timestamp":"2026-02-20T13:36:01.932-03:00","message":"system_otel@1.34. not found","log":{"level":"ERROR","logger":"plugins.fleet"},"process":{"pid":784662,"uptime":77423.864080052},"trace":{"id":"c622538b8c126cf4262f2bace52a2089"},"transaction":{"id":"5900c6bb4129700f"}}

```

The OpenTelemetry integration is on 0.2.5, then why Kibana is trying to access the 1.34.0? Looking for 1.34.0 on EPR(search), I found `1password` and `Network Traffic` using this specific version, maybe it are not parsing the correct version? A few Integrations show this issue while navigating, but appears downloading it is not a problem, because I can see in Nexus and on Integration Installed, they are there.

Just adding the OpenTelemetry still are not operational, it show some instruction to download manually while showing the `system_otel not found` then I don't know if the procedure is true manually or if Elastic Agent can or can't deply an Elastic Collector and manage the pipeline from Kibana interface.

---

<div class="post-metadata">

**Author:** ![gbschenkel](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/gbschenkel/32/96985_2.png) [@gbschenkel](https://discuss.elastic.co/u/gbschenkel)\
**Post date:** [March 6, 2026, 2:11pm UTC](https://discuss.elastic.co/t/opentelemetry-integration-on-airgapped-environment/385042/5 "2026-03-06T14:11:27Z")

</div>

Okay, I just found out the Nexus can't handle dynamic api url which is the case of the `epr.elastic.co`, when trying to use with it, the content-type gets rewrited, and it receive as text/html instead of application/json, that is why I got this weird Issues on Kibana, when I select some integrations.

Then to resolve this issue, or Elastic/Package Registry Team need to deploy all packages on the container image, or I need to allow Kibana server to access the `epr.elastic.co` directly or indirectly using a reverse proxy instead, but then I will not have an AirGapped environment.
