Commit Graph

1623 Commits (0ea1811f6fa68e7f93eb15a6faf94c06b0cf1838)

Author SHA1 Message Date
Musee Ullah 7636d09f92
mon: run ceph-create-keys after startup for kraken release 2017-01-17 22:51:39 +09:00
Andrew Schoen 0c55a35963 ceph-osd: use ceph_docker_registry when preparing OSDs
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-16 11:39:13 -06:00
Andrew Schoen 655b8449ae use ceph_docker_registry when starting containers
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-16 11:17:41 -06:00
Andrew Schoen 3713824b79 ceph-docker-common: add symlink to ceph.ceph-docker-common
This allows for the role to be used with ansible-galaxy and to fix the
include in all the meta/main.yml files in the roles.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-16 10:42:42 -06:00
Andrew Schoen 9449dbf083 use ceph_docker_registry in all the roles instead of docker.io
This allows for ceph-ansible to use other docker registries.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-16 10:42:42 -06:00
Andrew Schoen 25277587fa ceph-common: include ceph_docker_registry when fetching the image
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-16 09:51:20 -06:00
Andrew Schoen c07b7ddbaa use ceph-docker-common in roles that support docker deployments
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-16 09:30:53 -06:00
Andrew Schoen f770780dda ceph-docker-common: a new role to share things common to docker
We can use this to share common variables and tasks needed for every
containerized deployment.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-16 09:28:40 -06:00
Logan V c78a3707f1 Remove libcephfs1 from group_vars sample
The libcephfs1 package was removed from ceph-common in
cb1c06901e, 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.
2017-01-16 09:15:57 -06:00
Daniel Marks fefaa8ed13 Set empty list as default for osd_directories
As described in issue #1224 leaving this variable undefined may
cause a problem during execution of the ceph-osd role.
2017-01-13 15:27:16 +01:00
Sébastien Han 6ebea0cf42 Merge pull request #1208 from clwells/multisite-defined-endpoint
[rtr] Granular Multi-site PULL Variables
2017-01-10 16:12:04 -05:00
Chris Wells d609dca7a6
Updated pull[port|proto] to pull_[port|proto] and regenerated base group vars 2017-01-07 09:33:24 -05:00
Ken Dreyer 63e5b5c406 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.
2017-01-05 14:40:39 -07:00
Sébastien Han cb1c06901e Merge pull request #1171 from cbodley/wip-libcephfs2
bump package version to libcephfs2
2017-01-03 10:48:56 +01:00
Sébastien Han 676d8812f9 Merge pull request #1212 from ceph/cluster-name-info
common: document "cluster" variable usage
2017-01-03 10:18:41 +01:00
Sébastien Han f1308b5f71 Merge pull request #1213 from ceph/cephx-initial-mon
mon: only put mon initial key in mon kv when cephx is enabled
2017-01-02 13:43:22 +01:00
Sébastien Han 468afa2d5b mon: only put mon initial key in mon kv when cephx is enabled
Task put initial mon keyring in mon kv store from
ceph-mon/tasks/ceph_keys.yml is failing when cephx is disabled. The root
cause is that variable monitor_keyring is not populated by any task from
deploy_monitors.yml.

Fixes: #1211

Signed-off-by: Sébastien Han <seb@redhat.com>
2017-01-02 11:16:03 +01:00
Sébastien Han b76d0aceca common: document "cluster" variable usage
Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1408848

Signed-off-by: Sébastien Han <seb@redhat.com>
2017-01-02 09:20:43 +01:00
Shengjing Zhu 93a8b69a57 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>
2016-12-28 16:21:23 +08:00
Chris Wells 5f37ae9d1f
Allowing granular control of the pull host/port/protocol for installs where SSL/443 is used and direct civetweb access isn't necessarily available. 2016-12-25 21:54:13 -05:00
Sébastien Han d44927de03 common: rename rh_storage to rhcs to match product name
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-20 13:49:11 +01:00
Sébastien Han 775d61ed09 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>
2016-12-20 13:42:24 +01:00
tynorth-cisco 704b49ba33 use monitor name, not host ansible host in ceph.conf
in ceph-common there is a fact check for monitor name
that will set it to ansible_host or ansible_fqdn
2016-12-19 12:33:38 -08:00
Sébastien Han fd4fb8d5b2 Merge pull request #1199 from Logan2211/fix-mon-fsid-block
Workaround for broken 'block' syntax
2016-12-19 11:30:58 +01:00
Andrew Schoen 99d66e09d9 Merge pull request #1153 from ceph/cluster-name-test
test: add cluster name support test scenario
2016-12-16 13:10:52 -06:00
Sébastien Han 2d8ac4a586 docker: only use systemd to manage containers
Prior to this patch we had several ways to runs containers, we could use
ansible's docker module on some distro and on containers distros we were
using systemd. We strongly believe threating containers as services with
systemd is the right approach so this patch generalizes to all the
distros. These days most of the distros are running systemd so it's fair
assumption.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-16 19:37:05 +01:00
Logan V ffc89ee95f 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.
2016-12-16 09:24:48 -06:00
Sébastien Han ce7431a227 docker: add support for cluster name
We need to honour the cluster name that was chosen by ceph-ansible and
pass it to ceph-docker.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-16 14:31:21 +01:00
Sébastien Han dcd94f6c52 Merge pull request #1179 from Logan2211/rgw-keystone-v3
RGW/Keystone integration improvements
2016-12-16 13:52:52 +01:00
Sébastien Han 608b008a95 mon: add the initial mon keyring to the mon store
Once we have our first monitor up and running we need to add it to the
monitor store as a safety measure. Just in case the local file gets
deleted and you need to add a new monitor. Now you can retrieve this key
like this:

ceph config-key get initial_mon_keyring > initial_mon_keyring.txt

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-16 11:54:02 +01:00
Sébastien Han 6c71cf5b10 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>
2016-12-16 11:42:07 +01:00
Logan V cccdb2ab13 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.
2016-12-15 17:17:41 -06:00
Logan V aa0bfaa89a 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.
2016-12-15 17:17:41 -06:00
Logan V 12f8b5c38e 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/
2016-12-15 17:17:37 -06:00
Sébastien Han faabfdcefe Merge pull request #1178 from zhsj/dev-partition
Add prepare osd with partition devices in raw_multi_journal
2016-12-15 22:50:23 +01:00
Sébastien Han fbeacb325c Merge pull request #1192 from davidebelloni/master
Adding Proxy support
2016-12-15 17:38:38 +01:00
Davide Belloni 87373e75d9 Adding Proxy support 2016-12-15 15:28:59 +01:00
Sébastien Han f0687995e1 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>
2016-12-15 15:26:01 +01:00
Sébastien Han 03f7de68a9 Merge pull request #1167 from guits/ceph-fsid
common: do not regenerate initial mon keyring if cluster exists
2016-12-15 15:16:40 +01:00
Shengjing Zhu a1b00e96db enable prepare osd with partition devices in raw_multi_journal
Address #895

Signed-off-by: Shengjing Zhu <zsj950618@gmail.com>
2016-12-15 22:03:38 +08:00
Sébastien Han 81baa6bb73 osd: docker change required variables for check
when running a containerized deployment, some variable are not
applicable thus should not be checked.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-15 14:50:29 +01:00
Guillaume Abrioux 471be5e629 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>
2016-12-15 14:39:56 +01:00
Shengjing Zhu c50b5867a6 fix ceph-rest-api not using correct configure file
Signed-off-by: Shengjing Zhu <zsj950618@gmail.com>
2016-12-15 20:23:36 +08:00
Sébastien Han 245a556c5e Merge pull request #1186 from ceph/apt-pining
common: set apt pinning with Red Hat Ceph Storage
2016-12-15 12:28:45 +01:00
Sébastien Han f6736e5420 common: show which file we are waiting for
We can now see the name of the file we are waiting for, depending on the
cluster name this will change.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-14 21:08:18 +01:00
Sébastien Han 3776c23b9a 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>
2016-12-14 19:03:04 +01:00
Sébastien Han 13a72fd24b 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>
2016-12-14 19:01:54 +01:00
Alfredo Deza 640442bee6 ceph-agent: do not check for subscription manager for agent install
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1403576
2016-12-14 08:13:26 -05:00
Sébastien Han 2f6d603738 Merge pull request #1183 from zhsj/fix-custom-repo
fix ceph_custom not usable
2016-12-14 13:16:58 +01:00
Shengjing Zhu 9051f8d5b4 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
2016-12-14 16:55:41 +08:00
tynorth-cisco 3c6e156d08 Change attribute call to .get call in ceph keys
If previous check was not run, .stdout_lines is not a valid key on the dictionary.
To get around this, use .get("stdout_lines") instead.

Also add in a default empty list
2016-12-13 16:48:14 -08:00
Casey Bodley 0ebb728d7d 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>
2016-12-09 16:49:20 -05:00
Sébastien Han 189f4fee47 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>
2016-12-09 16:00:46 +01:00
Sébastien Han 1de8176bf4 common: move mandatory variables to their respective roles
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-09 14:45:05 +01:00
Sébastien Han 75cb749570 docker: consolidate ceph-ansible and ceph-docker varible
This commit re-uses some of the existing ceph-ansible variables for a
containirzed deployment. There is no reasons why we should add new
variables for the containerized deployment.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-09 14:39:05 +01:00
Andrew Schoen 2c98b1d70f Merge pull request #1169 from ceph/shaman-support
Shaman support for `ceph_dev`
2016-12-09 07:09:38 -06:00
Sébastien Han 9ea6517d69 Merge pull request #1165 from opsta/master
Improve script to install Ceph AIO without Vagrant
2016-12-09 10:47:46 +01:00
Alfredo Deza deb96d7b04 ceph-common: fetch ceph_dev repo contents for CentOS from shaman
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-12-08 16:55:15 -05:00
Alfredo Deza 4e2948bce3 ceph-common: remove ceph_dev* vars that are no longer needed
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-12-08 16:55:15 -05:00
Alfredo Deza f741ee7402 ceph-common: fetch ceph_dev repo contents for debian from shaman
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-12-08 16:55:14 -05:00
Logan V 034fc1a791 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.
2016-12-08 13:16:02 -06:00
Sébastien Han 7b0602c224 Merge pull request #1157 from ceph/ceph-fsid
common: do not regenerate a cluster fsid if cluster exits
2016-12-08 18:55:21 +01:00
Andrew Schoen 7812e0b32e Merge pull request #1162 from ceph/timeout-collect-keys
mon: remove collect keys
2016-12-08 10:28:28 -06:00
Jirayut Nimsaeng 6f8d17646c Remove variables that can be override with ceph_conf_overrides 2016-12-08 22:22:01 +07:00
Jirayut Nimsaeng 8d6277bbc3 Add mon_pg_warn_max_per_osd, osd_pool_default_size and osd_pool_default_min_size variables 2016-12-08 19:25:15 +07:00
Andrew Schoen 9942b5028a 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>
2016-12-07 17:22:10 -06:00
Sébastien Han 93c3988bfe mon: remove collect keys
Once the monitor process starts it will also trigger `ceph-create-keys`
which will collect the admin key and bootstrap keys. We used to force
this command because we were having issues on some distros like centos
7.0 and 7.1 not triggering this. This is fixed on centos 7.2 and not an
issue on ubuntu 14.04 or 16.04 so we can remove this task. If the
monitor hangs or fails to start the playbook will fail right after at
the "wait for client.admin key exists" task after 300sec.

Closes: #1161

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-07 14:38:39 +01:00
Sébastien Han de07ba8fbf 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>
2016-12-07 11:26:48 +01:00
Andrew Schoen e2f4d4ef56 ceph-rgw: default rgw_config_keys in defaults/main.yml
This avoid an issue with it being undefined if nfs_obj_gw is
set to False.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-12-01 10:28:55 -06:00
Andrew Schoen 913dc8e01e ceph-rgw: no need to use playbook_dir when fetching configs for docker
This avoids a bug when fetch_directory is not a relative to the playbook
directory.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-12-01 10:28:54 -06:00
Andrew Schoen bbbd8ff148 ceph-osd: no need to use playbook_dir when fetching configs for docker
This causes a bug when fetch_directory is not relative to the playbook
directory.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-12-01 10:28:54 -06:00
Andrew Schoen aeab09938a ceph-mon: no need to include playbook_dir when fetching configs
This causes a bug when fetch_directory is not a relative path to the
playbook location.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-12-01 10:28:54 -06:00
Andrew Schoen 1e64eb7111 ceph-mon: adds static: no to an include to avoid an ansible bug
Adding that avoids this bug:

https://github.com/ansible/ansible/issues/18206

Without that you'll get failures like:

TASK [ceph-mon : set keys permissions]
*****************************************
task path:
/home/andrewschoen/ceph-ansible/roles/ceph-mon/tasks/ceph_keys.yml:31
fatal: [mon0]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute 'stdout_lines'"}

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-12-01 10:28:54 -06:00
Sébastien Han bb57238115 Merge pull request #1139 from ceph/last-cleanup-apache
common: remove apache file
2016-12-01 11:04:48 +01:00
Sébastien Han 20a11a3111 common: remove apache file
we recently dropped the support for apache with rgw, so this commit
removes the last remaining file.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-12-01 11:02:31 +01:00
Guillaume Abrioux c4b972cfd7 Add gluster nfs ganesha repo only for Ubuntu
According to the official documentation, adding PPA is not available for Debian.
2016-11-30 16:50:52 +01:00
Sébastien Han 153837c195 Merge pull request #1125 from guits/master
Use 'package' module instead of yum, apt and dnf
2016-11-30 15:50:23 +01:00
Sébastien Han 945525934e Merge pull request #1131 from guits/refact_code
Refact temporary vars in ceph-common defaults.
2016-11-30 15:46:15 +01:00
Guillaume Abrioux 07b953f420 Refact temporary vars in ceph-common defaults.
These variables were defined here to be sure that
`roles/ceph-common/tasks/checks/check_mandatory_vars.yml` has all variables defined.
2016-11-30 14:36:56 +01:00
Ken Dreyer 9f0b3ceb6b rm ceph-extra.repo and redhat_distro_ceph_extra variable
We removed the "apache" setting for "radosgw_frontend" in
adfdf6871e.

As part of that change, we removed the final references to
ceph-extra.repo, but I failed to clean up this file itself.

Now that nothing uses this file, delete it.

This file contained the sole reference to redhat_distro_ceph_extra, so
we can drop that variable as well.
2016-11-29 14:42:34 -07:00
Guillaume Abrioux 76220ed719 Use 'package' module instead of yum, apt and dnf
Refactor the code using 'package' module

Fix Issue #520

