Clymene

module
v1.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 1, 2022 License: Apache-2.0

README

Clymene

CII Best Practices CodeQL License GitHub release (latest by date) Go Reference
Go Docker ElasticSearch Kubernetes

The Clymene is a time series data collection platform for distributed systems inspired by Prometheus and Jaeger. Time series data from various environments can be collected and stored in different types of databases. It can be configured in a variety of architectures. Various time series data analysis functions will be added.

Clymene는 PrometheusJaeger에서 영감을 받은 분산 시스템을 위한 시계열 데이터 수집 플랫폼입니다. 다양한 환경의 시계열 데이터를 수집하고 여러 종류의 데이터베이스에 저장할 수 있습니다. 여러 컴포넌트를 이용해 다양한 아키텍처로 구성할 수 있습니다. 다양한 시계열 데이터 분석 기능이 추가될 예정입니다.

Architecture

Use only agent

Agent can store time series data in a variety of DBs and support Composite Writers that can be stored in multiple DBs at once.

architecture_v1.2.0

Including kafka and ingester

Ingester consumes time series data loaded on kafka, can store time series data in various DBs, and supports Composite Writers that can be stored in multiple DBs at once.

architecture_v1.2.0_ingester
Use gateway

Gateway collects time series data through gRPC communication, stores time series data in various DBs, and supports Composite Writers that can be stored in multiple DBs at once.

architecture_v1.2.0_gateway

components

Clymene Agent(Getting Started)

dockerhub : bourbonkk/clymene-agent:v1.2.1
redhatQuay: quay.io/clymene/clymene-agent:v1.2.1
Docker Pulls Docker Repository on Quay
The Clymene-agent is service that collects time series data(does not use disks)

  1. Service Discovery
  2. scrape time series data
  3. Time-series data transfer to gateway(gRPC) (Optional)
  4. Time-series data transfer to kafka (Optional)
  5. Time-series data insert to Database(ElasticSearch, Prometheus, cortex, gateway, Opentsdb) (Optional)
Clymene Ingester(Optional) (Getting Started)

dockerhub : bourbonkk/clymene-ingester:v1.2.1
redhatQuay: quay.io/clymene/clymene-ingester:v1.2.1
Docker Pulls Docker Repository on Quay
The Clymene ingester is an optional service responsible for insert time series data loaded on kafka into the database.

  1. Kafka message consume
  2. Time-series data insert to Database(ElasticSearch, Prometheus, cortex, gateway, Opentsdb) (Optional)
Clymene Gateway(Optional) (Getting Started)

dockerhub : bourbonkk/clymene-gateway:v1.2.1
redhatQuay: quay.io/clymene/clymene-gateway:v1.2.1
Docker Pulls Docker Repository on Quay
The Clymene Gateway is an optional service that can receive metric data from the another component through gRPC communication.

  1. gRPC Service
  2. Time-series data insert to Database(ElasticSearch, Prometheus, cortex, Opentsdb) (Optional)

How to work it on k8s

For example, see the clymene_using_gateway.yaml

How to work it on docker-compose

For example, see the docker-compose-clymene_using_gateway.yml

Roadmap

  1. Various DB support(influxdb, kdb, druid)
  2. AI/ML platform for clymene(https://github.com/Clymene-project/clymene-analyzer)
  3. Website development for clymene(https://github.com/Clymene-project/documentation)

Get in Touch

Have questions, suggestions, bug reports? Reach the project community via these channels:

License

Apache License 2.0, see LICENSE.

Code Style

1. https://github.com/golang/go/wiki/CodeReviewComments
2. https://peter.bourgon.org/go-in-production/#formatting-and-style

Directories

Path Synopsis
cmd
agent command
gateway command
ingester command
pkg
es
metrics
Package metrics provides command line flags for configuring the metrics backend.
Package metrics provides command line flags for configuring the metrics backend.
Package plugin is the collection of implementations of different interfaces defined across Clymene For example, implementations of the storage interface can be found in the plugin package
Package plugin is the collection of implementations of different interfaces defined across Clymene For example, implementations of the storage interface can be found in the plugin package
Package prompb is a reverse proxy.
Package prompb is a reverse proxy.
util
promlint
Package promlint provides a linter for Prometheus metrics.
Package promlint provides a linter for Prometheus metrics.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL