Home

Awesome

Orion

Orion is a generalized pluggable management and automation platform for stateful distributed systems. Orion provides a unified interface of one or more clusters to both human and machine operators. Orion is capable of efficiently handling thousands of nodes spread across of 10s of clusters.

Our intent is to use automation to handle commonly encountered operations issues and build a library of learnings from experiences of various large scale environments like ours.

Problem

Orion aims to address the following problems:

Key Features

Current State

Orion is actively under development and the API may change over time.

Orion currently supports management of the following systems:

Usage

Orion allows implementations of user defined Actions which are made available via both UI and as well as automated Operators which allows engineers to program automated remediation of issues based on information from Sensors in a large environment.

Example:

Temporarily move topics off of particular brokers

In order to temporarily move all topics off of a set of brokers, you can add a brokersetOverrides.json in a cluster's config folder with the brokerset.json. This file should take the form:

{
  "startBrokerIn": 1,
  "endBrokerIn": 3,
  "startBrokerOut": 4,
  "endBrokerOut": 6
}

This configuration will make sure that any brokerset that includes the brokers from 1-3 are replaced with the brokers 4-6 This makes it easier to move multiple topics off of particular brokers for maintenance. Once finished, remove the file to let the original brokers reassert themselves.

Architecture

Image of Orion's Architecture

Quick Start

Detailed quick install can be found here

Dr.Kafka to Orion Migration

If you were previously using Dr.Kafka you can find instructions on migrating to Orion here

Maintainers

Contributors

License

Orion is distributed under Apache License, Version 2.0.