Ceph Puppet Module
Go to file
OpenDev Sysadmins 4d96efd958 OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:31:41 +00:00
doc Follow the new PTI for document build 2018-02-28 14:42:10 +08:00
examples Change default version to Ceph Nautilus 2019-04-04 14:40:37 +02:00
lib/puppet Set lowercase for ceph_config values 2017-06-12 14:57:05 -03:00
manifests Change default version to Ceph Nautilus 2019-04-04 14:40:37 +02:00
releasenotes Update master for stable/mimic 2019-03-25 21:21:09 +00:00
spec Change default version to Ceph Nautilus 2019-04-04 14:40:37 +02:00
.gitignore Dissuade .gitignore references to personal tools 2018-10-08 11:39:23 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:31:41 +00:00
.zuul.yaml switch documentation job to new PTI 2018-08-31 08:24:33 -04:00
bindep.txt Add Puppet package to bindep, for module build 2017-10-30 23:50:26 +00:00
Gemfile Load puppet-openstack_spec_helper locally during tests 2018-02-12 10:53:34 +08:00
LICENSE Add project files 2013-10-20 22:45:54 -07:00
metadata.json Release 2.6.0 2019-03-21 22:41:37 +01:00
Rakefile Re-boostrap beaker tests 2016-07-07 16:27:14 -04:00
README.md Supply hrefs for table of contents according to context 2018-12-04 23:26:56 -08:00
setup.cfg Change openstack-dev to openstack-discuss 2018-12-04 09:45:03 +08:00
setup.py Prepare puppet-ceph for 1.0.0 2016-05-06 17:54:13 -04:00
tox.ini Update min tox version to 2.0 2018-10-16 11:43:54 +08:00
USECASES.md Remove Puppetfile in favor of metadata.json 2016-04-12 14:34:29 +00:00

Team and repository tags

Team and repository tags

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. Use Cases - Examples of how to use this module
  7. Development - Guide for contributing to the module
  8. Beaker Integration Tests - Apply the module and test results
  9. Contributors - Those with commits
  10. Release Notes - Notes on the most recent updates to the module
  11. Repository - Repository for 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 feature is tested with integration tests involving virtual machines to show 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

We follow the OS compatibility of Ceph. With the release of infernalis this is currently:

  • CentOS 7 or later
  • Debian Jessie 8.x or later
  • Ubuntu Trusty 14.04 or later
  • Fedora 22 or later

Use Cases

Development

git clone https://github.com/openstack/puppet-ceph.git
cd puppet-ceph
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

Beaker Integration Tests

Relies on rspec-beaker and tests are in spec/acceptance. It also requires Vagrant and Virtualbox .

bundle install
bundle exec rspec spec/acceptance

The BEAKER_set environment variable contains the resource set of linux distribution configurations for which integration tests are going to be run. Available values are

  • two-centos-70-x64
  • centos-70-x64
  • two-ubuntu-server-1404-x64
  • ubuntu-server-1404-x64

The default is

BEAKER_set=two-ubuntu-server-1404-x64 \
bundle exec rspec spec/acceptance

Development

Developer documentation for the entire puppet-openstack project.

Contributors

Release Notes

Repository