Code Monkey home page Code Monkey logo

ecchronos's Introduction

ecChronos

codecov maven central

ecChronos is a decentralized scheduling framework primarily focused on performing automatic repairs in Apache Cassandra.

The aim of ecChronos is to provide a simple yet effective scheduler that helps in maintaining a cassandra cluster. It is primarily used to run repairs but can be extended to run all manner of maintenance work as well.

  • Automate the process of keeping cassandra repaired.
  • Split a table repair job into many smaller subrange repairs
  • Expose statistics on how well repair is keeping up with the churn of data
  • Flexible through many different plug-in points to customize to your specific use case

ecChronos is a helper application that runs next to each instance of Apache Cassandra. It handles maintenance operations for the local node. The repair tasks make sure that each node runs repair once every interval. The interval is configurable but defaults to seven days.

More details on the underlying infrastructure can be found in ARCHITECTURE.md.

More information on the REST interface of ecChronos is described in REST.md.

Prerequisites

  • JDK 11
  • Python 3.8

Installation

Installation instructions can be found in SETUP.md.

Command line utility

In standalone installation, a command line utility called ecctool is provided. For more information about ecctool refer to ECCTOOL.md.

Getting Started

Instructions on how to use ecChronos and configure it to suit your needs can be found in GETTING_STARTED.md

Upgrade

Upgrade instructions can be found in UPGRADE.md.

Compatibility with Cassandra versions

For information about which ecChronos versions have been tested with which Cassandra versions can be found in COMPATIBILITY.md

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, development, and the process for submitting pull requests to us.

Versioning

We try to adhere to SemVer for versioning.

  • Anything requiring changes to configuration or plugin APIs should be released in a new major version.
  • Anything extending configuration or plugins in a backwards compatible way should be released in a new minor version.
  • Bug fixes should be made for the first known version and merged forward.

Authors

  • Marcus Olsson - Initial work - emolsson

See also the list of contributors who participated in this project.

License

This project is licensed under the Apache License - see the LICENSE.md file for details

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.