Sébastien Han [Mon, 10 Nov 2014 13:13:31 +0000 (14:13 +0100)]
Increase kernel.pid_max to a higher value
While running big boxes with 72 disks it's easy to get out of PID for
all the threads needed by Ceph. Increasing the default value removes
this limitation.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Thu, 6 Nov 2014 11:15:25 +0000 (12:15 +0100)]
Make RGW configurable in Vagrant
Depending on what we want to test, it might be handy to simply disable
the creation of a specific virtual machine. Now if NRGWS is set to 0
this will disable it.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Fri, 10 Oct 2014 13:34:11 +0000 (15:34 +0200)]
Remove ansible managed header from ceph.conf
In ceph-common you load {{ ansible_managed }} at the top of the main
config file - this will trigger handlers on that file whenever an
Ansible run is made.
I'd suggest replacing it with a vanilla text comment 'managed by
Ansible' to warn
admins but avoid unnecessary cluster bounces.
fixes: #125
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Gauvain Pocentek [Fri, 10 Oct 2014 13:20:21 +0000 (15:20 +0200)]
Fix the mon.* generation in ceph.conf
The ceph.conf.j2 template currently always uses the current host facts
to get the IP address of each host in the mon loop. This is not the
expected behavior. This patch uses the correct facts to get the IP.
Sébastien Han [Tue, 2 Sep 2014 22:13:07 +0000 (00:13 +0200)]
Use a very unlikely subnet address for Vagrant
Since 192.168.0.0/24 is very commong and might overlap with some
existing networks on your laptop, using another subnet like '42' is less
bound to happen.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Tue, 2 Sep 2014 22:08:06 +0000 (00:08 +0200)]
Fix OSD weight and device size
Because of the following bug: http://tracker.ceph.com/issues/8551
If we use a disk file size of 1GB the OSD weight calculation ends up
being 0. Thus no data will be stored on any OSD.
Increasing the disk file size up to 11GB (we save some filesystem
overhead since the calculation is based on df thus 11GB is safer than
10GB). Because we significantly increased the size of the disk files we
now only create 2 devices per OSD host.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Tue, 2 Sep 2014 22:04:23 +0000 (00:04 +0200)]
Fix OSD update during startup
Proviously we used osd_crush_update_on_start: true, this was interpreted
by Ansible as a boolean and appeared as 'True' inside the Ceph configuration
file. However the Ceph's init script is looking for 'true'.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Tue, 2 Sep 2014 00:37:18 +0000 (02:37 +0200)]
Add developement packages support
This commits introduces the support of the developpement branches of
Ceph. You can now install Ceph from master.
The behavior is done through 2 new options:
* ceph_stable: true will use the stable branch
* ceph_dev: true will use the dev branch
For the dev packages don't forget to set the branch that you want to
use.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Thu, 21 Aug 2014 12:21:05 +0000 (14:21 +0200)]
Disable updatedb OSD directory parsing
It has been reported a couple of months ago by Dan van der Ster from
CERN that updatedb was consumming 100% of CPU while parsing system's
directories. Indeed the process was parsing the OSD PG directories that
might contains billions of objects.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Wed, 20 Aug 2014 12:04:34 +0000 (14:04 +0200)]
Restart Ceph service after a configuration change
After a change is made on the configuration file we must restart the
Ceph services. I also added a check that verifies if a socker exists
because during the first play there are no services running. We check if
a socket exists, if not we don't try to restart the services, if it
exists we can restart them.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Joseph Glanville [Sat, 16 Aug 2014 09:03:16 +0000 (19:03 +1000)]
Introduce VMware Fusion Vagrant support
* Use a box that supports all providers
* Fix hdd creation so it doesn't call customize more than once
* Introduce method to create vmdks
* Add provider customization for VMware Fusion
Sébastien Han [Tue, 8 Jul 2014 13:39:42 +0000 (15:39 +0200)]
Rename roles' names
I added a 'ceph-' prefix to all the roles related to Ceph. Since we are
about to push the roles into the Ansible Galaxy that will be easier when
we want to use these roles into a larger environement with other roles.
Fixes: #94 Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Sébastien Han [Thu, 3 Jul 2014 13:30:49 +0000 (15:30 +0200)]
Ability to use a directory for OSD instead of a disk
This commit implements a fourth scenario where we can directely use a
directory instead of a block device for the OSDs. The purpose of this
scenario is more testing-oriented. Please note that we do not check
the filesystem underneath the directory so it is really up to you to
configure this properly. Declaring more than one directory on the
same filesystem will confuse Ceph.
Fixes: #14 Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
Lorin Hochstein [Sun, 11 May 2014 01:52:26 +0000 (21:52 -0400)]
Use Vagrant's Ansible provisioner
Use Vagrant's built-in support for Ansible provisioner. This eliminates the need
for a hosts file, and simplifies the ansible config file.
Renames config from .ansible.cfg to ansible.cfg since Ansible expects the file
to be called ansible.cfg and be adjacent to Vagrantfile when using the Vagrant
provisioner.
Sébastien Han [Wed, 30 Apr 2014 23:24:20 +0000 (01:24 +0200)]
Enable single host mode
This commit introduces a new config option 'osd crush chooseleaf type'.
With the help of this option and by setting it to '0' we tell Ceph to
store all the replicas on a single host. Basically we tell CRUSH to
iterate over disk and not over host.
Signed-off-by: Sébastien Han <sebastien.han@enovance.com>