(However it doesn't cover all cases because some cases are not refactorable.
Ex: because of diverging packages name between distribution)
2016-11-29 17:29:11 +01:00
Daniel Marks 74cf3532a9 Better --check compatibility for ceph-rgw role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-27 15:00:10 +01:00
Daniel Marks 4c76001961 Better --check compatibility for ceph-restapi role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-27 15:00:10 +01:00
Daniel Marks 404ad8f484 Better --check compatibility for ceph-rbd-mirror role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-27 15:00:10 +01:00
Daniel Marks ba0f16f485 Better --check compatibility for ceph-osd role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-27 15:00:10 +01:00
Daniel Marks 444c8fad40 Better --check compatibility for ceph-nfs role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-26 21:31:56 +01:00
Daniel Marks 9337b19ac0 Better --check compatibility for ceph-mon role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-26 21:05:32 +01:00
Daniel Marks 7b1dbbbdf8 Better --check compatibility for ceph-mds role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-26 20:52:24 +01:00
Daniel Marks 7371e9a668 Better --check compatibility for ceph-fetch-keys role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-26 20:42:08 +01:00
Daniel Marks c561d2635e Better --check compatibility for ceph-common role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-26 20:39:12 +01:00
Daniel Marks 2e50e5ba88 Better --check compatibility for ceph-common-coreos role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-26 17:48:06 +01:00
Daniel Marks 767c5c1c86 Better --check compatibility for ceph-agent role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-26 17:35:57 +01:00
Logan V 684a513258 Fix jinja defaulting syntax
a397922 introduced a syntax error by attempting to default an unquoted
string, which causes execution failures on some ansible versions with:

Failed to template {{ ceph_rhcs_mount_path }}: Failed to template {{ ceph_stable_rh_storage_mount_path | default(/tmp/rh-storage-mount) }}: template error while templating string: unexpected '/'
2016-11-24 17:47:49 -06:00
Daniel Marks 624ed92ee2 Better --check compatibility for ceph-rgw role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-24 11:54:43 +01:00
Daniel Marks 320dba7490 Better --check compatibility for ceph-mon role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-24 11:54:10 +01:00
Daniel Marks 3eef386532 Better --check compatibility for ceph-common role
Carefully chosen "always_run: true" parameters for read-only tasks that
register variables. This enables --check runs (at least on deployed
clusters).
2016-11-24 11:53:29 +01:00
Daniel Marks 9cfd0f4118 Make NTP checks usable with '--check'
As those task are only reading the installed packages and their output
is required in later tasks it is safe to run them also in check mode.
2016-11-23 13:52:56 +01:00
Sébastien Han c8c927faeb Merge pull request #1112 from zhsj/fix-py3
fix python3 compatibility in jinja2 template.
2016-11-22 18:07:09 +01:00
Sébastien Han 829e2b6598 Merge pull request #1077 from font/rolling_update
Support containerized rolling update
2016-11-22 16:56:46 +01:00
Shengjing Zhu 3e06e39550 fix python3 compatibility in jinja2 template.
rename iterkeys to keys
2016-11-22 21:52:52 +08:00
Ken Dreyer adfdf6871e remove apache support for RGW
libfcgi is dead upstream (http://tracker.ceph.com/issues/16784)

The RGW developers intend to remove libfcgi support entirely before the
Luminous release.

Since libfcgi gets little-to-no developer attention or testing, remove
it entirely from ceph-ansible.
2016-11-18 13:13:12 -07:00
Ivan Font 92ffc5307d Fix error caused by missing OSD cluster keyring
Ansible task was not properly fetching OSD cluster keyring causing
the keyring to be missing when we needed to authenticate. Similarly, we
were not properly waiting on the OSD keyring to be available before
continuing.

Signed-off-by: Ivan Font <ifont@redhat.com>
2016-11-17 23:03:11 -08:00
Ivan Font 3ff17f1c8f Support containerized rolling update
- Update rolling update playbook to support containerized deployments
  for mons, osds, mdss, and rgws
- Skip checking if existing cluster is running when performing a rolling
  update
- Fixed bug where we were failing to start the mds container because it
  was missing the admin keyring. The admin keyring was missing because
  it was not being pushed from the mon host to the ansible host due to
  the keyring not being available before running the copy_configs.yml
  task include file. Now we forcefully wait for the admin keyring to be
  generated before continuing with the copy_configs.yml task include file
- Skip pre_requisite.yml when running on atomic host. This technically
  no longer requires specifying to skip tasks containing the with_pkg tag
- Add missing variables to all.docker.sample
- Misc. cleanup

Signed-off-by: Ivan Font <ifont@redhat.com>
2016-11-17 11:25:25 -08:00
James Saint-Rossy 3023d0339c Replaced Ansible 2.2 specific check_mode: no with backwards compatible always_run: yes 2016-11-16 16:47:43 -05:00
Sébastien Han 81a72cb85d Merge pull request #1068 from ceph/v2.2
moving to ansible v2.2 compatibility
2016-11-16 16:33:40 +01:00
Sébastien Han 200388d532 Merge pull request #1082 from albertomurillo/v2.2
sync config_template plugin with master branch
2016-11-16 15:50:55 +01:00
Sébastien Han 97165abd8a Merge pull request #1091 from ceph/rgw-when
ceph-rgw: add systemd condition
2016-11-14 16:25:26 +01:00
Sébastien Han d4cf547f0e Merge pull request #1032 from ceph/backward-compat-rhcs
common: backward compatibility name for rhcs
2016-11-14 15:49:42 +01:00
Sébastien Han c16fd4b148 ceph-rgw: add systemd condition
We have a fact that detects the package manager, so we can detect if
systemd is used. Radosgw was still using some old logic from Ubuntu.
Ubuntu 16.04 now has systemd so we don't need to configure rgw as it was
running on upstart.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-11-14 15:12:20 +01:00
Andrew Schoen 06ce643f7d common: reformat mon_initial_members with indention
Signed-off-by: Andrew Schoen <aschoen@redhat.com>

Resolves: testing#updates
2016-11-08 10:35:43 -06:00
Andrew Schoen dea9fbe9d0 common: provide a default for monitor_address_block
Signed-off-by: Andrew Schoen <aschoen@redhat.com>

Resolves: testing#updates
2016-11-08 10:35:43 -06:00
Andrew Schoen fcacf90939 common: check for monitor_interface before monitor_address in ceph.conf
Signed-off-by: Andrew Schoen <aschoen@redhat.com>

Resolves: testing#updates
2016-11-08 10:35:42 -06:00
Alberto Murillo Silva d16a6b47f0 sync config_template plugin with master branch
ansible 2.2 deprecates first_available_file option which is used in
the config_template module by 'generate ceph configuration file' task.

This change syncs the config_module files from their master repository
in github.com/openstack/openstack/ansible-plugins which includes the fix

2f6cac2cf6

Signed-off-by: Alberto Murillo Silva <alberto.murillo.silva@intel.com>
2016-11-08 10:12:16 -06:00
Sébastien Han a2fcd222d2 moving to ansible v2.2 compatibility
Signed-off-by: Sébastien Han <seb@redhat.com>
Co-Authored-By: Julien Francoz julien@francoz.net
2016-11-04 10:09:38 +01:00
Andrew Schoen 6115ad11d5 Merge pull request #1069 from ceph/dmycrypt-checks
osd dmcrypt: add ability to check devices
2016-11-03 10:28:22 -05:00
Andrew Schoen f87aabcb21 common: remove underscores in ceph.conf so config names are consistent
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-11-03 09:25:03 -05:00
Sébastien Han 32018f80a1 osd dmcrypt: add ability to check devices
Even for dmcrypt we need to check the "devices" status and
"raw_journal_devices" as well so we can fix them if there is something
wrong with them.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-11-03 15:20:07 +01:00
Andrew Schoen 65544fb6aa ceph-common: remove unused mon_addr_interface.j2 template
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-11-02 15:36:03 -05:00
Andrew Schoen 66bf9eca20 ceph-common: remove unused mon_addr_address.j2 template
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-11-02 15:35:07 -05:00
Andrew Schoen 49dba08c05 fixes monitor_address and monitor_interface features
Before this commit if you had set monitor_interface in your
inventory file for a specific host it would be ignored and the value
in group_vars/all would have been used.

Also, this enables support for monitor_address again as it had been
broken by previous changes to this template.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-11-02 15:27:12 -05:00
Eduard Egorov 557d26ca8e Fix 'raw_journal_devices' to be initialized as a list in ceph-common defaults. Add empty 'devices' list there as well. Adjust 'devices' and 'raw_journal_devices' checks.
This is done for preventing of their use-before-definition for osd scenarios checks (should be removed after a refactor has properly seperated all the checks into appropriate roles).

Signed-off-by: Eduard Egorov <eduard.egorov@icl-services.com>
2016-11-01 10:07:03 +00:00
Eduard Egorov 4895c2864e Make {{ raw_journal_devices }} list optional: define it as empty list by default, remove unneccessary 'default([])' checks
Signed-off-by: Eduard Egorov <eduard.egorov@icl-services.com>
2016-11-01 09:57:25 +00:00
Eduard Egorov f33c1cd2d2 Make {{ devices }} list optional: define it as empty list by default, remove unneccessary 'default([])' checks
Signed-off-by: Eduard Egorov <eduard.egorov@icl-services.com>
2016-11-01 09:57:25 +00:00
Leseb 59ee496088 Merge pull request #1045 from wind0204/pr-monitor_interface_with_hyphens
now you can use a network link name with a hyphen
2016-10-31 21:15:55 +01:00
Leseb fb8167cf79 Merge pull request #1052 from verdurin/revert-1042-centos-extras-ini_file
Revert "Change enabling of extras repo for CentOS to use ini_file"
2016-10-31 16:31:51 +01:00
Andrew Schoen 4146edb3d2 raw_multi_journal is not required when using dmcrypt_dedicated_journal
Fixes: https://github.com/ceph/ceph-ansible/issues/1054

Signed-off-by: Andrew Schoen <aschoen@redhat.com>

Resolves: issue#1054
2016-10-28 11:12:55 -05:00
Adam Huffman 3b9f4f7de3 Revert "Change enabling of extras repo for CentOS to use ini_file" 2016-10-26 10:04:59 +02:00
Andrew Schoen 3b2bd02c14 ceph-osd: use ini_file instead of yum_repository to enable Centos extras
Fixes issue #1041

Signed-off-by: Andrew Schoen <aschoen@redhat.com>

Resolves: issue#1041
2016-10-25 14:16:42 -05:00
Leseb 4883fa6161 Merge pull request #1042 from verdurin/centos-extras-ini_file
Change enabling of extras repo for CentOS to use ini_file
2016-10-25 09:50:52 +02:00
Gunwoo Gim (a.k.a. Nicho1as) 0421ade0df now you can use a network link name with a hyphen 2016-10-25 00:49:11 +09:00
Sébastien Han 1e6c418a65 mon: destroy and recreate rbd pool if necessary
Users reported that pool_default_pg_num is not honoured for the default
pool 'rbd'. So now we check the pg num value for the RBD pool and if it
does not match pool_default_pg_num then we delete and recreate it.
We also make sure the pool is empty first, just in case someone changed
the value manually and didn't reflect the change in ceph-ansible.

The only issue with this patch is that the pool ID will not be 0 anymore
but more likely 1.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-10-22 01:31:15 +02:00
Adam Huffman 68bafc1fd0 Change enabling of extras repo for CentOS to use ini_file
Signed-off-by: Adam Huffman <bloch@verdurin.com>
2016-10-19 22:15:14 +01:00
Simon Weald 5973f67b7b fixed breakage on Debian under ansible v2.0 caused by #74d73d1e65b6720c0372c61aea7a627e4e571a3b 2016-10-19 12:36:49 +01:00
Leseb 74d73d1e65 Merge pull request #1035 from verdurin/centos-extras
Ensure extras repo enabled on CentOS
2016-10-18 18:23:40 +02:00
Adam Huffman 9de16e4d94 Ensure extras repo enabled for CentOS across different roles
Signed-off-by: Adam Huffman <bloch@verdurin.com>
2016-10-17 21:44:30 +01:00
Simon Weald 6adab85df2 forced an apt-get update prior to installing any packages from Ceph repos 2016-10-17 15:37:26 +01:00
Adam Huffman 4315166e91 Remove superfluous distro family check
Signed-off-by: Adam Huffman <bloch@verdurin.com>
2016-10-17 10:39:06 +01:00
Adam Huffman f3dea0d40a Ensure extras repo enabled on CentOS 2016-10-16 23:23:43 +01:00
Sébastien Han a3979229fb common: backward compatibility name for rhcs
backward compatibility for ceph-ansible version running latest code but
using variables defined before commit: 492518a2

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-10-14 15:19:11 +02:00
Sébastien Han dafb100e2a common: fix rundep installation
see: https://bugzilla.redhat.com/show_bug.cgi?id=1382878

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-10-10 16:57:37 +09:00
9seconds ff629f749b Merge remote-tracking branch 'upstream/master' into cluster_name_for_ceph_fetch_keys 2016-10-07 16:08:58 +03:00
suuuper 1abed53f7d Fixed packages for red hat 2016-10-07 10:36:19 +02:00
9seconds 0184469229 Allow to propagate cluster name to ceph-fetch-keys
ceph-fetch-keys role currently works only if cluster name is 'ceph'.
This commit allows to set custom cluster name in 'defaults' in the same
fashion as other roles do.
2016-10-07 09:06:22 +03:00
Sébastien Han 9753e29bae osd: clarify osd scenarios
Co-Authored-By: Rachana Patel <racpatel@redhat.com>
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-10-06 12:01:29 +02:00
Leseb bceb892a8e Merge pull request #1006 from ceph/fix-autodiscovery
osd: fix autodiscovery disk
2016-10-06 11:34:43 +02:00
Sébastien Han 860303c265 osd: fix autodiscovery disk
Signed-off-by: Sébastien Han <seb@redhat.com>
Co-Authored-By: Christoph Dwertmann
2016-10-06 11:12:23 +02:00
Musee Ullah 564a8486b0
Remove dupes in raw_journal_devices in a consistent manner 2016-10-05 14:36:41 -07:00
OrFriedmann 14bb9026b9 Update install_on_debian.yml 2016-10-05 16:13:30 +03:00
OrFriedmann cbaa71d198 add installation of jemalloc for nfs-ganesha 2016-10-05 16:07:25 +03:00
OrFriedmann 1294d94850 add repositories required for nfs-ganesha 2016-10-05 16:04:39 +03:00
Leseb 393765c973 Merge pull request #966 from ceph/nfs-ganesha-repo
common: add gluster ganesha repo on Debian
2016-10-05 14:10:25 +02:00
Leseb afd0389361 Merge pull request #996 from batrick/multimds
multimds: add commands to enable and set max_mds
2016-10-04 17:43:29 +02:00
Patrick Donnelly 4127828094
multimds: add commands to enable and set max_mds
Also regenerated group_vars.

Fixes #986.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-10-04 09:40:20 -06:00
Patrick Donnelly c5d2170d96
secure_cluster: fix leftover version check
Missed by #953.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-10-04 09:39:44 -06:00
Simon Weald e160edd881 updated Debian package installation syntax for Ansible v2 2016-10-04 15:04:15 +01:00
Leseb 45898739bb Merge pull request #994 from ceph/bz-1203603
fix non skipped task for ansible v1.9.x
2016-10-04 11:41:14 +02:00
Sébastien Han f162db1202 fix non skipped task for ansible v1.9.x
please refer to
https://bugzilla.redhat.com/show_bug.cgi?id=1376283

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-10-03 16:48:04 +02:00
James Saint-Rossy 9c7dac6b94 Updated release version check 2016-09-30 11:43:53 -04:00
James Saint-Rossy e2198b3c6a Rebased 2016-09-29 19:48:54 -04:00
Proskurin Kirill c7be6f85c7 Remove duplication of "osd crush chooseleaf type"
Signed-off-by: Proskurin Kirill <kproskurin@mirantis.com>
2016-09-28 18:47:46 +03:00
James Saint-Rossy 99f1caa120 Fixed check to legacy ceph_stable_releases list 2016-09-26 11:33:17 -04:00
James Saint-Rossy d36a99e41b Used list style ands for better readibility and fixed legacy debian checks 2016-09-26 09:19:15 -04:00
James Saint-Rossy 982c44d41c Rebased with upstream master 2016-09-25 23:22:16 -04:00
Alfredo Deza d5ddd86e9c group_vars: default to version 2 of RHCS
This RHCS version is now generally available. Default to using it.

Signed-off-by: Alfredo Deza <adeza@redhat.com>
Signed-off-by: Ken Dreyer <kdreyer@redhat.com>

Related: rhbz#1357631
2016-09-23 11:22:06 -06:00
Patrick Donnelly 2bf06246a8
ceph-common: install ceph-fuse on clients
Fixes #985.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-09-22 23:01:44 -04:00
Leseb eb8b59f409 Merge pull request #984 from thotypous/master
Allow deployer to customize openstack pools
2016-09-22 11:34:53 +02:00
Paulo Matias a13094b888 Allow deployer to customize openstack pools
By overriding the openstack_pools variable introduced by this commit, the
deployer may choose not to create some of the openstack pools, or to add
new pools which were not foreseen by ceph-ansible, e.g. for a gnocchi
storage backend.

For backwards compatibility, we keep the openstack_glance_pool,
openstack_cinder_pool, openstack_nova_pool and
openstack_cinder_backup_pool variables, although the user may now choose
to specify the pools directly as dictionary literals inside the
openstack_pools list.
2016-09-21 14:49:42 -03:00
Leseb e5acff23eb Merge pull request #981 from ceph/persistent-disk-path
ceph-osd: get full link path when testing if a partition
2016-09-21 14:56:50 +02:00
Sébastien Han 381af6c18d ceph-osd: get full link path when testing if a partition
This allows us to test devices set with persistent naming such as
/dev/disk/by-*
When registering devices we can use persisent (/dev/disk/by-*) or
non-persistent (/dev/sd*). Both declarations are supported by
ceph-ansible. There was just two tasks that were not compatible with
this. Since we support using partitions directly we need to test that
because the device activation will be different. To test if the device
is a partition we use a regular expression which wasn't compatible with
the persistent device naming format (/dev/disk/by-*).

This commit solves this issue by reading the path of the symlink since
devices like /dev/disk/by-* are symlinks to devices like /dev/sd*

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-09-20 10:15:06 +02:00
Patrick Donnelly bcb2e39017
ceph.conf: add variable setting monitor addr block
For some providers (such as upcoming Linode support), some NICs may have
multiple IP addresses. (In the case of Linode, the only NIC has a public
and private IP address.) This is normally okay as we can use the
ceph.conf cluster_network and public_network variables to force the
monitor to listen on the addresses we want. However, we also need
ansible to set the correct monitor IP addresses in "mon hosts" (i.e. the
addresses the monitors will listen on!). This new monitor_address_block
setting tells ansible which IP address to use for each monitor.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-09-19 17:35:41 -04:00
Patrick Donnelly 35c64f91f4
deploy_monitors: use python2 for v2 code
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2016-09-18 20:42:14 -04:00
James Saint-Rossy d4a60a9394 Added ceph_release generation and fixed missing whitespace in ceph_release checks 2016-09-09 18:16:41 -04:00
James Saint-Rossy 666637f715 Replaced is_before is_after is_ booleans with numerical version dictionary 2016-09-09 17:34:26 -04:00
James Saint-Rossy f52be23770 Prevent local_action from requiring root 2016-09-02 19:31:59 -04:00
James Saint-Rossy 9d97ffed30 Rebasing with upstream 2016-08-31 17:13:09 -04:00
Sébastien Han b5627155a8 common: add gluster ganesha repo on Debian
should fix: #964

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-30 17:01:07 +02:00
Sébastien Han d3ceab904d iscsi-gw: preparing the new iscsi role
adding the bare minimum to test and start the new role.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-26 15:29:07 +02:00
Sébastien Han 5b4dab3c89 Merge branch 'master' of github.com:ceph/ceph-ansible 2016-08-26 13:32:50 +02:00
Sébastien Han 923c40fc61 common: declare raw_journal_devices
So we can safely pass the check and avoid the undeclared variable error.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-26 13:31:45 +02:00
Ivan Font 94f8d8540a NFS fixes
- Move mon_containerized_default_ceph_conf_with_kv config from ceph-mon
  to ceph-common defaults as it's used in ceph-nfs
- Update conditional to generate ganesha config when not
  mon_containerized_default_ceph_conf_with_kv
- Revert change to store radosgw keyring using ansible_hostname on
  ansible server so that ceph-nfs can find it
- Update ceph-ceph-nfs0-rgw-user container to use ansible_hostname
  variable

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-08-25 22:41:31 -07:00
Leseb 8719b3556c Merge pull request #955 from font/rgw
Fix for ceph-rgw role
2016-08-24 09:48:56 +02:00
Ivan Font 2073a72b39 Fix for ceph-rgw role
- Short-circuit conditional to prevent dereferencing an undefined
  dictionary variable

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-08-24 00:30:05 -07:00
Sébastien Han 708c43a04e docker: fix osd configuration
use the activation scenario instead of the full ceph_disk one, we
already have a task to prepare osds so we just need to activate the
device.

working for me using vagrant :)

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-24 09:05:14 +02:00
Sébastien Han a4dbe49f7f docker: fix more than one monitor deployment
There is no need to run the actions from
roles/ceph-mon/tasks/docker/create_configs.yml
on the first monitor only since the monitor deployment happens
**serially**.
Moreover with Vagrant it's useful to allow the auto creation of the
cluster fsid, so enabling the option. If this is not desired you can
still set `fsid: 9c9c0448-0551-401d-b55b-e5b3a42bae42` for example.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-24 09:05:14 +02:00
Sébastien Han f351329897 docker: use cluster name
Fix cluster name for docker scenario and other playbooks.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-24 09:04:49 +02:00
James Saint-Rossy ab93cd0858 Remove unused use_server_package_split boolean 2016-08-24 00:38:52 -04:00
James Saint-Rossy 7e284920d1 Fixes for Hammer install and added numerical release checks 2016-08-24 00:23:47 -04:00
Ivan Font ef4d0a39f2 Restrict fact gathering to mons and update ceph.conf
- Gather facts only for mons before processing ceph-mon role serially in
  containerized playbook sample
- Updated ceph.conf in order to generate a valid ceph.conf

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-08-22 10:42:27 -07:00
Leseb 7b6e85e096 Merge pull request #941 from dang/nfs-rgw
NFS fixups
2016-08-19 17:29:16 +02:00
Leseb b4fe16c31f Merge pull request #924 from jsaintrocc/check-part-speedup
check_devices.yml cleanup and optimization
2016-08-19 17:28:11 +02:00
Daniel Gryniewicz bb9df99046 NFS fixups
- Move fsal_rgw config to ceph-common, as it's shaered with ceph-rgw
- Update all.docker.sample with NFS config
- Rename fsal_rgw to nfs_obj_gw and fsal_ceph to nfs_file_gw, because
  the former names mean nothing to non-Ganesha developers

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-08-18 12:25:20 -04:00
James Saint-Rossy 449d456086 Rebased and moved multisite/rgw playbooks to infrastructure-playbooks 2016-08-17 13:28:01 -04:00
James Saint-Rossy 32f6ef7747 Merged with Upstream Master 2016-08-17 12:00:36 -04:00
asbishop 91d2c3b32d Fix pre-infernalis RPM installation of ceph-radosgw
For pre-infernalis installation of ceph-radosgw from RPM, run 'chkconfig'
to ensure systemd's ceph-radosgw.service is created.

This fixes issue #843.
2016-08-17 10:45:08 -04:00
James Saint-Rossy 6d55d57fa6 fixed name: capitilization 2016-08-16 17:57:49 -04:00
James Saint-Rossy 35a26068ef Fixed quotes and removed combined_ prefix from variables that no longer need it 2016-08-16 17:49:30 -04:00
James Saint-Rossy d8609ec687 Experimental RGW Multisite Support 2016-08-16 14:57:01 -04:00
Leseb e92d9fbce0 Merge pull request #933 from font/cephconf
Fix ceph.conf template for containerized deployment
2016-08-16 15:46:18 +02:00
Leseb 1d3374dce0 Merge pull request #935 from cdwertmann/patch-2
Remove duplicate "max open files"
2016-08-16 09:49:42 +02:00
Leseb 995efb940f Merge pull request #932 from dang/nfs-rgw
NFS for FSAL_RGW
2016-08-16 09:45:17 +02:00
Christoph Dwertmann dde346ff30 Remove duplicate "max open files" 2016-08-16 15:56:40 +10:00
Alfredo Deza 3037b75624 ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in prerequisites for iso install
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:37 -04:00
Alfredo Deza 1681a3ecb6 ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in prerequisites for cdn install
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:37 -04:00
Alfredo Deza a403645944 ceph-common: convert ceph_stable_rh_storage to ceph_rhcs when installing rhs on redhat
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:37 -04:00
Alfredo Deza 90730a7f4b ceph-common: convert ceph_stable_rh_storage to ceph_rhcs when installing rhs on debian
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:37 -04:00
Alfredo Deza 30494497b0 ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in mandatory vars
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:37 -04:00
Alfredo Deza efe2c9e518 ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in system checks
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:36 -04:00
Alfredo Deza 23051e7ea5 ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in main task
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:36 -04:00
Alfredo Deza b41c84bb0d ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in repo template
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:36 -04:00
Alfredo Deza 492518a2cd ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in defaults
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:36 -04:00
Alfredo Deza a37e2f7a1c ceph-common: convert ceph_stable_rh_storage to ceph_rhcs in README
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: issue#811
2016-08-15 11:24:36 -04:00
Ivan Font a0fc1becc8 Fix ceph.conf template for containerized deployment
Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-08-12 17:45:55 -07:00
Daniel Gryniewicz 2fd9bbbe09 NFS for FSAL_RGW
Add support for FSAL_RGW to the NFS gateway.  Both standard and
containerized versions are supported.
2016-08-12 11:49:16 -04:00
Daniel Lin 08766a243a Allow ceph-ansible to be run on a locally built/installed Ceph
-First install ceph into a directory with CMake
	cmake -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib -DWITH_SYSTEMD=ON -DCMAKE_INSTALL_PREFIX:PATH:=/usr <ceph_src_dir> && make DESTDIR=<install_dir> install/strip

-Ceph-ansible copies over the install_dir

-User can use rundep_installer.sh to install any runtime dependencies that ceph needs onto the machine from rundep
2016-08-12 10:02:15 -04:00
Leseb f37a9d1181 Merge pull request #815 from ceph/ceph-initial-mon
WIP ceph-common: test mon initial members
2016-08-12 15:27:40 +02:00
Ivan Font 0d71f9fb79 Updates for containerized rbd-mirror role
- Remove /var/lib/ceph dependencies
- Add support for rbd-mirror image tag

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-08-11 18:21:57 -07:00
James Saint-Rossy 052e4cc687 code cleanup 2016-08-10 18:03:09 -04:00
James Saint-Rossy a4c7ef3cc5 Initial support for RGW Multisite 2016-08-10 17:05:27 -04:00
Sébastien Han 673f54a100 osd: fix collocation spelling and declare dmcrypt variables
* changed s/colocation/collocation/
* declare dmcrypt variable in ceph-common so the variables check does
not fail

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-10 10:34:23 +02:00
James Saint-Rossy 5f61ff7867 ceph_devices.yml cleanup and optimization 2016-08-09 18:57:41 -04:00
Sébastien Han b0907aaeea ceph-common: test mon initial members
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-09 13:50:57 +02:00
James Saint-Rossy 402a597fe6 Added initial multisite support 2016-08-08 17:29:56 -04:00
Ivan Font ba92eb48e8 Update ntp atomic plays to use is_atomic variable
Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-08-08 10:16:48 -07:00
Ivan Font 8c67689d08 Add option to enable ntp
This fixes #845 for containerized deployments. We now also mount the
/etc/localtime volume in the containers in order to synchronize the host
timezone with the container timezone.

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-08-08 10:16:48 -07:00
Leseb f72d748bce Merge pull request #891 from ceph/dmcrypt
ceph-osd: add dmcrypt scenario
2016-08-08 16:27:34 +02:00
Sébastien Han 788b75efec ceph-osd: re-arrange osd scenario numbers
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-08-08 15:55:12 +02:00
Martin Bukatovic 1e998120f6 remove ability to disable swap
Addressing issue #919.
2016-08-08 11:35:22 +02:00
Leseb 68782732c6 Merge pull request #916 from ktdreyer/client-libvirt
ceph-common: client settings are for libvirt
2016-08-08 10:42:42 +02:00
James Saint-Rossy a4d057f555 Fix purge yum cache 2016-08-04 01:26:59 -04:00
Ken Dreyer 19c3fdc53a ceph-common: client settings are for libvirt
Prior to this change, each ceph cluster node would end up with several
"qemu-client-$pid.log" files owned by root. The [client] section would
capture *all* client activity (for example the "ceph health" command,
etc), not just librbd-in-qemu.

