Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hashicorp/nomad-open-telemetry-getting-started
OpenTelemetry getting started guides on Nomad
https://github.com/hashicorp/nomad-open-telemetry-getting-started
Last synced: about 1 month ago
JSON representation
OpenTelemetry getting started guides on Nomad
- Host: GitHub
- URL: https://github.com/hashicorp/nomad-open-telemetry-getting-started
- Owner: hashicorp
- License: mpl-2.0
- Created: 2021-07-21T22:29:51.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-02-13T18:55:45.000Z (over 1 year ago)
- Last Synced: 2024-09-27T12:42:07.603Z (about 2 months ago)
- Size: 28.3 KB
- Stars: 42
- Watchers: 16
- Forks: 12
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Getting Started with OpenTelemetry on HashiCorp Nomad
This repository contains reference job files to run the [OpenTelemetry collector](https://opentelemetry.io/docs/collector/)
in different deployment scenarios, as described in the [Getting Started](https://opentelemetry.io/docs/collector/getting-started/)
guide._These job files are provided as reference only, and are not designed for
production use._## Deployment
From the official documentation:
> The OpenTelemetry Collector consists of a single binary and two primary deployment methods:
>
> - **Agent**: A Collector instance running with the application or on the same host as the application (e.g. binary, sidecar, or daemonset).
> - **Gateway**: One or more Collector instances running as a standalone service (e.g. container or deployment) typically per cluster, datacenter or region.To run the job files you will need access to a Nomad cluster running version
1.3.0+. You can start a local dev agent for Nomad by downloading the
[`nomad`](https://www.nomadproject.io/downloads) binary and running the
following command:```shell-session
sudo nomad agent -dev -bind=0.0.0.0 -network-interface='{{ GetPrivateInterfaces | attr "name" }}'
```### Gateway
The OpenTelemetry Collector can run as a gateway by registering a
[service](https://www.nomadproject.io/docs/schedulers#service) job.```shell-session
nomad run https://raw.githubusercontent.com/hashicorp/nomad-open-telemetry-getting-started/main/examples/nomad/otel-collector.nomad
```### Agent
The OpenTelemetry Collector can run as an agent by registering a
[system](https://www.nomadproject.io/docs/schedulers#system) job.It connects to the gateway deployed in the previous section as an OTLP
exporter, so make sure the gateway job is running as well.```shell-session
nomad run https://raw.githubusercontent.com/hashicorp/nomad-open-telemetry-getting-started/main/examples/nomad/otel-agent.nomad
```### Demo
The demo job deploys the OpenTelemetry Collector as agent and gateway, load
generators, and the Jaeger, Zipkin and Prometheus back-ends.```shell-session
nomad run https://raw.githubusercontent.com/hashicorp/nomad-open-telemetry-getting-started/main/examples/nomad/otel-demo.nomad
```The following services are available:
* Jaeger: http://:16686
* Zipkin: http://:9411
* Prometheus: http://:9090## Community Resources
- [Just-in-Time Nomad: Running the OpenTelemetry Collector on Hashicorp Nomad with HashiQube][adri_v_nomad_otel] by [Adri V](https://adri-v.medium.com/)
- Deploy the OpenTelemetry Collector using the [Nomad Pack][otel_pack] by @jharley[adri_v_nomad_otel]: https://adri-v.medium.com/just-in-time-nomad-running-the-opentelemetry-collector-on-hashicorp-nomad-with-hashiqube-4eaf009b8382
[otel_pack]: https://github.com/hashicorp/nomad-pack-community-registry/tree/main/packs/opentelemetry_collector