]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-ansible.git/log
ceph-ansible.git
8 years agoMerge pull request #1469 from ceph/refact_code v2.2.10
Sébastien Han [Fri, 2 Jun 2017 10:40:25 +0000 (12:40 +0200)]
Merge pull request #1469 from ceph/refact_code

Docker: Refact code

8 years agoCommon: Improve check pgs
Guillaume Abrioux [Thu, 1 Jun 2017 12:46:13 +0000 (14:46 +0200)]
Common: Improve check pgs

For some reason we changed the check of pgs but it appears it could be
dangerous because the current check might satisfied as long as 1 PG is
active+clean.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
8 years agoRefact code
Guillaume Abrioux [Wed, 12 Apr 2017 17:57:33 +0000 (19:57 +0200)]
Refact code

`ceph-docker-common`:
  At the moment there is a lot of duplicated tasks in each
  `./roles/ceph-<role>/tasks/docker/main.yml` that could be refactored in
  `./roles/ceph-docker-common/tasks/main.yml`.

`*_containerized_deployment` variables:
  All `*_containerized_deployment` have been refactored to a single
  variable `containerized_deployment`

duplicate `cephx` variables in `group_vars/* have been removed.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
8 years agocommon: remove useless check
Sébastien Han [Tue, 23 May 2017 10:02:24 +0000 (12:02 +0200)]
common: remove useless check

We only check for everything expect 'distro' because that
is a valid way of deploying RHCS, with preprepared repos
present on the nodes.

Signed-off-by: Sébastien Han <seb@redhat.com>
8 years agocommon: fix installation condition
Sébastien Han [Mon, 22 May 2017 12:18:45 +0000 (14:18 +0200)]
common: fix installation condition

Problem: we could end up in situation where we would install a package
on a machine that does not have the right repo enabled. Because the
condition was set to OR we weren't pinning a particular host but just a
condition. Let's say someone sets 'ceph_origin == "distro"', this would
try to install OSD packages on Monitors.

Solution: use a AND condition to first pin to the group_name (which
identifies a set of hosts) AND then after this one of the installation
condition.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1453119
Co-Authored-By: https://github.com/zhsj
Signed-off-by: Sébastien Han <seb@redhat.com>
8 years agocommon: explicitly set rhel os version support
Sébastien Han [Fri, 19 May 2017 08:37:31 +0000 (10:37 +0200)]
common: explicitly set rhel os version support

Clarify in the error message that only RHEL version >= 7.3 are
supported.

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1452431
Signed-off-by: Sébastien Han <seb@redhat.com>
8 years agoMerge pull request #1513 from flokli/monitor_interface
Sébastien Han [Wed, 17 May 2017 13:12:38 +0000 (15:12 +0200)]
Merge pull request #1513 from flokli/monitor_interface

monitor_interface: document need to use monitor_address when using IPv6

8 years agoceph-common: improve error message on restart osd daemon script
Alfredo Deza [Fri, 12 May 2017 15:01:03 +0000 (11:01 -0400)]
ceph-common: improve error message on restart osd daemon script

Signed-off-by: Alfredo Deza <adeza@redhat.com>
8 years agomonitor_interface: document need to use monitor_address when using IPv6
Florian Klink [Thu, 11 May 2017 09:15:28 +0000 (11:15 +0200)]
monitor_interface: document need to use monitor_address when using IPv6

Already documented in the Red Hat Ceph Storage 2 Installation Guide
for Red Hat Enterprise Linux, but not here

Signed-off-by: Florian Klink <flokli@flokli.de>
8 years agorgw: move default bucket quota conf vars to global
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

Resolves: bz#1391500

Signed-off-by: Ali Maredia <amaredia@redhat.com>
8 years agoMerge pull request #1460 from albertomurillo/clearlinux
Sébastien Han [Tue, 9 May 2017 22:15:55 +0000 (18:15 -0400)]
Merge pull request #1460 from albertomurillo/clearlinux

Add clearlinux to supported platforms

8 years agoCommon: Do not install ceph-mgr packages on jewel
Guillaume Abrioux [Thu, 4 May 2017 09:14:58 +0000 (11:14 +0200)]
Common: Do not install ceph-mgr packages on jewel

ceph-mgr tasks has to be skipped on jewel.

Fix: #1494

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
8 years agoceph-common: add luminous to ceph_release_num
Andrew Schoen [Wed, 3 May 2017 14:11:52 +0000 (09:11 -0500)]
ceph-common: add luminous to ceph_release_num

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
8 years agoceph-common: remove debian_ceph_packages
Andrew Schoen [Fri, 28 Apr 2017 15:47:27 +0000 (10:47 -0500)]
ceph-common: remove debian_ceph_packages

We shouldn't need this anymore as the upgrade bug that
debian_ceph_packages was used to workaround should have
been fixed as of jewel.

See https://github.com/ceph/ceph-ansible/issues/1481 for more
detailed information.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
8 years agoCommon: Fix condition on osd restart handler
Guillaume Abrioux [Thu, 27 Apr 2017 14:24:21 +0000 (16:24 +0200)]
Common: Fix condition on osd restart handler

Fix the condition on the osd restart handler.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
8 years agorgw: set tuning parameters
Ali Maredia [Wed, 19 Apr 2017 16:30:40 +0000 (12:30 -0400)]
rgw: set tuning parameters

Change civetweb_num_thread default to 100

Add capability to override number of pgs for
rgw pools.

Add ceph.conf vars to enable default bucket
object quota at users choosing into the ceph.conf.j2
template

Resolves: rhbz#1437173
Resolves: rhbz#1391500

Signed-off-by: Ali Maredia <amaredia@redhat.com>
8 years agoAdd clearlinux to supported platforms
Alberto Murillo [Fri, 22 Apr 2016 19:13:36 +0000 (14:13 -0500)]
Add clearlinux to supported platforms

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
8 years agoCommon: Restore check_socket
Guillaume Abrioux [Tue, 18 Apr 2017 10:40:43 +0000 (12:40 +0200)]
Common: Restore check_socket

Restore the check_socket that was removed by `5bec62b`.
This commit also improves the logging in `restart_*_daemon.sh` scripts

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
8 years agoceph-common: install ceph-mgr for rhcs on debian
Andrew Schoen [Mon, 17 Apr 2017 13:40:24 +0000 (08:40 -0500)]
ceph-common: install ceph-mgr for rhcs on debian

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
8 years agoceph-common: install ceph-mgr for rhcs on rhel
Andrew Schoen [Mon, 17 Apr 2017 13:37:34 +0000 (08:37 -0500)]
ceph-common: install ceph-mgr for rhcs on rhel

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
8 years agoMerge pull request #1439 from ceph/rhcs-tests
Andrew Schoen [Thu, 13 Apr 2017 12:23:07 +0000 (07:23 -0500)]
Merge pull request #1439 from ceph/rhcs-tests

tests: fix ceph_rhcs setup

8 years agoceph-common: is ceph_rchs is True do not include install_on_redhat.yml
Andrew Schoen [Wed, 12 Apr 2017 12:55:03 +0000 (07:55 -0500)]
ceph-common: is ceph_rchs is True do not include install_on_redhat.yml

That task includes logic for upstream installs that we do not want to
run when deploying RHCS.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
8 years agoOnly include cluster.conf and osd.conf when building ceph.conf
Matthew Vernon [Tue, 11 Apr 2017 13:33:21 +0000 (14:33 +0100)]
Only include cluster.conf and osd.conf when building ceph.conf

This is the same fix as bc846b7da6d9af16d9611fef7f00df6557f19def
applied to the other part of the code-base that builds ceph.conf (I'd
missed that 349b9ab3e72f188c50b5f84f3ce5ee2fddcfbf80 had duplicated
this code).

Signed-off-by: Matthew Vernon <mv3@sanger.ac.uk>
8 years agoMerge pull request #1425 from ceph/bump-kraken
Sébastien Han [Mon, 10 Apr 2017 17:03:39 +0000 (19:03 +0200)]
Merge pull request #1425 from ceph/bump-kraken

common: bump ceph version to kraken

8 years agocommon: bump ceph version to kraken
Sébastien Han [Mon, 10 Apr 2017 14:20:49 +0000 (16:20 +0200)]
common: bump ceph version to kraken

Kraken has been out for a couple of weeks now and the CI can test both
Kraken and Jewel.

Signed-off-by: Sébastien Han <seb@redhat.com>
8 years agoMerge pull request #1377 from ceph/ceph-mgr
Sébastien Han [Mon, 10 Apr 2017 15:50:24 +0000 (17:50 +0200)]
Merge pull request #1377 from ceph/ceph-mgr

mgr: add new role for ceph-mgr

8 years agomgr: add new role for ceph-mgr
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>
8 years agoceph-common: disable_transparent_hugepage now persist
Konstantin Shalygin [Sat, 8 Apr 2017 06:06:18 +0000 (13:06 +0700)]
ceph-common: disable_transparent_hugepage now persist

8 years agoCommon: Fix handlers that are not properly triggered.
Guillaume Abrioux [Mon, 3 Apr 2017 17:55:11 +0000 (19:55 +0200)]
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.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
8 years agoplaybook: homogenize the way list osd ids
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.

Signed-off-by: Sébastien Han <seb@redhat.com>
8 years agoCommon: Do not install ntp when ntp_service_enabled is false
Guillaume Abrioux [Tue, 28 Mar 2017 15:45:09 +0000 (17:45 +0200)]
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.

Fixes: #1354
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
Signed-off-by: Guits <gabrioux@redhat.com>
8 years agoMerge pull request #1396 from guits/fix_1374
Sébastien Han [Mon, 27 Mar 2017 16:13:51 +0000 (18:13 +0200)]
Merge pull request #1396 from guits/fix_1374

BugFix: Fix #1374

8 years agoBugFix: Fix #1374
Guillaume Abrioux [Thu, 23 Mar 2017 15:00:02 +0000 (16:00 +0100)]
BugFix: Fix #1374

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.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
8 years agoceph-common: update sysctl file location
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.

Signed-off-by: Tyler Brekke <tbrekke@redhat.com>
8 years agoMerge pull request #1379 from D3N14L/fix_1299
Sébastien Han [Tue, 21 Mar 2017 08:43:10 +0000 (09:43 +0100)]
Merge pull request #1379 from D3N14L/fix_1299

Use ansible uri module instead of shell module with curl

8 years agoUse ansible uri module instead of shell module with curl
Daniel Marks [Thu, 16 Mar 2017 22:16:30 +0000 (23:16 +0100)]
Use ansible uri module instead of shell module with curl

This fixes issue #1299. According to @ktdreyer s comment in the ticket,
he fixed the web server config so also older (non-SNI) python clients
can use the uri module here.

8 years agoMake ceph-common aware off osd config fragments
Christian Zunker [Wed, 15 Mar 2017 12:32:30 +0000 (13:32 +0100)]
Make ceph-common aware off osd config fragments

This removes the implicit order requirement when using OSD fragments.
When you use OSD fragments and ceph-osd role is not the last one,
the fragments get removed from ceph.conf by ceph-common.

It is not nice to have this code at two locations, but this is
necessary to prevent problems, when ceph-osd is the last role as
ceph-common gets executed before ceph-osd.

This could be prevented when ceph-common would be explicitly called
at the end of the playbook.

Signed-off-by: Christian Zunker <christian.zunker@codecentric.de>
8 years agoceph-common: install nfs-ganesha FSALs on Debian
Ken Dreyer [Mon, 13 Mar 2017 15:34:35 +0000 (09:34 -0600)]
ceph-common: install nfs-ganesha FSALs on Debian

Prior to this change, ceph-ansible would install the main NFS Ganesha
server daemon on Ubuntu, but it would skip the Ceph FSALs.

Running "apt-get install nfs-ganesha" will only install the main NFS Ganesha
server. It does *not* pull in the RGW FSAL
(/usr/lib/x86_64-linux-gnu/ganesha/libfsalrgw.so)

Running "apt-get install nfs-ganesha-fsal" will install the RGW FSAL as
well as the main NFS Ganesha server package.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
8 years agoMerge pull request #1347 from ceph/no-vfs-cache-pressure
Sébastien Han [Wed, 8 Mar 2017 17:02:06 +0000 (18:02 +0100)]
Merge pull request #1347 from ceph/no-vfs-cache-pressure

avoid setting vfs_cache_pressure

9 years agoavoid setting vfs_cache_pressure
Ken Dreyer [Fri, 3 Mar 2017 18:20:05 +0000 (11:20 -0700)]
avoid setting vfs_cache_pressure

From Josh Durgin, "I'd recommend not setting vfs_cache_pressure in
ceph-ansible. The syncfs issue is still there, and has caused real
problems in the past, whereas there hasn't been good data showing lower
vfs_cache_pressure is very helpful - the only cases I'm aware of have
shown it makes little difference to performance."

https://bugzilla.redhat.com/show_bug.cgi?id=1395451

9 years agocheck_system: improve RHCS support message and version comparison
Ken Dreyer [Fri, 3 Mar 2017 16:56:30 +0000 (09:56 -0700)]
check_system: improve RHCS support message and version comparison

"red hat storage" -> "red hat ceph storage"

"RHEL 7.1" -> "RHEL 7"

and make the version number check verify the very latest version

https://bugzilla.redhat.com/show_bug.cgi?id=1354059

9 years agoceph-common: remove infernalis comment on radosgw_civetweb_port
Andrew Schoen [Tue, 21 Feb 2017 18:35:00 +0000 (12:35 -0600)]
ceph-common: remove infernalis comment on radosgw_civetweb_port

As of Infernalis, the Ceph daemons run as an unprivileged "ceph" UID,
and this is by design.

Commit f19b765 altered the default
civetweb port from 80 to 8080 with a comment in the commit log about
"until this gets solved"

Remove the comment about permissions on Infernalis, because this is
always going to be the case on the Ceph versions we support, and it
is just confusing.

If users want to expose civetweb to s3 clients using privileged TCP
ports, they can redirect traffic with iptables, or use a reverse proxy
application like HAproxy.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agoceph-common: do not get current fsid when performing a rolling_update
Andrew Schoen [Fri, 17 Feb 2017 20:29:45 +0000 (14:29 -0600)]
ceph-common: do not get current fsid when performing a rolling_update

This avoids a situation where during a rolling_update we try to talk to
a mon to get the fsid and if that mon is down the playbook hangs
indefinitely.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agoceph-common: use yum_repository when adding the ceph_stable repo
Andrew Schoen [Fri, 17 Feb 2017 20:27:15 +0000 (14:27 -0600)]
ceph-common: use yum_repository when adding the ceph_stable repo

This gives us more flexibility than installing the ceph-release package
as we can easily use different mirrors. Also, I noticed an issue when
upgrading from jewel -> kraken as the ceph-release package for those
releases both have the same version number and yum doesn't know to
update anything.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agocommon: add doc for rgw on ipv6
Sébastien Han [Tue, 21 Feb 2017 17:00:37 +0000 (12:00 -0500)]
common: add doc for rgw on ipv6

See: https://bugzilla.redhat.com/show_bug.cgi?id=1424799

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agocommon: fix "disable transparent hugepage"
Sébastien Han [Mon, 20 Feb 2017 22:07:53 +0000 (17:07 -0500)]
common: fix "disable transparent hugepage"

To configure kernel the task is using "command" module which is not
respect operator ">". So this task just print to "stdout": "never >
/sys/kernel/mm/transparent_hugepage/enabled"

fix: #1319

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agofix grep match pattern for osd ids
Shengjing Zhu [Mon, 20 Feb 2017 08:35:56 +0000 (16:35 +0800)]
fix grep match pattern for osd ids

Some playbooks use [0-9]*, others use \d+$
The latter is more correct since cluster name may contain numbers.

Signed-off-by: Shengjing Zhu <zsj950618@gmail.com>
9 years agoMerge pull request #1304 from guits/fix_1300
Sébastien Han [Sat, 11 Feb 2017 12:14:07 +0000 (13:14 +0100)]
Merge pull request #1304 from guits/fix_1300

Skip facts_mon_fsid.yml if cephx is disabled

9 years agoSkip facts_mon_fsid.yml if cephx is disabled
Guillaume Abrioux [Fri, 10 Feb 2017 09:04:54 +0000 (10:04 +0100)]
Skip facts_mon_fsid.yml if cephx is disabled

If cephx is disabled it is not necessary to include `facts_mon_fsid.yml`
in `roles/ceph-common/tasks/facts.yml`.

Fix: #1300
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
9 years agodocker: use a better method to pull images
Sébastien Han [Thu, 9 Feb 2017 14:16:39 +0000 (15:16 +0100)]
docker: use a better method to pull images

We changed the way we declare image.
Prior to this patch we must have a "user/image:tag"
format, which is incompatible with non docker-hub registry where you
usually don't have a "user". On the docker hub a "user" is also
identified as a namespace, so for Ceph the user was "ceph".

Variables have been simplified with only:

* ceph_docker_image
* ceph_docker_image_tag

1. For docker hub images: ceph_docker_name: "ceph/daemon" will give
you the 'daemon' image of the 'ceph' user.

2. For non docker hub images: ceph_docker_name: "daemon" will simply
give you the "daemon" image.

Infrastructure playbooks have been modified as well.
The file group_vars/all.docker.yml.sample has been removed as well.
It is hard to maintain since we have to generate it manually. If
you want to configure specific variables for a specific daemon simply
edit group_vars/$DAEMON.yml

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1420207
Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agoadd ceph_mirror variable
Shengjing Zhu [Wed, 8 Feb 2017 03:41:48 +0000 (11:41 +0800)]
add ceph_mirror variable

Closes: #1282
Signed-off-by: Shengjing Zhu <zsj950618@gmail.com>
9 years agoceph-common: set ms bind ipv6 = true in ceph.conf when using ipv6
Andrew Schoen [Tue, 7 Feb 2017 18:34:29 +0000 (12:34 -0600)]
ceph-common: set ms bind ipv6 = true in ceph.conf when using ipv6

This fixes an issue with parsing the ceph.conf file when ip_version is set to
ipv6.

See: https://bugzilla.redhat.com/show_bug.cgi?id=1419814

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agocommon: ability to disable handler osd health check
Sébastien Han [Thu, 2 Feb 2017 10:22:55 +0000 (11:22 +0100)]
common: ability to disable handler osd health check

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agoceph-common: remove absolute path to handler include files
Andrew Schoen [Wed, 1 Feb 2017 15:20:45 +0000 (09:20 -0600)]
ceph-common: remove absolute path to handler include files

This breaks if the roles don't live in the same place as the playbook.

See: https://github.com/ceph/ceph-ansible/issues/1265

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agocommon: serialise host restart
Sébastien Han [Thu, 22 Sep 2016 15:03:14 +0000 (17:03 +0200)]
common: serialise host restart

This commits allows us to restart Ceph daemon machine by machine instead
of restarting all the daemons in a single shot.

Rework the structure of the handler for clarity as well.

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agoRemove support of releases prior to Jewel.
Guillaume Abrioux [Fri, 20 Jan 2017 09:14:35 +0000 (10:14 +0100)]
Remove support of releases prior to Jewel.

According to #1216, we need to simply the code by removing the
support of anything before Jewel.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
9 years agoceph-common: update apt cache in it's own task
Andrew Schoen [Mon, 30 Jan 2017 23:15:08 +0000 (17:15 -0600)]
ceph-common: update apt cache in it's own task

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agocommon: create ceph initial directories
Sébastien Han [Mon, 30 Jan 2017 10:05:01 +0000 (11:05 +0100)]
common: create ceph initial directories

Some users purge their environments and leave it in a non-optimal state.
e.g: packages are still installed but /etc/ceph and /var/lib/ceph don't
exist anymore. This will result in multiple failures across the play,
sometimes hard to detect. Populating these directories "just in case"
should help us solving these problems.

Closes: #1253
Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agoAdds ip_version configuration option
Andrew Schoen [Tue, 24 Jan 2017 15:06:10 +0000 (09:06 -0600)]
Adds ip_version configuration option

This allows the user to set ip_version to either ipv4 or ipv6. This
resolves a bug where monitor_address is set to an ipv6 address, but the
template fails to render because it's hardcoded to look for an 'ipv4'
key in the ansible facts.

See: https://bugzilla.redhat.com/show_bug.cgi?id=1416010

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
Resolves: bz#1416010

9 years agoRGW: Add resolve cname configuration parameter
Logan V [Mon, 16 Jan 2017 14:29:56 +0000 (08:29 -0600)]
RGW: Add resolve cname configuration parameter

Adds a switch to enable bucket resolution using DNS CNAME provided
by the client's HTTP headers.

9 years agoRGW: Add static website hosting configuration
Logan V [Mon, 16 Jan 2017 14:27:44 +0000 (08:27 -0600)]
RGW: Add static website hosting configuration

9 years agoRGW: Allow configurable rgw frontends setting
Logan V [Mon, 16 Jan 2017 14:14:02 +0000 (08:14 -0600)]
RGW: Allow configurable rgw frontends setting

Allow for more operator flexibility in the `rgw frontends` setting
while maintaining backwards compatibility with the old vars. This
allows an operator to, for example, use the civetweb settings for
implementing SSL ports.

For available civetweb configuration parameters, see:
https://github.com/civetweb/civetweb/blob/master/docs/UserManual.md

9 years agoRGW: Add support for usage log configuration
Logan V [Thu, 15 Dec 2016 16:35:56 +0000 (10:35 -0600)]
RGW: Add support for usage log configuration

Adds support for configuring the RadosGW usage log described at
http://docs.ceph.com/docs/jewel/man/8/radosgw/#usage-logging.

9 years agoMerge pull request #1227 from Logan2211/resync-group-vars-sample
Andrew Schoen [Thu, 19 Jan 2017 15:57:54 +0000 (09:57 -0600)]
Merge pull request #1227 from Logan2211/resync-group-vars-sample

Remove libcephfs1 from group_vars sample

9 years agoceph-common: include ceph_docker_registry when fetching the image
Andrew Schoen [Mon, 16 Jan 2017 15:51:20 +0000 (09:51 -0600)]
ceph-common: include ceph_docker_registry when fetching the image

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agoRemove libcephfs1 from group_vars sample
Logan V [Mon, 16 Jan 2017 14:12:15 +0000 (08:12 -0600)]
Remove libcephfs1 from group_vars sample

The libcephfs1 package was removed from ceph-common in
cb1c06901e02a9f44c24a5d20737a9f33ac8ab2b, however it was not synced
to group_vars/all.yml.sample using the `generate_group_vars_sample.sh`
script. This fixes up the comment formatting in the ceph-common
defaults and brings the group_vars sample back into sync.

9 years agoceph-common: always include release.yml
Ken Dreyer [Thu, 5 Jan 2017 21:29:53 +0000 (14:29 -0700)]
ceph-common: always include release.yml

Prior to this change, a playbook run with '--tags' or '--skip-tags'
would fail, because the ceph-common role would not include the
release.yml task, and this file defines critical things like
ceph_release.

Thanks Andrew Schoen <aschoen@redhat.com> for help with the fix.

9 years agoMerge pull request #1171 from cbodley/wip-libcephfs2
Sébastien Han [Tue, 3 Jan 2017 09:48:56 +0000 (10:48 +0100)]
Merge pull request #1171 from cbodley/wip-libcephfs2

bump package version to libcephfs2

9 years agoMerge pull request #1212 from ceph/cluster-name-info
Sébastien Han [Tue, 3 Jan 2017 09:18:41 +0000 (10:18 +0100)]
Merge pull request #1212 from ceph/cluster-name-info

common: document "cluster" variable usage

9 years agocommon: document "cluster" variable usage
Sébastien Han [Mon, 2 Jan 2017 08:20:43 +0000 (09:20 +0100)]
common: document "cluster" variable usage

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1408848
Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agofix check nmapexist on debian
Shengjing Zhu [Wed, 28 Dec 2016 08:21:23 +0000 (16:21 +0800)]
fix check nmapexist on debian

command is a shell-buitin, so `command -v nmap` must use shell module

Signed-off-by: Shengjing Zhu <zsj950618@gmail.com>
9 years agocommon: rename rh_storage to rhcs to match product name
Sébastien Han [Tue, 20 Dec 2016 12:47:44 +0000 (13:47 +0100)]
common: rename rh_storage to rhcs to match product name

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agocommon: enable tool repo for mds install of rhcs
Sébastien Han [Tue, 20 Dec 2016 12:42:24 +0000 (13:42 +0100)]
common: enable tool repo for mds install of rhcs

Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1405985
Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agoMerge pull request #1199 from Logan2211/fix-mon-fsid-block
Sébastien Han [Mon, 19 Dec 2016 10:30:58 +0000 (11:30 +0100)]
Merge pull request #1199 from Logan2211/fix-mon-fsid-block

Workaround for broken 'block' syntax

9 years agoMerge pull request #1153 from ceph/cluster-name-test
Andrew Schoen [Fri, 16 Dec 2016 19:10:52 +0000 (13:10 -0600)]
Merge pull request #1153 from ceph/cluster-name-test

test: add cluster name support test scenario

9 years agoWorkaround for broken 'block' syntax
Logan V [Fri, 16 Dec 2016 15:24:48 +0000 (09:24 -0600)]
Workaround for broken 'block' syntax

The block syntax in ansible is broken on 2.1 so we work around the
issue introduced in 471be5e by using a task file include.

9 years agoMerge pull request #1179 from Logan2211/rgw-keystone-v3
Sébastien Han [Fri, 16 Dec 2016 12:52:52 +0000 (13:52 +0100)]
Merge pull request #1179 from Logan2211/rgw-keystone-v3

RGW/Keystone integration improvements

9 years agocommon: do not become root on local task
Sébastien Han [Fri, 16 Dec 2016 10:36:42 +0000 (11:36 +0100)]
common: do not become root on local task

There is no need to become root on local_action. This will event trigger
an error on some systems as it will try to run a sudo command. If the
current user does not have passwordless sudo, Ansible will fail. Anyway
using the current user is perfectly fine and no elevation privilege is
needed.

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agoAdd support for Keystone v3 API
Logan V [Thu, 14 Jul 2016 19:27:03 +0000 (14:27 -0500)]
Add support for Keystone v3 API

The Keystone v2 APIs are deprecated and scheduled to be removed in
Q release of Openstack. This adds support for configuring RGW to
use the current Keystone v3 API.

9 years agoAdd a switch to disable nss PKI database initialization
Logan V [Thu, 14 Jul 2016 19:09:31 +0000 (14:09 -0500)]
Add a switch to disable nss PKI database initialization

The PKI keys are used to decrypt the Keystone revocation list when
PKI tokens are used. When UUID or Fernet token providers are used in
Keystone, PKI certs may not exist, so we now accommodate this scenario
by allowing the operator to disable the PKI tasks.

9 years agoAdd support for Keystone user authentication with RGW
Logan V [Mon, 11 Jul 2016 12:52:11 +0000 (07:52 -0500)]
Add support for Keystone user authentication with RGW

Jewel added support for user/pass authentication with Keystone,
allowing deployers to disable Keystone admin token as required
for production deployments.

This implements configuration for the new RGW Keystone user/pass
authentication feature added in Jewel.

See docs here: http://docs.ceph.com/docs/master/radosgw/keystone/

9 years agocommon: add the name of the ceph conf file in the play
Sébastien Han [Wed, 7 Dec 2016 17:22:39 +0000 (18:22 +0100)]
common: add the name of the ceph conf file in the play

Just for clarity and because we can we now show the name of the
ceph configuration file that is generated.

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agocommon: do not regenerate initial mon keyring if cluster exists
Guillaume Abrioux [Thu, 8 Dec 2016 15:58:22 +0000 (16:58 +0100)]
common: do not regenerate initial mon keyring if cluster exists

This commit solves the situation where you lost your fetch directory and
you are running ansible against an existing cluster. Since no fetch
directory is present the file containing the initial mon keyring
doesn't exist so we are generating a new one.

Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
9 years agocommon: remove uncessary conditions and spell red hat entirely
Sébastien Han [Wed, 14 Dec 2016 18:03:04 +0000 (19:03 +0100)]
common: remove uncessary conditions and spell red hat entirely

We do not need to run another condition for 'ceph_rhcs' since the
include we came from already has it, so we are already inside this
condition.
We also spell red hat entirely instead of rh and we remove capital
letters.

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agocommon: set apt pinning with Red Hat Ceph Storage
Sébastien Han [Wed, 14 Dec 2016 17:15:02 +0000 (18:15 +0100)]
common: set apt pinning with Red Hat Ceph Storage

When `ceph_stable_rh_storage` is True, every cluster node should have a
`/etc/apt/preferences.d/rhcs.pref` file with the following contents:

```
Explanation: Prefer Red Hat packages
Package: *
Pin: release o=/Red Hat/
Pin-Priority: 999
```

ceph-deploy already did this when used with ice-setup, and we need to do
the same thing with the ceph-ansible stack.

Closes: #1182 and https://bugzilla.redhat.com/show_bug.cgi?id=1404515
Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agofix ceph_custom not usable
Shengjing Zhu [Wed, 14 Dec 2016 08:55:41 +0000 (16:55 +0800)]
fix ceph_custom not usable

Only when ceph_origin == "upstream", install_on_redhat.yml will include
redhat_ceph_repository.yml, same as debian.

In redhat_ceph_repository.yml, ceph_custom_repo will be added.

But in check_mandatory_vars.yml, ceph_origin=="upstream" can't be combined
with ceph_custom

9 years agoceph-common: remove libcephfs1 from debian_ceph_packages
Casey Bodley [Fri, 9 Dec 2016 15:41:54 +0000 (10:41 -0500)]
ceph-common: remove libcephfs1 from debian_ceph_packages

in hammer, ceph-common depended on libcephfs (indirectly, via
python-cephfs). this is no longer the case in jewel or later, so it can
be removed from debian_ceph_packages

Signed-off-by: Casey Bodley <cbodley@redhat.com>
9 years agocommon: do not run tasks in main.yml, use include
Sébastien Han [Fri, 9 Dec 2016 13:51:35 +0000 (14:51 +0100)]
common: do not run tasks in main.yml, use include

For readibility and clarity we do not run any tasks directly in the
main.yml file. This file should only contain include, which helps us
later to apply conditionnals if we want to.

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agocommon: move mandatory variables to their respective roles
Sébastien Han [Fri, 9 Dec 2016 13:45:05 +0000 (14:45 +0100)]
common: move mandatory variables to their respective roles

Signed-off-by: Sébastien Han <seb@redhat.com>
9 years agoMerge pull request #1169 from ceph/shaman-support
Andrew Schoen [Fri, 9 Dec 2016 13:09:38 +0000 (07:09 -0600)]
Merge pull request #1169 from ceph/shaman-support

Shaman support for `ceph_dev`

9 years agoMerge pull request #1165 from opsta/master
Sébastien Han [Fri, 9 Dec 2016 09:47:46 +0000 (10:47 +0100)]
Merge pull request #1165 from opsta/master

Improve script to install Ceph AIO without Vagrant

9 years agoceph-common: fetch ceph_dev repo contents for CentOS from shaman
Alfredo Deza [Thu, 8 Dec 2016 20:16:10 +0000 (15:16 -0500)]
ceph-common: fetch ceph_dev repo contents for CentOS from shaman

Signed-off-by: Alfredo Deza <adeza@redhat.com>
9 years agoceph-common: remove ceph_dev* vars that are no longer needed
Alfredo Deza [Thu, 8 Dec 2016 20:14:48 +0000 (15:14 -0500)]
ceph-common: remove ceph_dev* vars that are no longer needed

Signed-off-by: Alfredo Deza <adeza@redhat.com>
9 years agoceph-common: fetch ceph_dev repo contents for debian from shaman
Alfredo Deza [Thu, 8 Dec 2016 19:22:29 +0000 (14:22 -0500)]
ceph-common: fetch ceph_dev repo contents for debian from shaman

Signed-off-by: Alfredo Deza <adeza@redhat.com>
9 years agoFix the mons running check to use group name var
Logan V [Thu, 8 Dec 2016 19:16:02 +0000 (13:16 -0600)]
Fix the mons running check to use group name var

mon_group_name variable can be used to override mons group, but
this task assumes the group is always 'mons'. So we need to use
the var to find the group name instead.

9 years agoMerge pull request #1157 from ceph/ceph-fsid
Sébastien Han [Thu, 8 Dec 2016 17:55:21 +0000 (18:55 +0100)]
Merge pull request #1157 from ceph/ceph-fsid

common: do not regenerate a cluster fsid if cluster exits

9 years agoRemove variables that can be override with ceph_conf_overrides
Jirayut Nimsaeng [Thu, 8 Dec 2016 15:22:01 +0000 (22:22 +0700)]
Remove variables that can be override with ceph_conf_overrides

9 years agoAdd mon_pg_warn_max_per_osd, osd_pool_default_size and osd_pool_default_min_size...
Jirayut Nimsaeng [Thu, 8 Dec 2016 12:25:15 +0000 (19:25 +0700)]
Add mon_pg_warn_max_per_osd, osd_pool_default_size and osd_pool_default_min_size variables

9 years agodocker: fix ceph.conf generation for multiple mons
Andrew Schoen [Wed, 7 Dec 2016 23:02:02 +0000 (17:02 -0600)]
docker: fix ceph.conf generation for multiple mons

Before this patch only the address for the first mon would show
in the ceph.conf even if there were multiple mons in the inventory.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
9 years agocommon: do not regenerate a cluster fsid if cluster exists
Sébastien Han [Tue, 6 Dec 2016 14:59:49 +0000 (15:59 +0100)]
common: do not regenerate a cluster fsid if cluster exists

This commit solves the situation where you lost your fetch directory and
you are running ansible against an existing cluster. Since no fetch
directory is present the file containing the fsid doesn't exist so we
are creating a new one. Later the ceph.conf gets updated with a wrong
fsid which causes problems for clients and ceph processes.

Closes: #1148
Signed-off-by: Sébastien Han <seb@redhat.com>