Restrict this section to libvirt clients only so that we don't generate
these spurious log files for other Ceph client traffic.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2016-08-02 10:00:22 -06:00
Alexey Sheplyakov 76a3d876ee ceph-mon: fix the loop in `secure the cluster' task
Deployment fails when the ``secure_cluster`` is false:

TASK [ceph-mon : secure the cluster]
*******************************************
fatal: [saceph-mon.vm.ceph.asheplyakov]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute 'stdout_lines'"}
fatal: [saceph-mon2.vm.ceph.asheplyakov]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute 'stdout_lines'"}
fatal: [saceph-mon3.vm.ceph.asheplyakov]: FAILED! => {"failed": true, "msg": "'dict object' has no attribute 'stdout_lines'"}

A conditional include evaluates all included tasks with the (additional)
conditional applied to every task [1]. Thus all tasks from `secure_cluster.yml'
are always evaluated (with an additional 'when: secure_cluster' condition).
The `secure the cluster' task iterates over ``ceph_pools.stdout_lines``
even if ``secure_cluster`` is false: in loops ansible applies conditional
to every item (by design) [2]. However the `collect all the pools' task
is skipped if the very same condition evaluates to false, which leaves
the ``ceph_pools`` undefined, so the `secure the cluster' task fails:

Provide the default (empty) list to avoid the problem.

[1] http://docs.ansible.com/ansible/playbooks_conditionals.html#applying-when-to-roles-and-includes
[2] http://docs.ansible.com/ansible/playbooks_conditionals.html#loops-and-conditionals

Closes: #913

Signed-off-by: Alexey Sheplyakov <asheplyakov@mirantis.com>
2016-07-29 14:08:12 +03:00
Ivan Font 08e54d7722 Fix to check if cluster is running
Update each role's task to use the respective role's username, image
name, and image tag to check if a container is already running. This was
causing false failures because we were not matching any running
containers and subsequently running checks.yml to check the status of
cluster files being left behind.

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-07-28 18:10:49 -07:00
Ken Dreyer 1b7e08ad50 remove references to Inktank Ceph Storage
ICE is beyond end-of-life, and this Inktank GPG key is considered
untrusted (https://access.redhat.com/blogs/766093/posts/2176181)

RIP ICE, we will not miss you.
2016-07-26 13:57:32 -06:00
Leseb 5a26dff9c0 Merge pull request #902 from ceph/journal-default
common: set journal size to 5GB
2016-07-26 13:53:26 +02:00
Sébastien Han b0e152d684 common: set journal size to 5GB
Journal size is not mandatory anymore, a default from 5GB is being
added. A simple warning message will show up if the size is set to
something below 5GB.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-07-26 13:51:32 +02:00
Leseb 80417dba2d Merge pull request #905 from chengweiv5/remove-dup-option
sgdisk: remove duplicated option `-g`
2016-07-26 11:11:20 +02:00
Sébastien Han 2ca0734c38 common: refresh config template module
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-07-26 10:44:12 +02:00
Chengwei Yang 1bfab44aa9 sgdisk: remove duplicated option `-g`
Option `-g` of sgdisk is duplicated with `--mbrtogpt`, so lets remove it.

This fix #896

Signed-off-by: Chengwei Yang <yangchengwei@qiyi.com>
2016-07-26 08:55:43 +08:00
Sébastien Han 5978d55d22 ceph-osd: add dmcrypt scenario
add the ability to encrypt osd data store using dm-crypt

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-07-19 18:02:11 +02:00
Sébastien Han afb1b16353 common: prepare arm support
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-07-19 17:17:16 +02:00
Kalle Happonen 3100d81831 Added support for --check flag in ceph-common
The ceph-common role fails when you run ansible with --check. Adding
always_run to a few tasks makes the check go through easier (although
it's not foolproof).
2016-07-19 15:52:45 +03:00
Leseb ce3258898f Merge pull request #879 from ceph/rbd-mirror-docker
rbd-mirror: container deployment support
2016-07-19 12:07:56 +02:00
Leseb 48599c07cc Merge pull request #848 from font/master
Add option to enable ntp
2016-07-18 18:24:54 +02:00
Sébastien Han e6097469bd rbd-mirror: container deployment support
add the ability to deploy a containerized version of the rbd mirror
daemon.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-07-18 18:13:27 +02:00
Leseb 70285a1bd4 Merge pull request #882 from dang/nmap-fix
Only check ports if NMAP exists
2016-07-18 11:01:37 +02:00
Alfredo Deza 9cba7735bd ceph-common: skip default installs on redhat if ISO needs to be used
Because the ISO installs would happen later in the playbook.

Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1357065
2016-07-15 13:09:32 -04:00
Daniel Gryniewicz 352824cee7 Allow generating FSID for docker
The docker case wasn't able to generate an FSID, it required it to be
set.  Allow generating it.

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-07-13 13:19:22 -04:00
Daniel Gryniewicz 71e7aa348e Only check ports if NMAP exists
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-07-13 13:17:49 -04:00
pprokop a11eb03aae Fixing typos 2016-07-13 10:25:05 +02:00
pprokop 69cce9c135 Removing --rm flag from prepare osd 2016-07-13 10:22:17 +02:00
pprokop 41386c7bde Adding missing tag 2016-07-13 10:22:17 +02:00
pprokop 09d104f297 Fixing typos 2016-07-13 10:22:17 +02:00
pprokop 26688d10dc Removing creating symbolic links and fixing systemctl enable not working on CoreOS and migrating form docker module to shell in prepare image 2016-07-13 10:22:15 +02:00
pprokop 3950751317 Adding an option to choose an etcd port and tag of docker images 2016-07-13 10:19:50 +02:00
Ivan Font 6f5f6610a8 Support for docker image tags
Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-07-12 15:49:07 -07:00
Alfredo Deza 0656dfc5df ceph-common: explicitly create the directory portion of the iso path
This will help if the path to the iso exists in the originating server but not
in the remote paths. This issue is not seen if using /tmp/file.iso but does
show up when using nested paths.

Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1355762
2016-07-12 09:59:27 -04:00
Leseb ede7a2afd1 Merge pull request #874 from KGoreczny/docker_module_for_ansible_2_1_support
Fix docker deployment for Ansible 2.1
2016-07-12 15:36:07 +02:00
KGoreczny 11bed371ac remove trailing spaces
Signed-off-by: KGoreczny <krzysztof.goreczny@intel.com>
2016-07-12 14:50:56 +02:00
Leseb 55216e0a4d Merge pull request #880 from cdwertmann/patch-1
Use correct object names when zapping GPT header
2016-07-12 13:41:47 +02:00
Leseb f6daa79916 Merge pull request #873 from erikh/fixups
Container fixups
2016-07-12 13:37:20 +02:00
Christoph Dwertmann 8cfaa05743 Use correct object names when zapping GPT header 2016-07-12 21:11:38 +10:00
Erik Hollensbe 6b218a36d9 ceph-osd: fix an item propagation error while partitioning disks
Signed-off-by: Erik Hollensbe <github@hollensbe.org>
2016-07-12 03:57:11 -07:00
KGoreczny 65bd022834 add python-py install to all other docker roles
Signed-off-by: KGoreczny <krzysztof.goreczny@intel.com>
2016-07-12 12:55:27 +02:00
Austin Brown efeb63c577 ceph-osd: Use the use_systemd fact when start directory-scenario OSDs 2016-07-12 11:00:49 +09:00
Ken Dreyer d0a2a10948 ceph-common: rm "type=rpm-md" from RHCS repos
As far as I can tell, this is a SUSE-ism, not needed for RHCS.
2016-07-11 09:11:42 -06:00
Ken Dreyer adb6c319bc ceph-common: update names for local RHCS repos
Use more descriptive names for the local RHCS Yum repositories.
2016-07-11 08:53:52 -06:00
KGoreczny 13e0b60cbe Fix for Ansible 2.1: install docker-py in version matched to ansible docker module
Signed-off-by: KGoreczny <krzysztof.goreczny@intel.com>
2016-07-11 11:35:32 +02:00
Ken Dreyer d7a35e24d9 ceph-common: fix "Red Hat Ceph Storage" product name
Standardize on the name "Red Hat Ceph Storage" everywhere
2016-07-08 16:09:32 -06:00
Sébastien Han a83e5d6b10 remove withspaces
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-07-07 16:17:49 +02:00
Alfredo Deza d2a555ca14 ceph-common: ensure that destination iso paths exist before copying
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1338551
2016-07-06 13:20:14 -04:00
Leseb e52d5b2357 Merge pull request #858 from dang/custom-repo
Add a custom yum repo ability
2016-07-06 15:30:49 +02:00
Leseb 7649ff247e Merge pull request #859 from dang/cleanups
Add DNF for RedHat
2016-07-05 17:34:17 +02:00
Leseb 11b5142bea Merge pull request #856 from dang/ceph-nfs
Add support for Ceph NFS Gateway
2016-07-05 17:33:39 +02:00
Leseb 0a5155bb16 Merge pull request #866 from PiotrProkop/ceph-mon-kv-fix
Adding option to change kv_port and docker tag
2016-07-05 17:28:59 +02:00
Alberto Murillo 76000ace2f Trim init_system var
init_system was getting the value of "systemd\n"
and was later compared to be equal to "systemd"
making the wrong scripts to be executed.

Signed-off-by: Alberto Murillo <alberto.murillo.silva@intel.com>
2016-06-29 15:16:23 -05:00
pprokop 397c3fe4fd Fixing typos 2016-06-29 07:53:37 +02:00
pprokop bae7e5342c Adding option to change kv_port anf docker tag 2016-06-28 14:02:00 +02:00
pprokop 6b9653c897 Removing symblic links and fixing systemctl enable on CoreOS 2016-06-28 13:58:26 +02:00
pprokop e31efd7ebf Fix not creating pypy_binary_direcotry 2016-06-28 12:11:42 +02:00
Daniel Gryniewicz a7d999b45b Add a custom repo ability
Add the ability to use a custom repo, rather than just upstream, RHEL,
and distro.  This allows ansible to be used for internal testing.

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-06-24 09:46:48 -04:00
Ivan Font a61b8ec071 Fail when we cannot retrieve docker image
If the docker image cannot be retrieved we will fail this task silently
and the playbook ultimately succeeds without a successful deployment.
This change makes it so we fail the playbook immediately.

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-06-23 17:24:01 -07:00
Ivan Font 453c299ed7 Add option to enable ntp
This fixes: #845 only for non-containerized deployments

Signed-off-by: Ivan Font <ivan.font@redhat.com>
2016-06-23 09:58:32 -07:00
Daniel Gryniewicz 21166168e3 Add DNF for RedHat
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-06-23 10:24:14 -04:00
Daniel Gryniewicz 4c2a433acb Add support for Ceph NFS Gateway
Ceph has the ability to export it's filesystem via NFS using Ganesha.
Add a ceph-nfs role that will start Ganesha and export the Ceph
filesystems.

Note that, although support is going in to export RGW via NFS, this is
not working yet.

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-06-22 13:29:11 -04:00
Alfredo Deza ac99802409 ceph-agent: install the correct package for the agent in Ubuntu
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1348130
2016-06-20 07:49:40 -04:00
Leseb d679eacd46 Merge pull request #852 from rootfs/doc-fix
be explicit on Atomic VirtualBox instruction
2016-06-20 11:00:52 +02:00
Huamin Chen 18e7e72deb fix rgw containerized deployment
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-06-17 16:59:53 +00:00
Huamin Chen 638abfb497 fix mds containerized deployment
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-06-17 16:52:52 +00:00
Alfredo Deza 4e5eedd434 ceph-common: use rh_storage_version variable to enable the correct repos
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1346812
2016-06-17 11:46:42 -04:00
Alfredo Deza c4c007b9b0 ceph-common: do not enable optional repos for rhel7
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1346812
2016-06-16 14:54:49 -04:00
Alfredo Deza d23f8fc3db ceph-common: default to 1.3 for rh_storage_version
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1346812
2016-06-16 14:54:49 -04:00
Sébastien Han 753f715c27 ceph-common: declare mon_containerized_deployment
If not declared, the play will fail.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-06-13 12:33:36 +02:00
Daniel Gryniewicz 887baf0cce Put path back to playbook_dir for common template
The config template is in ceph-common, not in the individual roles, so
roles referencing it need to use playbook_dir, not role_path.

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-06-09 10:59:17 -04:00
Sébastien Han 4219221bf4 ceph-mon: fix wrong indent
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-06-09 15:35:57 +02:00
Leseb d9d1d7856e Merge pull request #812 from rootfs/fix
some fixes for container deployment
2016-06-09 15:33:32 +02:00
Leseb 157d32560a Merge pull request #844 from matthewrees/master
Various fixes for check_firewall task
2016-06-07 17:26:37 +02:00
Matthew Rees 38355f5fa7 Fix typo for ceph monitor port 2016-06-07 16:50:43 +02:00
Matthew Rees 05f5771726 Clean up checks and with_item loops that are no longer needed due to
other fixes in this PR
2016-06-07 16:27:07 +02:00
Leseb 202d372dba Merge pull request #840 from jimcurtis/master
docker: enable mds container on Atomic host environment
2016-06-07 13:56:37 +02:00
Matthew Rees f274e142e7 Fix for nmap arguments and grep matching, as well as only running
local_actions once
2016-06-07 13:48:07 +02:00
Jim Curtis fa82827636 docker: review feedback on PR #840 2016-06-06 16:49:35 -07:00
Huamin Chen 8320085a66 ceph.conf.j2: check if interface is defined before using it
ceph-mon.service.j2: remove redundant --name option from docker command

Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-06-06 17:34:51 +00:00
Matthew Rees 211ba4a3de Fix to reference the monitor_address variable correctly in hostvars 2016-06-06 16:29:59 +02:00
Matthew Rees 9d8ffa5bda Add fix for those who are using monitor_address 2016-06-06 15:57:51 +02:00
Matthew Rees ca3cb32862 Change default to False for checking firewalls 2016-06-06 15:10:15 +02:00
Matthew Rees 9aa8a4b024 Only include the firewall checks when a user wants them checked 2016-06-06 15:10:14 +02:00
Matthew Rees de855fe18a Use the command module in place of the shell module 2016-06-06 15:10:14 +02:00
Matthew Rees 9bb8c85baf Various fixes for check_firewall task:
- Check for nmap being available was not running as a local_action, when the checks using nmap were
- Various fixes on Ansible 2.x now that the above is working
2016-06-06 15:10:14 +02:00
Leseb 98b4153e62 Merge pull request #839 from dcwangmit01/centos_remove_plugin_priorities
Remove Centos7 dependency yum-plugin-priorities
2016-06-06 13:41:15 +02:00
Leseb 58f9a6cfe0 Merge pull request #804 from dang/docker-dev
Allow running on local dev docker images
2016-06-06 11:12:43 +02:00
Jim Curtis e047b0a8ed docker: review feedback on PR #840 2016-06-04 10:56:01 -07:00
David C Wang 1106d4de8c Added comments from ./group_vars/all.sample back into roles/ceph-common/defaults/main.yml 2016-06-03 19:24:43 +00:00
David C Wang 94d2e11425 Remove Centos7 dependency yum-plugin-priorities
This causes ceph-ansible scripts to fail when targeting Centos7 machines.
Installation fails because newer ceph package dependencies provided
  by ceph-release-{version}.noarch.rpm were overridden by older
  package dependency versions in default distribution repositories,
  due to the fact that default distribution repositories have higher
  priority.
2016-06-03 19:14:27 +00:00
Daniel Gryniewicz 9d08d74385 Allow running on local dev docker images
Docker makes it difficult to use images that are not on signed
registries.  This is a problem for developers, who likely won't have
access to a registry with proper signed certificates.

This allows the ability to use any docker image on the machine running
vagrant/ansible.  The way it works is that the image in question is
exported locally, then sent to each target box and imported there.

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-06-03 14:52:21 -04:00
Huamin Chen c4f9bf8d13 update osd default vars
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-06-03 16:42:22 +00:00
Huamin Chen 6b84f5475b fix containerized deployment on centos
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-06-03 15:24:00 +00:00
Tino Schmeier 5819736bb6 - prepare for python3 2016-06-03 14:23:21 +02:00
Leseb 00876feaa4 Merge pull request #837 from ceph/rhbz-1342117
Do not ignore ceph-disk issues
2016-06-03 10:46:12 +02:00
Jim Curtis 959edf7205 docker: enable mds container on Atomic host environment 2016-06-02 15:54:56 -07:00
Alfredo Deza 2fa57b4cdb ceph-osd: do not ignore ceph-disk errors in raw multi journal
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1342117
2016-06-02 17:16:21 -04:00
Alfredo Deza d287959107 ceph-osd: do not ignore ceph-disk errors in journal_collocation
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1342117
2016-06-02 17:16:05 -04:00
Alfredo Deza 195ee33dcf ceph-osd: do not ignore ceph-disk errors in bluestore
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1342117
2016-06-02 17:15:35 -04:00
Andrew Schoen ed1de5bf06 include the red hat storage apt-key as a file
This will allow nodes to install rhcs that do
not have access to the internet.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>

Resolves: rhbz#1337601
2016-06-02 15:20:04 -05:00
Leseb c7d5ef41be Merge pull request #833 from ceph/template-path
ceph-common: uniformize template path calls
2016-06-02 18:52:48 +02:00
Sébastien Han c6232bed21 ceph-common: uniformize template path calls
In order to align all Ansible versions, we now use the full path for the
template. We rely on `role_path` variable. Now all the tasks using
the template module have a uniform syntax.

Might fix issue raised in #483

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-06-02 18:19:03 +02:00
Leseb e64488dad4 Merge pull request #831 from SamYaple/fix_when
The when conditional was improperly being checked
2016-06-02 17:18:32 +02:00
Sam Yaple bc242c2c34 Add undefined vars to ceph-common role
This is a temporary action to get the playbooks functional before a
refactor to better correct this issue.
2016-06-02 14:54:36 +00:00
Sam Yaple cbbf87eb42 Revert "Fix commit conditionals"
This reverts commit 9ed45f7367.
2016-06-02 14:46:27 +00:00
Leseb 0c4b9d7963 Merge pull request #832 from ceph/RHBZ-1339439
remove the gpgkey line from the red hat storage repo template
2016-06-02 11:32:48 +02:00
Leseb 0c9ee965a9 Merge pull request #828 from jimcurtis/master
docker: enable rgw container on Atomic host environment
2016-06-02 10:55:53 +02:00
Andrew Schoen 4a105993a8 remove the gpgkey line from the red hat storage repo template
See: https://bugzilla.redhat.com/show_bug.cgi?id=1339439

Signed-off-by: Andrew Schoen <aschoen@redhat.com>

Resolves: rhbz#1339439
2016-06-01 14:00:31 -05:00
Sam Yaple 59dd3223e7 Add defaults to False for undefined variables 2016-06-01 18:31:30 +00:00
Sam Yaple 9ed45f7367 Fix commit conditionals
The goal is to _fail_ this when conditional when one (and only one) is
set. The 'not's were incorrectly added.
2016-06-01 18:15:13 +00:00
Sam Yaple 60ae1820a7 The when conditional was improperly being checked
The scenarios were not being accurately compared to ensure that:
* A single scenario was choosen
* ONLY a single scenario was choosen

This solution does not scale for long, but that can be addressed in a
different patchset.
2016-06-01 17:58:26 +00:00
Jim Curtis a803be1815 docker: review feedback on PR #828 2016-06-01 09:55:08 -07:00
Jim Curtis c580b1b20c docker: enable rgw container on Atomic host environment 2016-05-31 12:59:05 -07:00
Alfredo Deza 254d75f671 ceph-common: install ceph-common packages for clients on debian for rhcs
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1339096
2016-05-31 12:09:50 -04:00
Alfredo Deza 3b52b263eb ceph-common: install ceph-common packages for clients on redhat for rhcs
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1339096
2016-05-31 12:09:31 -04:00
Leseb 06b855d071 Merge pull request #816 from pamelia/master
allow dash in cluster name
2016-05-29 15:56:04 +02:00
Marcus Pamelia d694c59278 allow dash in cluster name 2016-05-29 09:20:46 +02:00
Huamin Chen a124078612 in containerized deployment, use the right interface name variable in mon; remove one line inline files
cleanup on docker osd tasks

Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-05-25 18:17:37 +00:00
Alfredo Deza 312f72dc5b ceph-common: include the new install_rh_storage_on_redhat playbook when ceph_stable_rh_storage is on:
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1339096
2016-05-25 08:45:22 -04:00
Alfredo Deza aced6751f7 ceph-common: create a new install task for rh storage on redhat
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1339096
2016-05-25 08:45:16 -04:00
Alfredo Deza 130d425d26 ceph-common: specify file path for repo key
Signed-off-by: Alfredo Deza <adeza@redhat.com>

Resolves: rhbz#1339068
2016-05-24 08:28:34 -04:00
Leseb 866fcb7794 Merge pull request #789 from ceph/default-ceph-path
ceph-common: fix ceph options default path again
2016-05-24 10:32:15 +02:00
Alfredo Deza 570c01a04d ceph-common: there is no Installer repo, it is now the Tools repo
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-23 09:13:30 -04:00
Sébastien Han 82aec38a71 ceph-rgw: implement num_threads for civetweb
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-20 14:31:49 +02:00
Leseb cc894d4044 Merge pull request #800 from ceph/BZ-1337320
ceph-common: on rh storage on debian add the repositories and keys (ISO)
2016-05-20 14:18:07 +02:00
Leseb 5984888a2f Merge pull request #797 from ceph/rgw-debian-rhcs
install ceph-mds and radosgw on debian systems when using red hat ceph storage
2016-05-20 14:07:02 +02:00
Leseb 3aaeaf8940 Merge pull request #802 from ceph/BZ-1337305
ceph-common: redhat repo template: remove the Calamari reference
2016-05-20 14:05:33 +02:00
Alfredo Deza ed22cfa213 ceph-common: redhat repo template: remove the Calamari reference, no longer a distinct repo
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-19 16:17:02 -04:00
Alfredo Deza c78313d19f ceph-common: on rh storage on debian do not add the rh key by default
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-19 15:16:18 -04:00
Alfredo Deza 41bb446857 ceph-osd: fix typo when calling sgdisk second time around
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-19 14:46:43 -04:00
Alfredo Deza 329ac01d49 ceph-common: on rh storage on debian add the repositories and keys
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-19 14:20:47 -04:00
Leseb 7f85b0d5ff Merge pull request #796 from ceph/fix-rgw-frontends
fix the radosgw_civetweb_bind_ip default value
2016-05-19 16:14:32 +01:00
Andrew Schoen eb92cb57e4 install ceph-mds on debian systems when using red hat ceph storage
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-19 09:56:06 -05:00
Andrew Schoen 7157afc7ce install radosgw on debian systems when using red hat ceph storage
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-19 09:52:18 -05:00
Andrew Schoen a6a946d86b fix the radosgw_civetweb_bind_ip default value
We want just the address for ansible_default_ipv4, not the entire
dictionary in ceph.conf.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-18 15:53:47 -05:00
Alfredo Deza 7b8c16b4e9 ceph-common: remove RedHat-only constraint for RH ISO install
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-18 16:40:28 -04:00
Sébastien Han 1d5d438e5d ceph-common: list impacted versions
For the ceph option default path

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-18 15:25:49 +01:00
Alfredo Deza 52f73f30c5 ceph-osd: fail when ceph-disk fails to prepare an OSD
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-18 08:09:26 -04:00
Sébastien Han e071b773d8 ceph-common: add explanation message
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-16 18:55:54 +02:00
Leseb 746a384e03 Merge pull request #781 from ceph/no-symlink-systemd
Do not create symlinks for systemd manually
2016-05-16 18:38:40 +02:00
Sébastien Han e7aae27801 ceph-common: fix ceph options default path again
closes: #788

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-16 18:37:28 +02:00
Andrew Schoen 85fb03fc99 fix the /etc/default/ceph path on debian when setting cluster name
In ceph version 10.2.1 a bug was fixed that corrects the path:

791eba81a5

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-13 15:22:24 -05:00
Andrew Schoen d2b94c2a4c Do not create symlinks for systemd manually
Instead use 'systemctl enable' to create the symlinks.

This fixes: https://github.com/ceph/ceph-ansible/issues/779

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-13 13:21:08 -05:00
Huamin Chen 7f85c2512f don't recreate /etc/ceph with wrong mode
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-05-12 13:47:52 +00:00
Leseb 82a249e742 Merge pull request #771 from ceph/client-role
ceph-client: introduce new client role
2016-05-11 14:40:15 +02:00
Sébastien Han 40df8fb814 ceph-client: introduce new client role
By default, this roles will create a ceph config file and get the admin
key. You can optionnally add other users, keys and pools for your tests.

Closes: #769

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-11 14:36:35 +02:00
Samuel Matzek 9fec57a583 Add Debian ppc64le support
Add support to allow ceph-ansible to install and
configure Ceph on Debian on the ppc64le architecture.

Canonical has ppc64le Debian packages in Ubuntu distros
and on Ubuntu Cloud Archive.  Both of which can be installed
and configured using the 'distro' or 'uca' options in
ceph-ansible when this patch is used.

Signed-off-by: Samuel Matzek <smatzek@us.ibm.com>
2016-05-10 14:26:30 -05:00
Leseb 52b2f1cb85 Merge pull request #694 from ceph/purge-ceph-conf-options
ceph-common: purge ceph.conf file
2016-05-10 18:24:07 +02:00
Sébastien Han 47860a887f ceph-common: purge ceph.conf file
Since ##461 we have been having the ability to override ceph default
options. Previously we had to add a new line in the template and then
another variable as well. Doing a PR for one option was such a pain. As
a result, we now have tons of options that we need to maintain across
all the ceph version, yet another painful thing to do.
This commit removes all the ceph options so they are handled by ceph
directly. If you want to add a new option, feel free to to use the
`ceph_conf_overrides` variable of your `group_vars/all`.

Risks, for those who have been managing their ceph using ceph-ansible
this is not a trivial change as it will trigger a change in your
`ceph.conf` and then restart all your ceph services. Moreover if you did
some specific tweaks as well, prior to run ansible you should update the
`ceph_conf_overrides` variable to reflect your previous changes.

To avoid service restart, you need to know a bit of ansible for this,
but generally the idea would be to run ansible on a dummy host to
generate the ceph.conf, then scp this file to all your ceph hosts and
you should be good.

Closes: #693

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-10 16:51:42 +02:00
Stephan Hohn 4dad21c481 Increase system stabillity by re-enabling swap and setting vm.swappiness to 10 2016-05-09 22:05:01 +02:00
Leseb f748f8683c Merge pull request #749 from SamYaple/unified_when
Unify formatting of when conditional
2016-05-09 18:25:37 +02:00
Sam Yaple 14d31c7bcd Add in missing is_before_infernalis statement 2016-05-09 15:26:37 +00:00
Sam Yaple 1d5406c4a3 Fixed a few missed when conditionals from rebase 2016-05-09 14:17:14 +00:00
Sam Yaple 069c93a238 Unify formatting of when conditional
This is purely a refactor. Converts when 'and' conditionals into lists
rather than multiline strings. This does not work for nested
conditionals, but those can be formated with indents.

Moves one line when statements onto the same line as the when command
itself.

A small logic bug was found in ceph-osd/tasks/check_devices.yml which
which was also fixed.

Signed-off-by: Sam Yaple <sam@yaple.net>
2016-05-09 14:08:33 +00:00
Alfredo Deza 2aea592b21 try to zap a device again if sgdisk fails on the first try
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-05-09 09:12:28 -04:00
Li Peng 92c48f3f2b cleanup: fix inappropriate variable names
Signed-off-by: Li Peng <lip@dtdream.com>
2016-05-09 15:14:13 +08:00
Li Peng aaeadcab12 cleanup: fix typos
Signed-off-by: Li Peng <lip@dtdream.com>
2016-05-09 15:12:01 +08:00
Leseb 30f7208334 Merge pull request #748 from ceph/use-jewel
ceph: use jewel release
2016-05-09 01:13:54 +02:00
Leseb 1b8d021ef0 Merge pull request #764 from ceph/systemd
Several fixes
2016-05-09 01:00:02 +02:00
Sébastien Han c8e5e49552 ceph-mon: fix monitor startup
Somehow on CentOS 7.2 with Jewel, the service enablement by the Ansible service module
does not seem to work properly.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-09 00:41:44 +02:00
Sébastien Han b3971354bf ceph-mds: fix the handler
Moving the mds_name fact in the common role so the MDS can properly
be restarted.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-09 00:39:03 +02:00
Sébastien Han 7949c2d512 ceph-mds: fix MDS conditions
We don't need to set is_systemd when we are applying a configuration for
a sysvinit init.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-09 00:34:44 +02:00
Sébastien Han c4f3ab5649 ceph-common: install ceph-mds package
We kinda ommitted this package, now Jewel is out and the metadata server
is considered as stable.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-07 02:37:09 +02:00
Leseb 54a4216933 Merge pull request #761 from dang/docker-fixes
Docker fixes for MDS
2016-05-07 01:03:35 +02:00
Andrew Schoen 5139ed0592 strip any newlines from the init_system fact
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-06 14:47:45 -05:00
Andrew Schoen 8baf8830d6 Use the use_systemd fact when starting rbd
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-06 14:47:45 -05:00
Andrew Schoen cb70d49751 Use the use_systemd fact when starting mdss
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-06 14:47:45 -05:00
Daniel Gryniewicz a7fb22cb44 Docker fixes for MDS
Fixes to make the ceph-mds role work with Docker

Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-05-06 09:59:51 -04:00
Andrew Schoen 7436479c40 Use the use_systemd fact when starting rgw
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-05 14:31:12 -05:00
Andrew Schoen 5669b6ba7c use the use_systemd fact when starting OSDs
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-05 13:59:36 -05:00
Andrew Schoen 20d2d52ebd use the use_systemd fact when starting monitors
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-05 13:56:32 -05:00
Andrew Schoen 9eed0ea4e7 Adds an use_systemd fact
This adds a helper fact that uses the ``init_system`` fact to determine if
we should be using systemd or not when controlling services.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-05 11:53:08 -05:00
Leseb 27bbcd2161 Merge pull request #750 from ceph/osd-id-fix
Get the correct OSD ID when the cluster name includes numbers
2016-05-04 16:40:46 +02:00
Leseb 480cb68892 Merge pull request #755 from mattt416/fix_issue_741
Set init_system fact and reference in ceph-osd role
2016-05-04 16:39:41 +02:00
Matt Thompson ed2b7757d4 Set init_system fact and reference in ceph-osd role
The ceph-osd role currently uses ansible_service_mgr, which is a fact
only available on ansible 2.x and greater.  This commit sets a similar
fact called init_system which will store the contents of /proc/1/comm
(systemd, init, etc.) and then references it ceph-osd instead.

Closes #741
2016-05-04 12:05:31 +01:00
Leseb 108e260ff8 Merge pull request #747 from smatzek/add_ubuntu_cloud_archive
Add support for install from Ubuntu Cloud Archive
2016-05-04 11:50:25 +02:00
Ivo Jimenez 216ab2d776 Mounts /run when executing osd container 2016-05-03 15:47:01 -07:00
Andrew Schoen 4a181d420d Get the correct OSD ID when the cluster name includes numbers
If the ceph cluster name includes numbers, the grep used to find the OSD
IDs from /var/lib/ceph/osd/ would also return the numbers that were in
the cluster name.

For example, if the cluster was named 'mine123' and there was only one
OSD on the node, then the task that finds the OSD IDs would return
'123' and '0'.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-05-03 14:47:47 -05:00
Samuel Matzek ae239aaf09 Add support for install from Ubuntu Cloud Archive
This adds support to allow the install of Ceph from the
Ubuntu Cloud Archive.  The Ubuntu Cloud Archive provides newer
release of Ceph than the normal Ubuntu distro repository.

Signed-off-by: Samuel Matzek <smatzek@us.ibm.com>
2016-05-03 10:51:39 -05:00
Sébastien Han 94ce2be758 ceph: use jewel release
Also fix the repo url.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-03 14:02:44 +02:00
Daniel Gryniewicz 256775cb0f Docker fixes and cleanups
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
2016-05-02 10:56:52 -04:00
Sébastien Han 6513cdb313 ceph-common: install ceph-mon/osd for ceph dev
Since developement versions of Ceph are after infernalis a package split
happened. So basically ceph-mon, ceph-osd, ceph-mds need to be
installed.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-05-02 14:18:33 +02:00
Leseb 4bfae5fc7a Merge pull request #733 from jimcurtis/master
docker: fixes for OpenStack VMs
2016-04-28 14:45:37 -05:00
Andrew Schoen f81140d21f Adds a use_server_package_split var
This will allow a user to conditionally install the ceph package on rpm
based systems. Installing this package is not required or wanted in
versions passed infernalis.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-04-28 09:15:05 -05:00
Alfredo Deza 6f189335ce ceph-rgw: port start_radosgw task to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 13:46:58 -04:00
Alfredo Deza 04a2974af1 ceph-rbd-mirror: port start_rbd_mirror task to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 13:46:58 -04:00
Alfredo Deza 9d21a3c56c ceph-osd: port activate_osds task to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 13:46:57 -04:00
Alfredo Deza 50377e19b4 ceph-mon: port start_monitor task to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 13:46:57 -04:00
Alfredo Deza 3c82c7fd16 ceph-mds: port pre_requisite task to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 13:46:57 -04:00
Alfredo Deza 3af17a3137 ceph-common: port main handler to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 13:46:52 -04:00
Jim Curtis 6c9e3ab2a3 docker: typo in comment 2016-04-27 10:31:27 -07:00
Alfredo Deza 8763b98e0a ceph-mon: port deploy_monitors task to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 10:21:16 -04:00
Alfredo Deza df31745911 ceph-common: port main task to use new ceph version facts
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 10:21:16 -04:00
Alfredo Deza be8ae40bfb create is_before_RELEASE vars as well
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 10:21:16 -04:00
Alfredo Deza 8f35f1fb9b ceph-common: include the facts task always
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 10:21:16 -04:00
Alfredo Deza 25cc1ec1d3 ceph-common: create a facts task to define ceph versions
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-27 10:21:16 -04:00
Jim Curtis 19d8e0c1ce docker: Fix ordering of rgw docker tasks so directory is created befor fetch 2016-04-26 16:34:57 -07:00
Jim Curtis 78eb4f5c24 docker: fixes for OpenStack VMs 2016-04-26 08:20:02 -07:00
Leseb f3d98a64f9 Merge pull request #731 from ivotron/issue-730
bind-mounts /dev in osd containers
2016-04-25 14:56:52 -05:00
Leseb 9d10c6408c Merge pull request #724 from ivotron/issue-723
Modifies docker image variable being referenced
2016-04-25 14:46:07 -05:00
Ivo Jimenez 9ac9103e0d bind-mounts /dev in osd containers
This is needed in order to make ceph-disk work
2016-04-25 11:45:23 -05:00
Ivo Jimenez ea7a79c385 Modifies docker image variable being reference
These reference ceph_mon_docker_username instead of the corresponding
one
2016-04-24 14:32:17 -07:00
Leseb 7bd44d0563 Merge pull request #721 from ceph/fix-admin-socket-warning
change defaults for rbd_client_directories and rbd_client_admin_socket_path
2016-04-23 01:00:23 +02:00
Andrew Schoen 79a6e05228 default rbd_client_log_path to /var/log/ceph
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-04-22 12:39:16 -05:00
Andrew Schoen b649c4229a default rbd_client_admin_socket_path to /var/run/ceph
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-04-22 10:59:00 -05:00
Andrew Schoen f297af23c5 default rbd_client_directories to true
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-04-22 10:56:30 -05:00
Sébastien Han 4fa4154b4d ceph-rgw: ability to bind civetweb on an IP
Introducing a new config option: `radosgw_civetweb_bind_ip` which points
to the `ansible_default_ipv4` by default. You can override this
variable. Use ansible facts to put a proper value.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-22 17:47:57 +02:00
Andrew Schoen 95d80ad3d3 correctly set mon addr when monitor_interface is defined in group_vars
This fixes the ceph.conf template so that it will look for an inventory
defined value for monitor_interface or for monitor_interface defined in
a group_vars file.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-04-21 09:09:16 -05:00
Leseb f950afef92 Merge pull request #664 from jsaintrocc/master
Add infernalis to list of stable releases comment
2016-04-19 10:09:48 +02:00
James Saint-Rossy 67a895159e Updated version compare to 0.84.0 per laseb comment 2016-04-18 10:49:35 -04:00
Huamin Chen 9d81f32538 set path to find mon and osd systemd unit file templates
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-04-14 21:57:27 +00:00
Leseb f51548580f Merge pull request #713 from stpierre/fix-rbd-client-dirs
Fix creation of RBD client directories
2016-04-13 22:25:59 +02:00
Chris St. Pierre de22ae0a06 Fix creation of RBD client directories
Need to use a template, not a bare variable name.
2016-04-13 15:10:44 -05:00
Andrew Schoen a2b8ef8c1d Check to see if hostvars[host]['monitor_interface'] is defined
This fixes https://github.com/ceph/ceph-ansible/issues/711

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-04-13 13:34:51 -05:00
James Saint-Rossy fc270bb772 fixed handling of new ceph_version 2016-04-12 21:26:59 -04:00
James Saint-Rossy ee1e470757 moved string parsing of ceph version into ansbile for better error handling 2016-04-12 21:08:42 -04:00
Leseb afad22c5a1 Merge pull request #708 from ceph/docker-img
docker: do not hardcode image and user name
2016-04-12 12:08:35 +02:00
Leseb 34da863bfe Merge pull request #703 from ceph/issue-670
if ceph-disk fails to activate an OSD then bubble up the error
2016-04-12 12:05:28 +02:00
Leseb 74e3e04dcd Merge pull request #696 from stpierre/dedup-rbd-client-dirs
Deduplicate RBD client directory creation
2016-04-12 12:03:56 +02:00
Sébastien Han 7424ad6d68 docker: do not hardcode image and user name
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-12 12:01:53 +02:00
Alfredo Deza 441d83fe77 if ceph-disk fails to activate an OSD then bubble up the error
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-04-11 15:29:29 -04:00
James Saint-Rossy 3f9bd5c1b7 Removed infernalis workaround because ceph_stable_releases now includes it by default 2016-04-09 17:21:36 -04:00
James Saint-Rossy 4e7b93d725 Rebasing fork to account for upstream commits 2016-04-09 14:40:00 -04:00
Andrew Schoen 5031234d66 look at monitor_interface in hostvars when choosing interface or address
This fixes a bug where monitor_interface might be set in your inventory
file and not by using group_vars or --extra-vars causing the template to
use the default address of 0.0.0.0 instead of the defined
monitor_interface.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-04-08 14:23:12 -05:00
Chris St. Pierre 1efe62252c Deduplicate RBD client directory creation
Instead of creating the RBD client socket path three different places
in three different ways, this creates it once. Ceph on OpenStack users
have the option to customize the permissions of the RBD client
directories.

Fixes #687
2016-04-08 13:50:00 -05:00
Sébastien Han fc044e0571 rbd-mirror: fix readme title
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-08 12:32:05 +02:00
Sébastien Han 6bcb451b9c ceph-rbd-mirorr: add license file
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-08 12:17:46 +02:00
Leseb f783adcc9e Merge pull request #678 from ceph/rbd-mirror
ceph-rbd-mirror: add new role
2016-04-08 12:12:30 +02:00
Sébastien Han 2d21f741f5 ceph-rbd-mirror: add new role
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-08 12:12:15 +02:00
Leseb 0047e83dad Merge pull request #684 from bengland2/when-hammer-try2
fix when clauses for installation of ceph RPM
2016-04-06 19:38:05 +02:00
Ben England ee9093d570 Sebastien's suggestion - add infernalis to list of releases with no separate ceph-mon or ceph-osd 2016-04-06 13:14:24 -04:00
Leseb b79e7287cc Merge pull request #685 from bengland2/create-sysconfig-ceph
create /etc/sysconfig/ceph if it doesn't already exist
2016-04-06 13:21:00 +02:00
Ben England dc2fc3665e create /etc/sysconfig/ceph if it doesn't already exist 2016-04-05 21:33:05 -04:00
Ben England b199bdcfab fix when clauses for installation of ceph RPM 2016-04-05 21:11:37 -04:00
Chris St. Pierre 1a73d55bae Fix mis-use of config_template in docker tasks
As written, generating the config file for ceph-mon in Docker yielded:

ERROR: config_template is not a legal parameter in an Ansible task or
handler

This fixes that error condition.
2016-04-05 12:09:09 -05:00
Sébastien Han a8df31cb14 ceph-common: let ceph handle pool_default_min_size
We now set the value to 0, which means no specific default; ceph will
use size-size/2

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-05 17:01:49 +02:00
Sébastien Han 84e57724e3 ceph-common: change the pool_default_size to 3
3 has been the default since Firefly I believe so we should stick with
this value.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-05 16:22:29 +02:00
James Saint-Rossy b55df73061 Cleanup is_ceph_infernalis logic 2016-04-04 18:19:49 -04:00
Sébastien Han 2700552186 ceph-mon: fix ceph keys permissions
Certain daemons will not start because of the wrong permissions.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-04 00:36:59 +02:00
Sébastien Han 4b93fc9dbd ceph-osd: docker fix typo again...
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-01 17:33:11 +02:00
Sébastien Han fbf36716c5 ceph-osd: docker start typo...
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-01 17:31:34 +02:00
Sébastien Han 00819ab7b8 ceph-docker: osd fix container prep and start
We now check if the device has already been prepared, if we detect a
ceph partition we do not prepare the device.
Also fixed some issues while running on Atomic or CoreOS.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-01 15:40:19 +02:00
Sébastien Han df6c3f4f72 ceph-docker: fix permissions on directories
fixing the can't open /var/lib/ceph/bootstrap-osd/ceph.keyring: can't
open /var/lib/ceph/bootstrap-osd/ceph.keyring: (13) Permission denied

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-04-01 14:43:33 +02:00
Leseb bc2cfc83d5 Merge pull request #666 from PiotrProkop/ceph-mon-fix
Adding support for non atomic and non CoreOS machines for deploying containerized mons with kv backend
2016-04-01 13:16:32 +02:00
Leseb 9f2556315f Merge pull request #665 from PiotrProkop/ceph-osd-kv
Adding support for non atomic and non CoreOS machines for deploying containerized osds with kv backend
2016-04-01 13:16:22 +02:00
pprokop da9b772534 Changed when statements due to review 2016-04-01 13:02:02 +02:00
pprokop 604ea77ecc Changes due to review 2016-04-01 12:57:58 +02:00
Leseb 9123c854ae Merge pull request #671 from squizzi/fix-admin-key-wait
Added when: cephx to prevent waiting on keyring with cephx: false
2016-04-01 11:11:43 +02:00
Kyle Squizzato 9d10db21c2 Added when: cephx to prevent waiting on keyring with cephx: false
Signed-off-by: Kyle Squizzato <ksquizz@gmail.com>
2016-03-31 23:30:36 -04:00
Sébastien Han 6c5ac63ecc ceph-mon: docker fix run on atomic host
fix template issues.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-31 16:41:28 +02:00
James Saint-Rossy ae96854cda Fixed missing release, infernalis, in list of stable releases 2016-03-30 15:55:51 -04:00
Leseb 0784b8c5b1 Merge pull request #662 from ceph/follow-up-cluster-name
ceph: implement cluster name support
2016-03-30 18:20:30 +02:00
Sébastien Han 450feaac0a ceph: implement cluster name support
we now have the ability to enable the `cluster` variable with a specific
value that will determine the name of the cluster.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-30 18:08:38 +02:00
pprokop 5705cc71a3 Changing when statements 2016-03-30 12:40:57 +02:00
pprokop eb9c3eae13 Changing when statements 2016-03-30 12:38:47 +02:00
pprokop eaa259146e Fixing creating configs when default one is chosen 2016-03-30 12:29:45 +02:00
pprokop 207387d5f9 Adding support for non atomic and non CoreOS machines for deploying containerized mons with kv backend 2016-03-30 12:28:38 +02:00
pprokop 9e252c6c44 Adding missing space 2016-03-30 12:22:32 +02:00
pprokop d7d83273e7 Adding support for non atomic and non CoreOS machines for deploying containerized osds with kv backend 2016-03-30 12:22:15 +02:00
Leseb dde0c2043e Merge pull request #663 from jimcurtis/os1
Specify full path to template
2016-03-29 21:11:01 +02:00
Jim Curtis 89f2cf6a53 Specify full path to template 2016-03-29 11:30:56 -07:00
Leseb 4c31c3bcb5 Merge pull request #661 from PiotrProkop/ceph-osd-kv
Adding ceph-osd continerized deployment with kv store.
2016-03-29 14:15:40 +02:00
pprokop ec9a96e570 Adding ceph-osd continerized deployment with kv store 2016-03-29 10:23:31 +02:00
Sébastien Han 1859d84a7a ceph-rgw: fix rgw enable with systemd
now rgw can be enabled.

closes: #642 #261

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-29 01:37:39 +02:00
Leseb 629108fbfa Merge pull request #657 from ksingh7/fix_mon_containerized_deployment_with_kv
ceph-common: Newline separation in ceph.conf.j2
2016-03-29 00:56:36 +02:00
ksingh7 861dd2c3f1 ceph-common: Newline separation for mon_containerized_deployment_with_kv variable in ceph.conf.j2
ceph.conf.j2 template requires a new line between mon_containerized_deployment_with_kv and fsid variables
With this commit , i have added a new line for better readablity
2016-03-29 01:34:08 +03:00
Leseb e539645fba Merge pull request #653 from ksingh7/fix_mon_containerized_deployment_with_kv
ceph-common: Fix for issue no. 652
2016-03-28 20:27:39 +02:00
runsisi a2d1d99ec3 ceph-common: use variable rgw_group_name instead of hard coded group
name 'rgws' when checking rgw port.

Signed-off-by: runsisi <runsisi@hust.edu.cn>
2016-03-28 18:59:09 +08:00
ksingh7 06e92923fa ceph-common: Fix for issue no. 652
ceph.conf file generation task in ceph-common role was getting failed
because it ansible cant find defination of varriable mon_containerized_deployment_with_kv
This fix declare mon_containerized_deployment_with_kv under ceph-common/defaults/main.yml which fixes this issue

Signed-off-by: ksingh7 <karan.singh731987@gmail.com>
2016-03-26 19:47:40 +02:00
Leseb f27fada28a Merge pull request #649 from ceph/bluestore-ceph-disk
ceph-osd: add support for bluestore
2016-03-25 17:00:41 +01:00
Leseb e40e0f8950 Merge pull request #650 from stpierre/rbd-client-directory-owner
Make RBD client directory owner/group configurable
2016-03-25 16:41:31 +01:00
Sébastien Han 225e066db2 ceph-osd: add support for bluestore
With Jewel comes a new store to store Ceph object: BlueStore. Adding an
extra scenario might seem like a useless duplication however the
ultimate goal is remove the other roles later. Thus this is easier to
add new role instead of modifying existing one. Once we drop the support
for release older than Jewel we will just remove all the previous
  scenario files.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-25 16:02:02 +01:00
Sébastien Han 9098eb0a8a ceph-common: pass journal check if using bluestore
bluestore does not need any journal so we skip this test if
osd_objectstore = bluestore

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-25 15:49:39 +01:00
Chris St. Pierre 23e40e3113 Make RBD client directory owner/group configurable
Some versions (?) of libvirt provide a 'libvirt' group instead of
'libvirtd'. (Observed with libvirt-daemon-1.2.17-13.el7_2.2.x86_64.)
This makes the RBD client directory owner and group configurable to
allow for this.
2016-03-25 08:51:20 -05:00
Sébastien Han b0f56590e0 docker: fix tons of issues
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-24 17:55:21 +01:00
pprokop 77bd4aff37 Adding missing space 2016-03-24 16:27:56 +01:00
pprokop eef421716d Adding var to choose between custom and default ceph.conf populated into etcd 2016-03-24 16:27:56 +01:00
pprokop 832c3bedba Adding comments 2016-03-24 16:27:21 +01:00
pprokop 72fa8da1dc Removing fsid with kv backend deployment 2016-03-24 16:26:28 +01:00
pprokop 6fea8b17b6 Adding missing fsid 2016-03-24 16:26:28 +01:00
pprokop 42e748a514 Adding dockerized ceph-mon deployment with kv backend 2016-03-24 16:26:28 +01:00
pprokop 613f7dbc6b Changed creator name 2016-03-24 16:24:44 +01:00
pprokop b9b04a4cff Removing extra spaces in get_pip 2016-03-24 16:24:44 +01:00
pprokop 3e935a2776 Removing extra spaces 2016-03-24 16:24:44 +01:00
pprokop 6b014d10ed Adding role for deploying python on CoreOS 2016-03-24 16:24:44 +01:00
Jim Curtis bf4864dd72 review feedback 2016-03-24 16:19:55 +01:00
Jim Curtis b06229bafb review feedback 2016-03-24 16:19:55 +01:00
Jim Curtis dae1bb072e Review feedback fixes from PR #518 2016-03-24 16:19:45 +01:00
Jim Curtis d5f642c206 Changes to allow ceph-ansible and vagrant to work on Openstack VMs 2016-03-24 16:18:46 +01:00
Huamin Chen 3b73b8f2d4 add missing osd systemd unit template
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:16:27 +01:00
Huamin Chen 04f7b5923f review feedback
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:16:27 +01:00
Huamin Chen 326db629a0 start osd daemon via systemd if supported
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:16:27 +01:00
Huamin Chen 6cf3fff436 split osd disk to prepare and activate
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:16:27 +01:00
Huamin Chen a4b3885ac9 allow multiple mon containers to reach quorum
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:16:27 +01:00
Huamin Chen e18154fbe5 serialize containerized mon config
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:16:08 +01:00
Huamin Chen 6bd8d41a39 remove --rm option from docker run, since the image is already removed during pre start
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:15:41 +01:00
Huamin Chen a3dbfba4c0 use systemd to manage ceph daemons
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:15:41 +01:00
Huamin Chen 70561b3fc3 add variable to allow containerized mon to run privileged mode.
this is to allow ceph-authtool to read and write to /var/ and /etc on CentOS Atomic.
Add doc on how to run containerized deployment on RHEL/CentOS Atomic

Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:14:58 +01:00
Huamin Chen f88eff37d7 initial steps to provision CentOS Atomic host
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:13:15 +01:00
Huamin Chen fd03074cd5 remove unused files
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:10:42 +01:00
Huamin Chen dda83004c8 containerize rgw and restapi
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:10:42 +01:00
Huamin Chen 29b239a8f8 containerized mon: create restapi keyring
add sample config for containerized deployment
2016-03-24 16:09:02 +01:00
Huamin Chen 0d704b5710 copy bootstrap keyring and conf from mon to ansible server, so osd can get them to bootstrap
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-03-24 16:09:02 +01:00
Huamin Chen 0647cad7be containerized mon 2016-03-24 16:08:20 +01:00
Andrew Schoen 73a60bd5e0 docs for usage of monitor_interface and monitor_address
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-23 07:30:01 -05:00
Andrew Schoen 959d525f81 Provide the ability to provide monitor_address instead of an interface
This would allow users who don't know what interface to provide to
give an IP address to use for the monitor instead.

Note: the includes are needed in ceph.conf.j2 because without them
jinja2 can not properly evaluate the template and will complain about a
missing 'ansible_interface' variable. The includes allow the template to
be evaluated correctly and then the correct include will be used during
render time.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-23 07:30:01 -05:00
Leseb e78826eefb Merge pull request #609 from ceph/fragment
fix fragment for osd directory scenario
2016-03-23 10:32:18 +01:00
Leseb 20c3c88995 Merge pull request #639 from ceph/enhance-regex
ceph-osd: fix regex to check partitions
2016-03-21 18:22:00 +01:00
Sébastien Han 488f8e6c63 ceph-osd: fix regex to check partitions
Thanks @dvusboy

closes: #636

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-21 16:27:02 +01:00
Sébastien Han c9071a6af0 ceph-osd: fix activate for osd on partitions
Since we want to activate the OSD when it's a partition we are looking
for a return code that is equal to 0 which means the device is a
  partition.

closes: #636

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-21 16:00:58 +01:00
Leseb 18aa86a89f Merge pull request #634 from dvusboy/fix_issue_632
Address issue #632 with systemd unit rename
2016-03-18 14:07:42 +01:00
Leseb 42b79cab47 Merge pull request #635 from dvusboy/create_rbd_clients_directory
Create the directory used for rbd-clients sockets
2016-03-18 14:05:02 +01:00
Leseb db746e03cb Merge pull request #627 from ceph/fix-ceph-install
ceph-common: fix ceph install for centos distros
2016-03-18 14:02:22 +01:00
K.C. Wong 50b7c99c68 Create the directory used for rbd-clients sockets
* `/var/run/ceph/rbd-clients` is not created automatically
* because it is missing, ceph-rgw complains about missing client
  socket on start up; it is because the containing directory is
  not there
* so we just add it to the list of directory pre-requisite
2016-03-17 14:35:22 -07:00
K.C. Wong 6ac41f7f3f Address issue #632 with systemd unit rename
* the client-name is actually `rgw.{{ ansible_hostname }}` instead
  of just `{{ ansible_hostname }}`
* it matches the directory created under `/var/lib/ceph/radosgw`
* and, it matches the client-name used to create the keyring in
  `pre_requisite.yml`
2016-03-17 10:34:56 -07:00
Leseb c8422e29ff Merge pull request #633 from ceph/centos-libselinux-python
add libselinux-python as dependency pkg for centos
2016-03-17 17:39:55 +01:00
Sébastien Han 71a0f27f39 add libselinux-python as dependency pkg for centos
closes: #631

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-17 17:39:01 +01:00
Sébastien Han 1764b5337f ceph-common: fix ceph install for centos distros
closes: #616

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-17 11:55:33 +01:00
Leseb 6e60fb5c0d Merge pull request #610 from fcharlier/install_ceph_mds_only_if_required
Install ceph-mds on Debian platforms only if mds_group_name is set
2016-03-16 14:04:20 +01:00
Deepak C Shetty 2b908ed8cf ceph-osd: Set selinux to permissive
Currently we don't yet support runnings OSDs w/ selinux in
enforcing mode. Thus its better to ensure that ceph-ansible
explicitly makes selinux permissive. This should help in
scenarios such as hyperconverged where OSDs are colocated
with VMs on compute nodes which needs selinux enforcing, but
OSDs don't.

Signed-off-by: Deepak C Shetty <deepakcs@redhat.com>
2016-03-16 07:30:37 +00:00
Leseb 1a62a81006 Merge pull request #614 from ceph/calamari-rest-api
Allow to install the calamari-server on monitors
2016-03-09 12:37:05 -08:00
Alfredo Deza 40cd754716 set the default to install calamari-server in a monitor
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-03-09 15:18:40 -05:00
Alfredo Deza 1dae862911 include calamari when the calamari option is set
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-03-09 15:18:40 -05:00
Alfredo Deza b0a3f5b06d create a calamari task in ceph-mon
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-03-09 15:18:36 -05:00
Leseb e87ddf9986 Merge pull request #611 from ceph/rhcs-debian
support for the jewel version of red hat ceph storage on ubuntu
2016-03-09 09:58:46 -08:00
Leseb 6013fb2649 Merge pull request #612 from ceph/rgw-dir
ceph-rgw: remove leftover for service activation
2016-03-09 08:40:47 -08:00
Andrew Schoen 565e2b280f adds the rh storage apt-key for jewel on ubuntu
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-08 16:08:53 -06:00
Andrew Schoen e09bb11dc9 the ceph package does not exist in jewel rh storage
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-08 16:06:56 -06:00
Andrew Schoen 3035f45c51 adds the ability to install red hat ceph storage packages on Ubuntu
This will only work for jewel or later releases.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-08 15:23:32 -06:00
Andrew Schoen 60746d9327 subscription manager tasks should not run on debian systems
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-08 14:56:23 -06:00
François Charlier 59f151f374 Install ceph-mds on Debian platforms only if mds_group_name is set
Fixes #547
2016-03-08 19:08:24 +01:00
Sébastien Han a852df1753 ceph-rgw: remove leftover for service activation
this is handled by the task after.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-08 14:38:40 +01:00
Sébastien Han 6439396127 ceph-osd: fragment directory and files perms
works for all the ceph's distros now

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-08 14:32:32 +01:00
Leseb 8b64c6c8ed Merge pull request #607 from ceph/rhcs-fixes
fixes for installing / configuring red hat ceph storage
2016-03-08 09:32:21 +01:00
Sébastien Han 9363665019 fix fragment for osd directory scenario
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-08 00:40:50 +01:00
Derek Anderson 210e4d4a01 Added an additional task for starting/enabling a service based on a systemd target if systemd is available. Otherwise using the init script. 2016-03-07 18:04:39 -05:00
Andrew Schoen 9f1b437e9d find the rhcs version right before setting is_ceph_infernalis
Where it was located before meant it might be skipped if you don't run
tasks with the package-install tag. This fixes the situation where you
want to configure an rhcs node, but do not want to do any package
installs.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-07 14:50:05 -06:00
Andrew Schoen ad6ebbcb32 make sure ceph_origin != "upstream" when using rhcs
When installing RHCS there is an option to install from distro provided
packages, this commit modifies the check to allow that to happen.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-03-07 14:47:09 -06:00
Sébastien Han 443f3465fd ceph-common: fix mon startup for dev installation
closes: #602 and #587

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-07 13:28:54 +01:00
Leseb ebcc7f6207 Merge pull request #599 from ceph/fqdn-followup
ceph-mon/mds: fix fqdn
2016-03-03 21:46:03 +01:00
Sébastien Han 378aadf3e3 ceph-mon/mds: fix fqdn
closes #596

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-03 21:23:14 +01:00
Sébastien Han b206efaeab ceph-rgw: install libnss3-tools for keystone
closes: #598

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-03 14:43:01 +01:00
Alfredo Deza a63cef9e4b remove ^M line endings
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-03-02 18:08:07 -05:00
Alfredo Deza 7f13c777f1 define redhat-specific and centos-specific package dependencies
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-03-02 18:06:54 -05:00
Alfredo Deza 44e68923d1 install centos or rhel dependencies depending on ansible_distribution
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-03-02 18:05:37 -05:00
Sébastien Han 1619bdcbbd ceph-common: rm embedded ceph-common role
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-02 23:24:26 +01:00
Sébastien Han 1ebb4de7f3 rollback previous change for ceph-common change
changing the name of the directory causes issues with git subtree which
will create new commits. Creating a symlink for vagrant to be happy.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-02 18:44:36 +01:00
Sébastien Han 6a2ce273a4 ceph-fetch-keys: add dependencies flag to galaxy
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-02 16:58:23 +01:00
Sébastien Han d2359c1445 wip: galaxy roles dependencies
in order to have a build on the galaxy we need to have a proper
dependency set for ceph-common. On the galaxy ceph-common does not
exist, only ceph.ceph-common is available.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-02 13:52:56 +01:00
Sébastien Han 059cc1ea5b ceph-common: allow usage of fqdn for mon/mds
this commit introduces the ability to use fqdn for mon/mds name while
generation the ceph.conf file from the template.
Simply turn mon_use_fqdn and or mds_use_fqdn to true to use FQDN.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-03-02 11:11:43 +01:00
Zack Cerza b27684d912 Optionally install ceph-test
We want this to enable testing with existing teuthology jobs.

https://github.com/ceph/teuthology

Signed-off-by: Zack Cerza <zack@redhat.com>
2016-03-01 16:23:06 -07:00
Leseb 40c61f5431 Merge pull request #580 from stpierre/generate-group-vars-sample
Generate all.sample automagically
2016-03-01 19:00:19 +01:00
Leseb 9bd561fa86 Merge pull request #563 from stpierre/dont-prepare-skipped-disks
Do not prepare skipped disks
2016-03-01 18:28:49 +01:00
Leseb ff7cd992c2 Merge pull request #583 from stpierre/rbd-client-dir-mode
Fix pre-infernalis RBD client directory mode
2016-03-01 15:27:00 +01:00
Chris St. Pierre c4a9b1020f Generate group_vars samples automagically
This adds a script, generate_group_vars_sample.sh, that generates
group_vars/*.sample from roles/ceph-*/defaults/main.yml to avoid
discrepancies between the sets of files. It also converts the line
endings in the various main.yml from DOS to Unix, since generating the
samples was spreading the line ending plague around to more files.
2016-02-29 12:07:01 -06:00
Leseb f9c3159e0d Merge pull request #553 from stpierre/add-tunables
Use object map for xattrs with ext4
2016-02-29 19:00:56 +01:00
Chris St. Pierre a157186ef6 Fix pre-infernalis RBD client directory mode
0644 should never be a directory mode. 1777 makes it so that any user
can create a ceph client, not just root. (This is helpful if, for
instance, nova-compute is running as non-root.)
2016-02-29 11:58:20 -06:00
Chris St. Pierre be52a01c49 Add tunable to use object map for xattrs
Defaults to true if using ext4, false otherwise, and can be explicitly
overridden if desired.
2016-02-29 11:31:04 -06:00
Sébastien Han cd5b69cf7d ceph-agent and key fix platform RHEL key
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-29 16:49:12 +01:00
Sébastien Han e6d8aa2307 ceph-agent: add dependency section for the galaxy
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-29 16:33:43 +01:00
Leseb e06a05014c Merge pull request #569 from stpierre/skip-generate-fsid
Add option to skip generating fsid
2016-02-29 16:11:46 +01:00
Sébastien Han 1051958a61 ceph-common: only change task when false
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-29 15:57:40 +01:00
Leseb f4dd00bf4f Merge pull request #567 from ceph/distribut-keys
ceph-: abitlity to copy admin on all the nodes
2016-02-29 15:43:00 +01:00
Sébastien Han 51e4fe8e0b ceph-: update group_vars to reflect previous change
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-29 15:10:34 +01:00
Leseb b406e73019 Merge pull request #575 from ceph/ceph-config-dir
ceph-common: use saner defaults for ceph dir
2016-02-29 11:28:01 +01:00
Sébastien Han 4e14b47174 ceph-common: use saner defaults for ceph dir
re-use the logic introduced in #512 for the ceph directory and the
`ceph.conf` file.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-29 11:10:56 +01:00
Ben England 171cd642b0 help RGW install from RHCS .iso 2016-02-28 05:32:59 -05:00
Leseb dbc5704f23 Merge pull request #568 from stpierre/skip-keyring-cephx-disabled
Skip keyring tasks when cephx is disabled
2016-02-27 00:40:58 +01:00
Chris St. Pierre 4b29b2707f Fix openstack config skipping
Previously, creating pools was skipped if cephx was disabled; instead,
we should only skip key creation if cephx is disabled, and create
pools any time openstack_config is true.
2016-02-26 15:39:27 -06:00
Chris St. Pierre 8e0d53e5a4 Add option to skip generating fsid
If using another method to generate a consistent fsid, then we can
skip creation of an (unused) cluster UUID file. If cephx is disabled
as well, we can skip creation of the fetch directory entirely.
2016-02-25 10:29:12 -06:00
Chris St. Pierre e8ca637903 Skip keyring tasks when cephx is disabled
Skip a number of ceph keyring-related tasks (or remove the keyring
portion of some tasks) when cephx is disabled. Specifically, avoid
generating the initial keyring, which only clutters up the ansible
repo if cephx is not in use.
2016-02-25 10:18:18 -06:00
Sébastien Han bb55860a7a ceph-: abitlity to copy admin on all the nodes
This commit allows you to set a new variable to 'true' if you want to
have ceph admin key copied over different kind of hosts such as MDS,
OSD, RGW. To enable this just set `copy_admin_key` to true.

Closes: #555

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-25 12:04:17 +01:00
Chris St. Pierre 49ad647f25 Fix activation of disks with auto discovery
With osd_auto_discovery enabled, the 'devices' list isn't
meaningful. We should activate ansible_devices instead.
2016-02-24 16:09:34 -06:00
Chris St. Pierre 8dcc802976 Do not prepare skipped disks
When autodiscovering disks, disks can be skipped if either they are
removable, or if they have partitions on them. Skipped actions have no
'rc' attribute, though, so the 'ceph prepare' conditional fails unless
we first check to ensure that the results were not skipped before
checking the return value.
2016-02-24 14:50:37 -06:00
Leseb e9f3e792b0 Merge pull request #559 from stpierre/rhel-ceph-origin-distro
Make RHEL installs honor ceph_origin: distro
2016-02-24 13:48:13 +01:00
Leseb 88dbb0e55b Merge pull request #561 from ceph/mds-systemd-fix
ceph-mds: enable systemd unit file
2016-02-24 11:03:46 +01:00
Sébastien Han b37b2e0be3 ceph-mds: enable systemd unit file
closes: #552

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-24 11:01:17 +01:00
Leseb eaaa735d2b Merge pull request #560 from stpierre/cephx-false-skip-key-permissions
Cephx false skip key permissions
2016-02-24 10:55:18 +01:00
Leseb 9cd2bdb74a Merge pull request #528 from bengland2/iso_mount
make sure /etc/fstab is always valid at boot time no matter what
2016-02-24 10:42:36 +01:00
Ben England 87b078ce86 revert absent->unmounted as leseb requested 2016-02-23 16:43:45 -05:00
Chris St. Pierre 53af359c65 Improve firewall checks
The firewall checks can fail for any number of reasons -- e.g., the
ceph cluster hostnames are unresolvable from the ansible host, or the
ports are filtered by some intermediate hop, etc. Make two changes to
make those checks better:

* Set pipefail when running the checks, so if nmap itself fails the
  command will be marked as 'failed'. Specifically, this fixes the
  case where the hostnames cannot be resolved.
* Add a new variable, check_firewall, which can be used to disable
  checks entirely. Specifically, this fixes the case where some
  intermediate firewall filters the ports, so nmap returns "filtered".
2016-02-23 11:38:25 -06:00
Chris St. Pierre 1e9f4faa44 Do not set key permissions with cephx: false
If cephx is set to false, the "set keys permissions" task fails with:

file ({# ceph_keys.stdout_lines #}) is absent, cannot continue

This skips that step when cephx is false.
2016-02-23 11:34:27 -06:00
Chris St. Pierre 731c39a179 Make RHEL installs honor ceph_origin: distro
Installs on RHEL with ceph_origin set to distro previously would fail
because no packages would get installed, but all of the checks passed
fine. This adds support for ceph_origin: distro, simply installing the
packages using yum/dnf and assuming that the sysadmin has provided a
repository containing them.

This also supports the use case where Satellite or a similar local
mirror is in use, and the admin does not or cannot use the additional
repositories the role would otherwise add.
2016-02-23 11:30:26 -06:00
Sébastien Han 3ce0621b44 ceph-osd: use fact logic to set permissions
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-21 18:27:36 +01:00
Sébastien Han 17fb38294e Octal file permissions must contain leading zero
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-21 18:21:19 +01:00
Andrew Schoen 6fa25fa057 Adds a new ceph-fetch-keys role
The purpose of this is so we can connect to the mons and gather the keys
needed to configure an OSD or additonal MON without having to reconfigure
the existing mons at the same time.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-02-18 09:52:26 -06:00
Andrew Schoen bcf34d539f make mandatory variable checks only apply when needed
In our use case we might only be configuring mons and not osds in the
same call, so we don't want to check variables needed for osds when they
are not needed to configure a mon.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-02-16 10:43:36 -06:00
Andrew Schoen beb966421e add the package-install tags to some tasks in check_mandatory_vars
We'll want these checks to always run when we're installing packages

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-02-16 10:43:36 -06:00
Leseb f86da22ce6 Merge pull request #543 from ceph/min_free_kbytes
ceph-common: calculate vm.min_free_kbytes
2016-02-16 16:27:23 +01:00
Sébastien Han 68a9d45a49 ceph-common: use stdout for the register var
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-16 16:26:56 +01:00
Sébastien Han 7ea9d95815 ceph-common: do not calculate vm.min_free_kbytes
we preserve the default kernel value.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-16 15:40:49 +01:00
Leseb 7c33a27b06 Merge pull request #539 from ceph/rhscon-support
rhscon (storage agent)
2016-02-15 17:43:25 +01:00
Sébastien Han 4ede7211a0 ceph-common: calculate vm.min_free_kbytes
based on the os memory we calculate the value for vm.min_free_kbytes

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-15 15:03:10 +01:00
Alfredo Deza da4b7b290c fix wording on defaults main.yml
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-15 07:50:09 -05:00
Alfredo Deza 73928a5d7b only check for subscription manager on RH systems
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-15 07:49:03 -05:00
Niklas Haas 20e6f932dd
ceph-common: use explicit action syntax for config_template
This fails with "ERROR! no action detected in task" otherwise.
2016-02-14 20:58:04 +01:00
Sébastien Han 59b96e9f11 ceph-osd: fix the autodiscovery osd scenario
the parted command wasn't getting the devices properly and the partition
count is not necessary.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-13 23:07:44 +01:00
Alfredo Deza c59d6f00cb check for subscription manager
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-12 15:54:56 -05:00
Alfredo Deza 2fd5ab18ac create the task to install and configure the agent
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-12 15:37:06 -05:00
Alfredo Deza 2d0993d4c7 better reword the master host variable
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-12 13:27:04 -05:00
Alfredo Deza 42e5391723 create a template for the ceph agent minion
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-12 13:08:32 -05:00
Alfredo Deza 28abc3d6d4 define the supported versions
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-12 12:01:51 -05:00
Alfredo Deza b4dc6cf43f initial files for the ceph-agent role
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2016-02-12 11:53:15 -05:00
Sébastien Han 64c458bfcf ceph-osd: fix register variable
as stated in https://github.com/ansible/ansible/issues/4297
if we register a variable twice and even if a task is skipped the
  register will not get overwritten... So we use the fact variant as
  mentionned in the ansible issue.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-12 00:54:09 +01:00
Sébastien Han b285a5ae8f ceph-osd: simply the regex to check the device
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-11 22:51:23 +01:00
Sébastien Han ea0979cbbe ceph-osd: fix the auto discovery scenario
While this is not widly used (AFAIK :p) the feature was broken. Thanks
to @zmc for reporting it. You can now set `osd_auto_discovery` to
true in your group_vars/osd and it will go through all the devices
available and will make them OSDs.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-11 22:43:09 +01:00
Leseb 78cb5cc726 Merge pull request #534 from ceph/fix-osd-typo
ceph-osd: docker: fix type
2016-02-11 17:59:07 +01:00
Sébastien Han a3cc055e61 ceph-osd: docker: fix type
use ceph_osd_docker_devices and not ceph_osd_docker_device

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-11 17:57:10 +01:00
Sébastien Han 2d1cec643d use the ansible_version variable
use the builtin variable to check the ansible version

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-11 17:34:44 +01:00
Leseb a1a4848023 Merge pull request #526 from mattt416/issue_525
Change modes to string values
2016-02-10 23:54:29 +01:00
Ben England b0ee3616a5 make sure /etc/fstab is always valid at boot time no matter what 2016-02-09 15:02:55 -05:00
Matt Thompson 14cf9f434e Change modes to string values
Currently deploying a MON fails with "bad symbolic permission for mode"
errors due to the file/directory modes not being interpreted as octal
values.  This commit updates roles/ceph-common/tasks/main.yml to set
the file/directory modes to strings so they can be interpreted
correctly.

Closes issue #525
2016-02-09 09:51:31 +00:00
Sébastien Han 774966b671 ceph-rgw: fix docker typo
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-08 15:25:24 +01:00
Sébastien Han fa610cabf7 ceph-ansible: allow to run containerized daemons
run containerized daemons in virtual machines.
to enable it simply do:

`cp site-docker.yml.sample site-docker.yml`

and set `docker: true` in `vagrant_variables.yml`

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-07 22:30:32 +01:00
Sébastien Han fd0dd3d89a ceph-restapi: fix meta file
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-05 17:19:54 +01:00
Leseb d050179121 Merge pull request #512 from guits/quick_fix
Refact code using `set_fact` to handle 'legacy' versions
2016-02-05 16:41:35 +01:00
Guillaume Abrioux dcec63adc8 Refact code using `set_fact`
At the moment, all the tasks using the file module are duplicated to have differents ownerships depending on the fact `is_ceph_infernalis`.
The goal of this commit is to have a new logic for this:
- First set facts depending on the `is_ceph_infernalis` fact
- Create the files or directories using the setted facts as ownerships.
2016-02-05 16:14:01 +01:00
Sébastien Han c0a3837d6e ceph-common: replace 'sudo' by 'become'
to avoid warning from ansible v2. works for both `1.9.4` and `2.0.0.2`.

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-04 12:36:46 +01:00
Andrew Schoen df7c8da0e9 Adds a package-install tag to all installation tasks
We have a requirement to install the packages first without
configuration. These tags should allow us to target the tasks need to do
that.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-02-03 11:27:16 -06:00
Leseb b37443dd97 Merge pull request #508 from mattt416/upgrade_flag
Control when ceph packages get updated
2016-02-02 15:16:03 +01:00
Sébastien Han 5ef844988e ceph-common: use a generic way to create uuid
as reported in #510 some systems don't have uuidgen installed so we
better use a more global way to generate it. It sounds like python
should be available in case uuidgen is not.
Otherwise we will have to find another way :)

closes #510

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-02-02 11:24:58 +01:00
Matt Thompson a227a50ab2 Control when ceph packages get updated
Currently, all the ceph package installation resources use
"state=latest", which means subsequent runs of the ceph playbooks
could result in ceph being upgraded if there are package updates
available in the selected repo.

This commit adds a new variable to ceph-common called
'upgrade_ceph_packages' which defaults to False.  This variable is used
in the package installation resources for ceph packages to determine if
the resource should use "state=present" or "state=latest".  If the
variable gets set to True, "state=latest" will be used.

Additionally, we update rolling_update.yml to override
upgrade_ceph_packages to true to permit package upgrades in this
context specifically.

Closes issue #506
2016-02-02 09:56:40 +00:00
Sébastien Han 2665c43f34 fix type on ice template
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-01-29 01:15:32 +01:00
Leseb d54d6f9888 Merge pull request #502 from ceph/use-dnf
use dnf when yum is not available
2016-01-29 01:03:04 +01:00
Sébastien Han 17bc64e1ea use dnf when yum is not available
fixes the `importError: No module named yum` see here:
https://jenkins.ceph.com/job/ceph-ansible-pull-requests/45/console

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-01-28 19:11:22 +01:00
Andrew Schoen 1fc8a17eb0 Add defaults for ceph_stable_ice_tmp_path and ceph_stable_ice_kmod
It seems that in ansible 2.0 even if a task is skipped by it's `when`
clause not evaluating to true the variables in the play are still
rendered. Because these were not defined in defaults/main.yml ansible
was failing in installs/install_on_redhat where those variables are
being used in a `with_items` stanza.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2016-01-28 11:40:18 -06:00
Sébastien Han f35a665634 Fix pip package name on debian
use python-pip and not pip

Signed-off-by: Sébastien Han <seb@redhat.com>
2016-01-28 15:55:53 +01:00