Skip to main content

Direct usage of Cinder Block Storage drivers without the services

Project description

The Cinder Library, also known as cinderlib, is a Python library that leverages the Cinder project to provide an object oriented abstraction around Cinder’s storage drivers to allow their usage directly without running any of the Cinder services or surrounding services, such as KeyStone, MySQL or RabbitMQ.

The library is intended for developers who only need the basic CRUD functionality of the drivers and don’t care for all the additional features Cinder provides such as quotas, replication, multi-tenancy, migrations, retyping, scheduling, backups, authorization, authentication, REST API, etc.

The library was originally created as an external project, so it didn’t have the broad range of backend testing Cinder does, and only a limited number of drivers were validated at the time. Drivers should work out of the box, and we’ll keep a list of drivers that have added the cinderlib functional tests to the driver gates confirming they work and ensuring they will keep working.

Features

  • Use a Cinder driver without running a DBMS, Message broker, or Cinder service.

  • Using multiple simultaneous drivers on the same application.

  • Basic operations support:

    • Create volume

    • Delete volume

    • Extend volume

    • Clone volume

    • Create snapshot

    • Delete snapshot

    • Create volume from snapshot

    • Connect volume

    • Disconnect volume

    • Local attach

    • Local detach

    • Validate connector

    • Extra Specs for specific backend functionality.

    • Backend QoS

    • Multi-pool support

  • Metadata persistence plugins:

    • Stateless: Caller stores JSON serialization.

    • Database: Metadata is stored in a database: MySQL, PostgreSQL, SQLite…

    • Custom plugin: Caller provides module to store Metadata and cinderlib calls it when necessary.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cinderlib-2.0.0.tar.gz (113.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cinderlib-2.0.0-py3-none-any.whl (78.5 kB view details)

Uploaded Python 3

File details

Details for the file cinderlib-2.0.0.tar.gz.

File metadata

  • Download URL: cinderlib-2.0.0.tar.gz
  • Upload date:
  • Size: 113.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.8

File hashes

Hashes for cinderlib-2.0.0.tar.gz
Algorithm Hash digest
SHA256 158c4ba7075f2ad292e8be9538caa5e14447fef53400194f6f1c2b12731e4f69
MD5 393a8b6a933e433b39b7bd12708fcb1b
BLAKE2b-256 4ba59fd4f8b6afd2a4600e51e33cbf3592bb71f8d602d3f0b806e3d5e9c12f9c

See more details on using hashes here.

File details

Details for the file cinderlib-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: cinderlib-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 78.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.8

File hashes

Hashes for cinderlib-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bb139beeeaf87738e94602c00988b7747010b66c1dd7b3465cb8f950ca89e8bf
MD5 7c63f656e59c7a06380e10b4193025aa
BLAKE2b-256 c8e5f6e41f4a0a4e64f15d87061028c5e10e2d098f272f6ab6ec1fe7ccd3916d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page