|
| 1 | +--- |
| 2 | +title: Adding OpenTelemetry support to the Otterize network mapper |
| 3 | +linkTitle: OTel integration for Otterize network mapper |
| 4 | +date: 2023-11-15 |
| 5 | +author: >- |
| 6 | + [Ori Shoshan](https://github.com/orishoshan) (Otterize), [David G. |
| 7 | + Simmons](https://github.com/davidgs) (Otterize) |
| 8 | +cSpell:ignore: brainer Otterize Shoshan |
| 9 | +--- |
| 10 | + |
| 11 | +{{< blog/integration-badge >}} |
| 12 | + |
| 13 | +## A no-brainer integration: Adding OpenTelemetry support to the Otterize network mapper |
| 14 | + |
| 15 | +[Otterize](https://otterize.com/) automates workload Identity and Access |
| 16 | +Management (IAM) for zero-trust, automating policies like Kubernetes network |
| 17 | +policies, Istio policies, AWS IAM policies, and more, through a collection of |
| 18 | +[open source projects](https://github.com/otterize). To enable that automation, |
| 19 | +Otterize built the [network mapper](https://github.com/otterize/network-mapper). |
| 20 | +Otterize network mapper is a standalone Kubernetes tool that builds a live |
| 21 | +network map of your infrastructure, and can visualize it into an image file, as |
| 22 | +an interactive graph on Otterize Cloud, or export it as ClientIntents, a custom |
| 23 | +Kubernetes resource that describes each workload’s required access, or their |
| 24 | +“intentions”. It’s designed to be a zero-config deployment that immediately |
| 25 | +provides a network map, along with being light on resource use, and requiring |
| 26 | +the lowest privileges possible. At its core, it collects DNS traffic and |
| 27 | +analyzes it to figure out what communications look like. |
| 28 | + |
| 29 | +The awesome folks at |
| 30 | +[ServiceNow Cloud Observability](https://www.servicenow.com/products/observability.html) |
| 31 | +(formerly Lightstep) |
| 32 | +[recently contributed OpenTelemetry exporting support to the network mapper](https://github.com/otterize/network-mapper/pull/141). |
| 33 | +This means that you can now use the network mapper to generate a network map of |
| 34 | +your infrastructure, and export OpenTelemetry data to a Grafana Tempo instance, |
| 35 | +to see a service graph without making any changes to the services deployed in |
| 36 | +your cluster. |
| 37 | + |
| 38 | +[A screenshot showing a Grafana Tempo service graph](otterize-otel.png) |
| 39 | + |
| 40 | +This integration was simple: the OpenTelemetry SDK is easy to use and fits like |
| 41 | +a glove into the existing network mapper code. |
| 42 | + |
| 43 | +### How does OpenTelemetry work with the network mapper? |
| 44 | + |
| 45 | +With the service graph, you'll be able to see what services are communicating |
| 46 | +with each other. You can then use that information for operational or security |
| 47 | +needs, such as determining the blast radius of a downtime or security incident. |
| 48 | +You can use the service graph to figure out where to start rolling out |
| 49 | +OpenTelemetry tracing, as that deployment tends to be more involved and requires |
| 50 | +the integration of the OpenTelemetry SDK into your source code. |
| 51 | + |
| 52 | +While it was easy to use the OTel SDK for the network mapper, we can see why |
| 53 | +there's a bit of a chicken-and-egg problem here when you're looking into |
| 54 | +OpenTelemetry: to start seeing significant value with tracing, you really need |
| 55 | +to see a bunch of services together, and that can be a lot to do as your first |
| 56 | +step. |
| 57 | + |
| 58 | +Since the network mapper doesn’t require you to change any of your existing |
| 59 | +application code, the barrier to entry for getting started with OpenTelemetry is |
| 60 | +significantly reduced. This is a great way to get started with emitting |
| 61 | +OpenTelemetry metrics for each service in your infrastructure and to |
| 62 | +understanding how your services interact with each other, before committing to a |
| 63 | +more significant OpenTelemetry rollout. |
| 64 | + |
| 65 | +### The strength of open source in action! |
| 66 | + |
| 67 | +We never initially contemplated adding this feature because it didn't cross our |
| 68 | +minds, but its value is undeniable, particularly for those deploying the network |
| 69 | +mapper and utilizing Grafana Tempo, or individuals exploring OpenTelemetry. |
| 70 | + |
| 71 | +It's great that the ServiceNow Cloud Observability Team stumbled upon the |
| 72 | +network mapper and graciously contributed this enhancement, making the network |
| 73 | +mapper seamlessly integrate with OpenTelemetry and Grafana. This is the beauty |
| 74 | +of open source collaboration! |
| 75 | + |
| 76 | +If you're interested in exploring or contributing to our project, head on over |
| 77 | +to |
| 78 | +[https://github.com/otterize/network-mapper](https://github.com/otterize/network-mapper). |
0 commit comments