stasher — a distributed object repository

Index

Introduction
Features, and a brief overview
Security model
Installation, and requirements

Introduction

stasher is a server that implements a distributed, transactional object repository cluster. stasher typically runs on more than one network server, forming a cluster. Each machine in a cluster is called a node. stasher replicates and copies all objects in the repository to all nodes, automatically. An object is just a small to a medium-sized file. There's a limit on the maximum object size. The default maximum object size is 32Mb.

stasher would be mainly used by dedicated applications that are written to use stasher's C++ API. The API provides means for connecting to a cluster, retrieving the contents of existing objects; and putting other objects into the cluster. There's also a basic, interactive stasher tool that provides a simple shell-like interface to an object repository, interactively, from a command line.

distreboot demonstrates a simple stasher application. distreboot implements a distributed reboot of multiple servers, one at a time.

There's other software, similar to stasher, with similar features. Specifically, there are entire distributed filesystems, that present something that looks like an ordinary filesystem partition, which is accessible from multiple machines. The grand-daddy of them all, of course, is NFS. There are other, more modern ones too.

stasher is based on LIBCXX which currently works on Linux only, and is partially stable on FreeBSD 9. stasher is free software, distributed under the terms of the GPL, version 3.