Changes the default ceph version on master to
Ceph Nautilus now that we have the stable/mimic
branch.
Change-Id: Ie357d94ab06e0e33bcf890cc83b77b25fe52ffa3
This changes the repos to use Mimic.
Probably needs a lot of other work but it's a start.
A patch will be pushed to p-o-i to test Mimic.
Change-Id: I62bddf421f3fae6a22b1a58f42bbbf80c53fdd8d
This resource type can be used for setting up cephfs, it
expects FS name, data and metadata pool names as input
parameters. Data and metadata pools should already exist.
Change-Id: I18436a64fc991b9e697a1d79e369ac110cf8fe20
Partial-Bug: #1644784
The osd parameters added will be disabled by default as to not cause duplicate declarations for
users defining this with in-house puppet modules
Closes-Bug: #1488126
Change-Id: I87fe265370adaf1c02e23ffe6ad63bdc93649438
This patch bumps puppet-ceph to use Jewel, the new LTS that will replace
Hammer (previous LTS).
* Change defaults repositories to download Jewel by default except on
CentOS [1].
* Ensure mon/osd files are created as the ceph user [2] only if ceph
user is present on the system (managed by ceph packaging since Jewel).
* Rename radosgw service to match with Jewel packaging.
* acceptance: configure Ceph to limit OSD object name lengths for ext4.
* acceptance: deploy Jewel for Ubuntu and Hammer on CentOS7, packages
are not ready for CentOS SIG:
http://buildlogs.centos.org/centos/7/storage/x86_64/ceph-jewel/
* acceptance: limit OSD object name lengths for ext4:
As of the Ceph Jewel release, certain limitations apply to OSD object
name lengths: specifically if ext4 is in use for block devices or a
directory based OSD is configured, OSD's must be configured to limit
object name length [3].
[1] https://bugs.centos.org/view.php?id=10803
[2] http://docs.ceph.com/docs/master/release-notes/#upgrading-from-hammer
[3] Thanks to James Page: https://review.openstack.org/#/c/318612/1
Change-Id: I2ebe0fbab10d04b21c851df64d60b834f4006d3a
* if providing an external journal disk, provide the disk and not
the partition
* do not put things into /tmp
Change-Id: If6e4ae171d4339d06352108fcac3a27854c448b8
Customization of the journal file/dev size is recommended by the
Ceph documentation as it depends on drives speed and sync interval.
Change-Id: Iaa32aca538b0bcad544641dcd7b67448fb4cada5
This commit introduces the client_keys hash parameter to
ceph::profile. This allows one to use the profile to inject
and configure any client keys with any parameter.
Backwards compatibility is *NOT* maintained for the purpose
of staying as clean and as simple as possible in the context
of drafting the first stable release of puppet-ceph.
This avoids shipping the first stable release with, already,
a deprecation that will have to be maintained throughout an
entire release cycle.
Some tests have been added and test coverage is in general
improved as part of this commit.
Change-Id: Ie6adbd601388ab52c37037004bd0ceef9fc41942
- The default version in repo should be the latest stable release
- We want to keep tests against all LTS releases as well as the
latest stable release. So drop emperor and add giant. When hammer
is released, we will drop giant and add hammer.
Change-Id: I753c0ef326c4b8585e9e9f330a64160f95edd8a8
This provides a profile for OSD machines in the context
of a roles/profiles pattern.
The OSD profile takes a hash from hiera and creates disks accordingly.
Example hiera files are provided.
Change-Id: I2ec9616e9a899cf122bcd0e666b779ed1fd76c33
This provides a profile for monitor instances in the context of a
roles/profiles pattern.
The roles/profiles pattern is a way to combine ceph manifests into
functional units:
Profiles combine multiple manifest to provide a single service. For
example a ceph monitor server needs the repository, packages,
configuration and finally the monitor service.
Roles define sets of profiles to configure a specific server. For
example an allinone role would install the monitor as well as an osd
profile.
The learn more have a look at:
http://www.slideshare.net/PuppetLabs/roles-talk
All configuration happens via hiera. Example hiera files are
provided.
Change-Id: If07d18cdb202706c8478570027e80a85c8159d31
NB: this uses hiera autoloading and will only work with Puppet >=3.0
This is a first step to providing roles/profiles manifests according
to the roles/profiles pattern.
The roles/profiles pattern is a way to combine ceph manifests into
functional units:
Profiles combine multiple manifest to provide a single service. For
example a ceph monitor server needs the repository, packages,
configuration and finally the monitor service.
Roles define sets of profiles to configure a specific server. For
example an allinone role would install the monitor as well as an osd
profile.
The learn more have a look at:
http://www.slideshare.net/PuppetLabs/roles-talk
To start with the basic configuration this provides:
* params: extracts the configuration from hiera
* base: installs ceph and configures ceph.conf
All configuration happens via hiera. Example hiera files are
provided.
NB: this uses hiera autoloading and will only work with Puppet >=3.0
Change-Id: Iba9aca7f124bd3a719dc18292b18fc0f4f386d5c