openstorage

module
v3.0.0-beta+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 12, 2018 License: Apache-2.0

README

Open Storage

Travis branch Docker Pulls Go Report Card

OpenStorage is a clustered implementation of the Open Storage specification and relies on the Docker runtime. It allows you to run stateful services in Linux Containers in a multi-host environment. It plugs into CSI and Docker volumes to provide storage to a container and plugs into Kubernetes and Mesosphere to operate in a clustered environment.

What you get from using Open Storage

When you install openstorage on a Linux host, you will automatically get a stateful storage layer that integrates with CSI or the Docker runtime and operates in a multi host environment. It starts an Open Storage Daemon - OSD that currently supports CSI and DVDI and will support any Linux container runtime that conforms to the OCI.

Scheduler integration

OSD will work with any distributed scheduler that is compatible with the CSI or Docker remote API

OSD with schedulers

CSI

Container Storage Interface is the standard way for a container orchestrator such as Kubernetes or Mesosphere to communicate with a storage provider. OSD provides a CSI implementation to provision storage volumes to a container on behalf of any third party OSD driver and ensures the volumes are available in a multi host environment.

Docker Volumes

OSD integrates with Docker Volumes and provisions storage to a container on behalf of any third party OSD driver and ensures the volumes are available in a multi host environment.

Documents

Licensing

openstorage is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Directories

Path Synopsis
api
Package api is a reverse proxy.
Package api is a reverse proxy.
server/sdk
Package sdk is the gRPC implementation of the SDK gRPC server Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Package sdk is the gRPC implementation of the SDK gRPC server Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Package cluster implements a cluster state machine.
Package cluster implements a cluster state machine.
mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
cmd
osd
Package classification OSD API.
Package classification OSD API.
Package csi is CSI driver interface for OSD Copyright 2017 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Package csi is CSI driver interface for OSD Copyright 2017 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Provides an in-memory fake implementation of the Objectstore Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Provides an in-memory fake implementation of the Objectstore Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
osdconfig is a package to work with distributed config parameters
osdconfig is a package to work with distributed config parameters
pkg
dbg
flexvolume
Package flexvolume implements utility code for Kubernetes flexvolumes.
Package flexvolume implements utility code for Kubernetes flexvolumes.
grpcserver
Package grpcserver is a generic gRPC server manager Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Package grpcserver is a generic gRPC server manager Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
jsonpb
Package jsonpb provides marshaling and unmarshaling between protocol buffers and JSON.
Package jsonpb provides marshaling and unmarshaling between protocol buffers and JSON.
util
Package util provides utility functions for OSD servers and drivers.
Package util provides utility functions for OSD servers and drivers.
Package fake provides an in-memory fake implementation of the Scheduler Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Package fake provides an in-memory fake implementation of the Scheduler Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
drivers/buse
Package buse uses the Linux NBD layer to emulate a block device in user space
Package buse uses the Linux NBD layer to emulate a block device in user space
drivers/fake
Package fake provides an in-memory fake driver implementation Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
Package fake provides an in-memory fake driver implementation Copyright 2018 Portworx Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.
drivers/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL