Giter Site home page Giter Site logo

fury-kubernetes-tracing's Introduction

Kubernetes Fury Tracing

Release License Slack

Kubernetes Fury Tracing provides a tracing stack for the Kubernetes Fury Distribution (KFD).

If you are new to KFD please refer to the official documentation on how to get started with KFD.

Overview

Kubernetes Fury Tracing uses a collection of open source tools to provide the most resilient and robust tracing stack for the cluster.

The module contains the tempo tool from grafana.

All the components are deployed in the tracing namespace in the cluster.

Package Version Description
tempo-distributed 2.3.1 Distributed Tempo deployment
minio-ha vRELEASE.2023-01-12T02-06-16Z Three nodes HA MinIO deployment

Click on each package to see its full documentation.

Compatibility

Kubernetes Version Compatibility Notes
1.26.x No known issues
1.27.x No known issues
1.28.x No known issues
1.29.x No known issues

Check the compatibility matrix for additional information about previous releases of the modules.

Usage

Prerequisites

Tool Version Description
furyctl >=0.25.0 The recommended tool to download and manage KFD modules and their packages. To learn more about furyctl read the official documentation.
kustomize >=3.5.3 Packages are customized using kustomize. To learn how to create your customization layer with kustomize, please refer to the repository.

Deployment

Include the tracing module configuration in your furyctl.yaml file, specifically under the spec.distribution.modules.tracing section. This streamlined approach enhances the deployment process by seamlessly integrating with the Kubernetes Fury Distribution management tools.

Here is an example snippet for the furyctl.yaml file that demonstrates how to configure the tracing module with Tempo as the tracing system and High Availability (HA) MinIO instance for storage:

spec:
  distribution:
    modules:
      tracing:
        type: tempo
        minio:
          storageSize: "20Gi"

Legacy Deployment

  1. List the packages you want to deploy and their version in a Furyfile.yml
bases:
  - name: tracing
    version: "v1.0.3"

See furyctl documentation for additional details about Furyfile.yml format.

  1. Execute furyctl legacy vendor -H to download the packages

  2. Inspect the download packages under ./vendor/katalog/tracing.

  3. Define a kustomization.yaml that includes the ./vendor/katalog/tracing directory as resource.

resources:
- ./vendor/katalog/tracing/minio-ha
- ./vendor/katalog/tracing/tempo-distributed
  1. To deploy the packages to your cluster, execute:
kustomize build . | kubectl apply -f -

Note: When installing the packages, you need to ensure that the Prometheus operator is also installed. Otherwise, the API server will reject all ServiceMonitor resources.

Contributing

Before contributing, please read first the Contributing Guidelines.

Reporting Issues

In case you experience any problems with the module, please open a new issue.

License

This module is open-source and it's released under the following LICENSE

fury-kubernetes-tracing's People

Contributors

mimnix avatar nutellinoit avatar paranoiasystem avatar ralgozino avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.