Sébastien Han [Thu, 11 May 2017 06:57:53 +0000 (08:57 +0200)]
ansible: shorten default control_path
Default ansible control_path option is too long, so we shorten it by
changing the ansible.cfg file.
For more info see: https://github.com/ansible/ansible/issues/11536 Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1447569 Signed-off-by: Sébastien Han <seb@redhat.com>
(cherry picked from commit 0e931d2bce1030fcec9121a8dba70009cff83403) Signed-off-by: Sébastien Han <seb@redhat.com>
Sébastien Han [Tue, 25 Apr 2017 08:10:09 +0000 (10:10 +0200)]
ansible: add logging path
Ability to log ansible plays in a log file. Default location is
/var/log/ansible.log
Be sure the user running Ansible has permissions on the logfile.
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1445065 Signed-off-by: Sébastien Han <seb@redhat.com>
(cherry picked from commit 6a69fa9495ffaf16d9aa5b862751ceb2c87bdc8f) Signed-off-by: Sébastien Han <seb@redhat.com>
Ali Maredia [Wed, 10 May 2017 17:00:41 +0000 (13:00 -0400)]
rgw: move default bucket quota conf vars to global
"rgw override bucket index max shards" and
"rgw bucket default quota max objects" were in the
client section of the ceph.conf and not being
applied, this commit moves them to global
Andrew Schoen [Tue, 2 May 2017 16:15:23 +0000 (11:15 -0500)]
tests: switch to using key/value extra-vars instead of json
I continue to have issues with extra-vars as json. The latest issue
being that the ceph_docker_image_tag config option included in the json
was being ignored. I can't find the root cause, by using the key/value
format seems to work.
I've also removed several options here to simply the interface. We can
add those back if they become necessary.
Sébastien Han [Mon, 24 Apr 2017 09:04:06 +0000 (11:04 +0200)]
mon: upgrade calamari when running rolling_update playbook
Prior to this change, ansible was only checking for the existence of the
package, now if upgrade_ceph_packages is true this means we are
performing an upgrade.
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1442016 Signed-off-by: Sébastien Han <seb@redhat.com>
(cherry picked from commit 84d96be197617ff8cdf8141e4a52657f172b2809)
Andrew Schoen [Wed, 12 Apr 2017 12:53:49 +0000 (07:53 -0500)]
tests: set needed config in group_vars/all for rhcs testing
Instead of relying on environment variables and --extra-vars simply
modify the group_vars/all that ships with the specific testing scenario
to enable ceph_rchs testing.
Andrew Schoen [Wed, 12 Apr 2017 12:50:41 +0000 (07:50 -0500)]
tests: remove CEPH_STABLE environment variable
I'm removing this because when we use an 'rhcs' scenario then we attempt
to set CEPH_STABLE=false as an environment variable. The issue with that
is because the value is coming from an environment variable it is always
treated as a string and ansible treats that as a boolean True. I plan to
set the ceph_stable value with our rhcs_setup.yml playbook instead of
relying on ---extra-vars and environment variables.
Related ansible issue: https://github.com/ansible/ansible/issues/17193
Sébastien Han [Thu, 16 Mar 2017 09:17:08 +0000 (10:17 +0100)]
mgr: add new role for ceph-mgr
The Ceph Manager daemon (ceph-mgr) runs alongside monitor daemons, to
provide additional monitoring and interfaces to external monitoring and
management systems.
Only works as of the Kraken release.
Co-Authored-By: Guillaume Abrioux <gabrioux@redhat.com> Signed-off-by: Sébastien Han <seb@redhat.com>
As a consequence the systemctl preset command now fails to run since the
unit does not exist anymore. Due to the redirection in /dev/null we
don't know what's happening.
Ultimately the mon unit doesn't get enabled and the mon service won't
start after reboot.
Removing the old/non-existent unit makes the command succeed now.
ceph fix: https://github.com/ceph/ceph/pull/14226
Signed-off-by: WingkaiHo <sanguosfiang@163.com> Co-Authored-By: Sébastien Han <seb@redhat.com>
Common: Fix handlers that are not properly triggered.
Until now, only the first task were executed.
The idea here is to use `listen` statement to be able to notify multiple
handler and regroup all of them in `./handlers/main.yml` as notifying an
included handler task is not possible.
Sébastien Han [Tue, 4 Apr 2017 08:33:22 +0000 (10:33 +0200)]
osd: autodiscovery mode, use holders to detect device
As reported in
https://github.com/ceph/ceph-ansible/issues/1403 when devices are held
by lvm and `osd_auto_discovery` is set to true, it's not enough to check
for a partition count = 0 since Ansible does not report.
This patch also looks for 'holders' which in a case of lvm corresponds
to the name of the pv. Now we also look for holders = 0.
Fixes: #1403 Signed-off-by: Sébastien Han <seb@redhat.com>
Sébastien Han [Thu, 30 Mar 2017 09:51:38 +0000 (11:51 +0200)]
playbook: homogenize the way list osd ids
Problem: too many different commands to do the same thing. The 'cut'
command on infrastructure-playbooks/purge-cluster.yml was also wrong.
This sed command from osixia in ceph-docker
https://github.com/ceph/ceph-docker/pull/580/ addresses all the
scenarios.
Common: Do not install ntp when ntp_service_enabled is false
ntp is still installed even if ntp_service_enabled is set to false.
That could be a problem if the time synchronization is managed by
something else than ceph-ansible or if you want to use different NTP
implementation as suggested in #1354.
If a group of hosts is empty, (for instance 'mdss', in case of a
deployment without any mds node), the playbook will fails when trying
to restart service with `"'dict object' has no attribute u'XXX'"` error.
The idea here is to force the `with_items` statements in all included handler tasks
to get at least an empty array.
Concubidated [Fri, 24 Mar 2017 19:52:37 +0000 (12:52 -0700)]
ceph-common: update sysctl file location
systctl tuning should be in the sysctl.d directory. This creates
a seperation from what values were set specific to ceph, and what
values were set by the operator.