Commit Graph

143 Commits (a8509fbc9c0328670224f608abea17d8e64257ab)

Author SHA1 Message Date
Andrew Schoen 7dc9c4b5b6 ceph-common: update apt cache in it's own task
Signed-off-by: Andrew Schoen <aschoen@redhat.com>
2017-01-30 17:15:08 -06: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 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 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
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
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 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
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
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
Simon Weald 6adab85df2 forced an apt-get update prior to installing any packages from Ceph repos 2016-10-17 15:37:26 +01: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
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
Simon Weald e160edd881 updated Debian package installation syntax for Ansible v2 2016-10-04 15:04:15 +01:00
James Saint-Rossy 99f1caa120 Fixed check to legacy ceph_stable_releases list 2016-09-26 11:33:17 -04:00
James Saint-Rossy 982c44d41c Rebased with upstream master 2016-09-25 23:22:16 -04: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
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
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
James Saint-Rossy 7e284920d1 Fixes for Hammer install and added numerical release checks 2016-08-24 00:23:47 -04: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
Leseb 995efb940f Merge pull request #932 from dang/nfs-rgw
NFS for FSAL_RGW
2016-08-16 09:45:17 +02: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
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
James Saint-Rossy a4d057f555 Fix purge yum cache 2016-08-04 01:26:59 -04: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 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
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
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
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
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
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
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 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
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 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
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
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
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
Leseb 30f7208334 Merge pull request #748 from ceph/use-jewel
ceph: use jewel release
2016-05-09 01:13:54 +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
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
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
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
James Saint-Rossy fc270bb772 fixed handling of new ceph_version 2016-04-12 21:26:59 -04: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
James Saint-Rossy 3f9bd5c1b7 Removed infernalis workaround because ceph_stable_releases now includes it by default 2016-04-09 17:21:36 -04: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
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
Ben England b199bdcfab fix when clauses for installation of ceph RPM 2016-04-05 21:11:37 -04: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
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
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
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
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
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
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 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 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
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
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
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
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
Sébastien Han 64b32020e9 Necessary change to work on ansible v2
Signed-off-by: Sébastien Han <seb@redhat.com>
2016-01-25 11:21:30 +01:00
Ben England b5cdacb136 help ansible find repo template from installs subdirectory 2016-01-15 12:52:31 -05:00
Logan V d23b27e6d7 allow customization of debian ceph stable repo url 2016-01-11 12:13:09 -06:00
Sébastien Han e6a9727478 Support infernalis for rh storage
Signed-off-by: Sébastien Han <seb@redhat.com>
2015-12-15 22:07:45 +01:00
Michael Sambol 66259dc1c9 Refactor ceph-common, adjust styling 2015-09-03 21:09:33 -05:00
Sébastien Han 0cbc81622f Get Ceph from distro repository (redhat-based)
Follow up on #392

Signed-off-by: Sébastien Han <seb@redhat.com>
2015-08-31 15:25:42 +02:00
Emilien Mantel b99355839a Remove capital letters 2015-08-31 14:23:20 +02:00
Emilien Mantel b187393a93 Get Ceph from distro repository (debian-based) 2015-08-27 11:26:54 +02:00
Sébastien Han b3c7c36299 Make package dependencies configurable
Closes: #386 and #384

Signed-off-by: Sébastien Han <seb@redhat.com>
2015-08-26 11:21:24 +02:00
Sébastien Han 476c5df38f Use latest packages
Fix back the rolling update playbook.
However every single time the playbook will run it will check for new
packages and install the latest ones. I don't think this is always the
desired behaviour. We need to find a way to conciliate both...

Signed-off-by: Sébastien Han <seb@redhat.com>
2015-08-17 11:28:20 +02:00
Sébastien Han 7ed67f37d8 Remove rgw installation from the ceph-rgw role
The installation of rgw is now handled by the ceph-common role.
Fixes: #307

Signed-off-by: Sébastien Han <seb@redhat.com>
2015-08-03 22:17:43 +02:00
leseb f1e6b0216d Re-arrange roles
Trying to add more clarity in the role's task structure.

Signed-off-by: leseb <seb@redhat.com>
2015-07-24 14:50:32 +02:00