Skip to content

[Feature]: Support Jaeger-v2 Operator #2717

Open

Description

Part of LFX Mentorship 2024 Term 3 jaegertracing/jaeger#5772.

Background

Jaeger is an open-source, end-to-end distributed tracing system that helps monitor and troubleshoot transactions in complex, microservices-based environments. Jaeger v2 is a major new version where we rebase all Jaeger backend components (agent, collector, ingester, and query) on top of the OpenTelemetry Collector, bringing significant improvements and changes to the platform.

Jaeger-v1 has its own Kubernetes Operator which deploys Jaeger components according to the deployment strategy as well as the database or datastore.

Relevant links:

Project Objective

The goal of this project is to develop a new operator for Jaeger-v2 that achieves feature parity with the v1 operator while introducing improvements and new capabilities. This new operator will leverage the OpenTelemetry operator for Jaeger-v2 deployment while maintaining and enhancing the storage management features from the v1 operator.

Key Features and Implementation

  1. OpenTelemetry Integration

    • Utilize the OpenTelemetry operator for deploying and managing collectors in Jaeger v2.
    • Ensure seamless integration between Jaeger components and OpenTelemetry-managed collectors.
  2. Deployment Strategies

    • Implement various deployment strategies for Jaeger components, mirroring the flexibility offered in v1.
    • Ensure compatibility with different Kubernetes environments and versions.
  3. Configuration Management

    • Develop a robust configuration management system that allows users to easily customize Jaeger deployments.
    • Implement ConfigMap and Secret management for sensitive configuration data.
  4. Documentation and Examples

    • Create comprehensive documentation for the new operator, including installation, configuration, and usage guidelines.
    • Develop a set of example deployments and use-cases to help users get started quickly.
    • Design and implement documentation to allow for a smooth upgrade path from Jaeger v1 to v2.

Expected Outcome

By the end of this project, we aim to achieve full feature parity between the Jaeger v2 operator and the v1 operator, with the added benefits of OpenTelemetry integration. The new operator will provide a seamless experience for users, maintaining the robustness and flexibility of v1 while introducing the advantages of v2 and OpenTelemetry.

Please note that Jaeger v2 operator will not manage/orchestrate the storage backends and we should provide documentation pointing to the Operators for Cassandra, ElasticSearch, and OpenSearch for the users to install and manage the datastores.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

  • Status

    In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions