Skip to content

parasource/rhosus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rhosus - distributed file storage

This project is currently under active development, please don't use it yet

rhosus

Rhosus is a fast multipurpose distributed file storage written in Go. It uses BoltDB for memory-based storage backup and etcd for service discovery

Architecture

In Rhosus there are two types of working units: Registry and Node. Node's only purpose is to store raw blocks on machine. The main complexity is on Registry, which decides, where to store blocks, how to store it and so on.

Getting started

Installation

First you need to install etcd for service discovery. Please follow steps on this page

Once you installed etcd, you can now install Rhosus

install registry

$ go install github.com/parasource/rhosus/cmd/rhosusr@latest
$ go install github.com/parasource/rhosus/cmd/rhosusd@latest
$ go install github.com/parasource/rhosus/cmd/rhosus@latest

install datanode

For very basic deployment you need at least one registry and one data node.

$ make build
...
$ bin/rhosusr
$ bin/rhosusd

Starting up

The bare minimum env configuration:

Registry

API_ADDR=127.0.0.1:8001
CLUSTER_ADDR=127.0.0.1:8401
RHOSUS_PATH=/var/lib/rhosus
ETCD_ADRR=127.0.0.1:2379

Data Node

SERVICE_ADDR=127.0.0.1:4500
RHOSUS_PATH=/var/lib/rhosus
ETCD_ADRR=127.0.0.1:2379

About

Rhosus is a multi-purpose distributed storage written in Go

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages