Ceph Puppet Module
Go to file
Rongze Zhu 582ba496ff Add more dashes to match title line length
Change-Id: I7b54980a001f03884e2f513ee50e45a64341e552
2013-11-19 00:12:02 +08:00
lib/puppet Add ceph_config ini helper 2013-10-25 10:22:01 -07:00
manifests Introduction of ceph installation and configuration management 2013-11-15 17:08:59 -05:00
spec Introduction of ceph installation and configuration management 2013-11-15 17:08:59 -05:00
.fixtures.yml Add ceph_config ini helper 2013-10-25 10:22:01 -07:00
.gitignore integration tests environment 2013-10-27 13:44:11 +01:00
.gitreview Initial Commit. 2013-10-18 21:29:43 -04:00
.nodeset.yml integration tests environment 2013-10-27 13:44:11 +01:00
Gemfile integration tests environment 2013-10-27 13:44:11 +01:00
LICENSE Add project files 2013-10-20 22:45:54 -07:00
Modulefile Add ceph_config ini helper 2013-10-25 10:22:01 -07:00
Puppetfile Add ceph::repo and it's unit tests to puppet-ceph 2013-10-23 17:26:01 -04:00
README.md Add more dashes to match title line length 2013-11-19 00:12:02 +08:00
Rakefile Introduction of ceph installation and configuration management 2013-11-15 17:08:59 -05:00

README.md

ceph

Table of Contents

  1. Overview - What is the ceph module?
  2. Module Description - What does the module do?
  3. Setup - The basics of getting started with ceph
  4. Implementation - An under-the-hood peek at what the module is doing
  5. Limitations - OS compatibility, etc.
  6. Development - Guide for contributing to the module
  7. Contributors - Those with commits
  8. Integration - Apply the module and test restults
  9. Release Notes - Notes on the most recent updates to the module

Overview

The ceph module is intended to leverage all Ceph has to offer and allow for a wide range of use case. Although hosted on the OpenStack infrastructure, it does not require to sign a CLA nor is it restricted to OpenStack users. It benefits from a structured development process that helps federate the development effort. Each component is unit tested and an integration test shows that it performs as expected when used with a realistic scenario.

Module Description

The ceph module deploys a Ceph cluster ( MON, OSD ), the Cephfs file system and the RadosGW object store. It provides integration with various environments ( OpenStack ... ) and components to be used by third party puppet modules that depend on a Ceph cluster.

Setup

Implementation

A blueprint contains an inventory of what is desirable. It was decided to start from scratch and implement one module at a time.

Limitations

Development

git clone https://github.com/stackforge/puppet-ceph.git
cd puppet-ceph
# nokogiri dependencies
sudo apt-get install ruby-dev libxml2-dev libxslt-dev
sudo gem install bundler
bundle install

The developer documentation of the puppet-openstack project is the reference:

Mailing lists:

IRC channels:

  • irc.freenode.net#puppet-openstack
  • irc.oftc.net#ceph-devel

Integration Tests

Relies on rspec-system-puppet and tests are in spec/system. It runs virtual machines and requires 4GB of free memory and 10GB of free disk space.

On success it should complete with

...
=end=============================================================
Finished in 4 minutes 1.7 seconds
1 example, 0 failures

Contributors

Release Notes