Skip to content

clrxbl/piraeus

 
 

Repository files navigation

Piraeus Datastore - High-Availability Datastore for Kubernetes

Piraeus is a high performance, highly-available, simple, secure, and cloud agnostic storage solution for Kubernetes.

The Piraeus Project consists of:

  • A Kubernetes Operator to create, configure and maintain all components of Piraeus.
  • A CSI Driver to provision persistent volumes and snapshots on the storage cluster maintained by Piraeus.
  • A High Availability Controller to speed up the failover process of stateful workloads
  • A Volume Affinity Controller, keeping Kubernetes Persistent Volumes reported affinity in sync with the cluster.
  • Container images for the open source components Piraeus is built on:
    • DRBD is used as the underlying storage replication mechanism between cluster nodes. Documentation is provided by LINBIT.
    • LINSTOR creates and manages volumes on request of the CSI Driver, sets up replication using DRBD and prepares the backing storage devices. Documentation is provided by LINBIT.

Piraeus is a CNCF Sandbox Project.

Getting started

Installing Piraeus can be as easy as:

$ kubectl apply --server-side -k "https://github.com/piraeusdatastore/piraeus-operator//config/default?ref=v2"
namespace/piraeus-datastore configured
...
$ kubectl wait pod --for=condition=Ready -n piraeus-datastore -l app.kubernetes.io/component=piraeus-operator
pod/piraeus-operator-controller-manager-dd898f48c-bhbtv condition met
$ kubectl apply -f - <<EOF
apiVersion: piraeus.io/v1
kind: LinstorCluster
metadata:
  name: linstorcluster
spec: {}
EOF

Head on over to the Piraeus Operator docs to learn more. It contains detailed instructions on how to get started using Piraeus.

It also contains a basic Helm chart. See here.

Contributing

You are welcome to contribute on Piraeus. See CONTRIBUTING.md for how to get started.

Community

Active communication channels:

License

Piraeus Datastore is licensed under the Apache License, Version 2.0. See LICENSE.

About

High Available Datastore for Kubernetes

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 62.7%
  • Dockerfile 20.2%
  • Makefile 17.1%