Commit Graph

382 Commits

Author SHA1 Message Date
Sage Weil
91d8251569 Merge pull request #4547 from yuyuyu101/wip-perf
Perf: used to perf local hardware capacity

Reviewed-by: Kefu Chai <kchai@redhat.com>
2015-05-27 15:26:13 -07:00
Sage Weil
c6f62f518f Merge remote-tracking branch 'gh/next' 2015-05-27 17:25:28 -04:00
Haomai Wang
f814298008 packaging: include ceph_perf_local
Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
2015-05-27 12:51:50 +08:00
Sage Weil
5a216b1470 Merge pull request #4768 from SUSE/wip-systemd_autotools_template_systemd_ceph_osd
Template systemd/ceph-osd@.service with autotools,

Reviewed-by: Sage Weil <sage@redhat.com>
2015-05-26 15:37:20 -07:00
Owen Synge
ac347dc340 Template systemd/ceph-osd@.service with autotools,
The libexec path is different for different distributions.
systemd. This path is defined by a new variable on the
configure path.

This variable can be set with enviroment SYSTEMD_LIBEXEC_DIR.
The parameter --with-systemd-libexec-dir overrides the enviroment
variable.

Appropriate conditionals are set for SUSE and RHEL derivatives.

This is then used to template out systemd/ceph-osd@.service

Signed-off-by: Owen Synge <osynge@suse.com>
2015-05-26 19:04:22 +02:00
Ken Dreyer
ad3b3041ec Merge pull request #4682 from SUSE/wip-11629-next
ceph.spec.in: SUSE/openSUSE builds need libbz2-devel

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-05-15 14:40:08 -06:00
Nathan Cutler
584ed2e28b ceph.spec.in: SUSE/openSUSE builds need libbz2-devel
http://tracker.ceph.com/issues/11629 Fixes: #11629

Signed-off-by: Nathan Cutler <ncutler@suse.cz>
2015-05-15 22:35:01 +02:00
Nathan Cutler
363d957d8f ceph.spec.in: tweak ceph-common for SUSE/openSUSE
ceph-common needs python-argparse in SUSE/openSUSE and
needs redhat-lsb-core only in RHEL/CentOS/Fedora.

http://tracker.ceph.com/issues/11638 Fixes: #11638

Signed-off-by: Nathan Cutler <ncutler@suse.cz>
2015-05-15 21:43:34 +02:00
Nathan Cutler
46404dd381 ceph.spec.in: consolidate centos/rhel macros
0%{?rhel} || 0%{?centos} can be simplified to just 0%{?rhel}, since
CentOS defines that macro for compatibility with RHEL.

Signed-off-by: Nathan Cutler <ncutler@suse.cz>
2015-05-15 21:39:39 +02:00
Sage Weil
9d8c115b0a init-radosgw.sysv: remove
Signed-off-by: Sage Weil <sage@redhat.com>
2015-05-14 09:51:14 -07:00
Ken Dreyer
f9d66a816b Merge pull request #4666 from SUSE/wip-11610-next
ceph.spec.in: include SUSE in _with_systemd

Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
2015-05-13 10:06:11 -06:00
Nathan Cutler
61303656fa ceph.spec.in: include SUSE in _with_systemd
The master specfile newly defines a _with_systemd variable that should be true
for the set of distros that are using systemd. Since this set of distros
includes SUSE/openSUSE (at least for the more recent versions where ceph is
supported), this commit sets _with_systemdto true on SUSE/openSUSE.

http://tracker.ceph.com/issues/11610 Fixes: #11610

Signed-off-by: Nathan Cutler <ncutler@suse.cz>
2015-05-13 15:32:38 +02:00
Loic Dachary
44d6429a5d Merge pull request #4412 from tchaikov/wip-add-man-page
doc: add man page for ceph-create-keys

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-05-12 16:03:07 +02:00
Travis Rhoden
bf93128f66 packaging: Add rgw placeholder dirs in proper packages
Automatically create /var/lib/ceph/radosgw with the
ceph-radosgw package, and /var/lib/ceph/bootstrap-rgw
via the ceph package.

Signed-off-by: Travis Rhoden <trhoden@redhat.com>
2015-05-08 14:02:43 -04:00
Loic Dachary
0c715f6971 Merge pull request #4532 from dachary/wip-init-system-detection
ceph-detect-init helper and associated tests

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-05-07 22:21:26 +02:00
Loic Dachary
8f23382064 Merge pull request #4353 from ceph/wip-11376-packaging-objstore-tool
#11376: packaging: mv ceph-objectstore-tool to main ceph pkg

Reviewed-by: Sage Weil <sage@redhat.com>
2015-05-06 11:04:24 +02:00
Loic Dachary
b4a441a0ed ceph-detect-init: package for rpm and debian
Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-05-06 01:54:36 +02:00
Ken Dreyer
61cf5da0b5 packaging: mv ceph-objectstore-tool to main ceph pkg
This change ensures that the ceph-objectstore-tool utility is present on
all OSDs.  This makes it easier for users to run this tool to do manual
debugging/recovery in some scenarios.

http://tracker.ceph.com/issues/11376 Refs: #11376

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-04-30 15:53:22 -06:00
Tim Serong
70292658d5 packaging: move SuSEfirewall2 templates out of src
Better to have static config like this that needs to be installed in
/etc in a separate subdirectory of the project.

Signed-off-by: Tim Serong <tserong@suse.com>
2015-04-30 12:04:14 +10:00
Tim Serong
77685f5b78 packaging: add SuSEfirewall2 service files
This adds SuSEfirewall2 service files for Ceph MON, OSD and MDS, for use
on SLES and openSUSE.  The MON template opens port 6789 and the OSD/MDS
template opens the range 6800-7300 as per
http://ceph.com/docs/master/rados/configuration/network-config-ref/

Signed-off-by: Tim Serong <tserong@suse.com>
2015-04-29 13:21:54 +10:00
Kefu Chai
27cee2f1f4 doc: add ceph-create-keys.8
Fixes: #10725
Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-04-22 21:35:01 +08:00
Sage Weil
47a11ff6d5 Merge pull request #3481 from ktdreyer/wip-rpm-rm-old-fedoras
ceph.spec.in: remove reference to EOL Fedoras
2015-04-14 13:49:05 -07:00
Ken Dreyer
aa88364f30 ceph.spec.in: set _with_systemd on RHEL 7 and Fedora
Commit 71a5090bca added a "_with_systemd"
conditional to the RPMs, but I erred with the version comparison
operator, so this only applied to RHEL 8+, not RHEL 7+.

Adjust the conditional so that it will really apply to RHEL 7+. While
we're here, add Fedora as well.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
Reported-by: Boris Ranto <branto@redhat.com>
2015-04-09 11:15:41 -06:00
Loic Dachary
21b93775d6 spec.in: sphinx -b man needs sphinx > 1.0 (part 2)
Instead of listing the operating system versions that do not require the
python-sphinx10 package, switch to listing the operating system versions that
require the python-sphinx10 package. It's easier to maintain because
there only are a few.

Signed-off-by: Loic Dachary <ldachary@rehdat.com>
2015-04-07 12:09:03 +02:00
Loic Dachary
a8eab36cb0 spec.in: sphinx -b man needs sphinx > 1.0
It is used to build the man pages.

Signed-off-by: Loic Dachary <ldachary@rehdat.com>
2015-04-03 02:59:58 +02:00
Loic Dachary
18c34f2133 Merge pull request #4142 from ceph/wip-no-more-dot-8
doc: generate man pages in man/Makefile

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-04-02 17:42:23 +02:00
Loic Dachary
e33951342d Merge pull request #4068 from dachary/wip-opensuse
tests: add OpenSUSE 13.2 dockerfile

Reviewed-by: Owen Synge <osynge@suse.com>
2015-04-02 11:32:09 +02:00
Ken Dreyer
c5cf81dd91 ceph.spec.in: fix _with_systemd conditional
The RPM conditional needs a "?" in the event that it is not defined.
2015-03-25 12:16:03 -06:00
Danny Al-Gaaf
24aeb78bb0 Merge pull request #3916 from ceph/wip-rpm-no-ghost-socket-dir
ceph.spec.in: fix handling of /var/run/ceph

Reviewed-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2015-03-25 17:27:14 +01:00
Loic Dachary
bdac3dc3fb ceph.spec: update OpenSUSE BuildRequires
OpenSUSE 13.2 needs libsnappy-devel but not bzip2-devel.

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-24 14:11:43 +01:00
Kefu Chai
301fe6cbf2 doc: generate man pages in man/Makefile
* move rst files from doc/man/8 into man/8
* extract man_pages setting for sphinx from doc/conf.py to man/conf.py
* generate all man pages in `make install`
* add python-sphinx to Build-Depends
* check for sphinx-build in `configure`
* run changed rst files through sphinx-build in `make check`

Signed-off-by: Kefu Chai <kchai@redhat.com>
2015-03-24 12:36:41 +08:00
Ken Dreyer
71a5090bca ceph.spec.in: fix handling of /var/run/ceph
Prior to this commit, we didn't install /var/run/ceph as a normal
directory. We used the %ghost directive and created the directory with
a "mkdir" command in %post.

This was lacking in several ways:

  1) Simplicy: there is no need to use %ghost; other packages (eg.
     mariadb) simply use a normal %dir for their socket directory.

  2) RPM does not have control over the permissions of the /var/run/ceph
     directory. This does not interact well with "rpm -V". Moreover,
     once Ceph itself gets unprivileged user support, RPM itself won't
     be able to set the permissions of the directory for a (future)
     unprivileged UID.

  3) On distributions that use systemd as an init system, /var/run is a
     symlink to /run, which is tmpfs. This means that /var/run/ceph does
     not persist across reboots on those systems.

Remove the %ghost directive; it makes more sense for RPM to simply
install this directory like the rest of the %files.

Add a "_with_systemd" conditional so we know which distros use systemd
as their init system.  Add the /etc/tmpfiles.d/ceph.conf file on those
distros. See
http://www.freedesktop.org/software/systemd/man/tmpfiles.d.html

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-17 12:28:28 -06:00
Ken Dreyer
353a325896 ceph.spec.in: rm EOL Fedoras; add OBS RHEL5 instead
Fedora 12 has been EOL for a long time. Remove the reference in the
RPM .spec file.

Since RHEL 5 support for Ceph is a work in progress, we won't remove
this entire python_sitelib / python_sitearch conditional for now, since
those are still needed on RHEL 5.

Add the rhel_version macro to make the conditional compatible with
SUSE's OBS.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-16 10:02:57 -06:00
Ken Dreyer
338b44bc74 packaging: include ceph_perf_objectstore
The /usr/bin/ceph_perf_objectstore file is installed by default. Prior
to this commit it was missing from the packaging. This caused the RPM to
fail to build in mock.

Add ceph_perf_objectstore to the "ceph-test" RPM and Debian package.

If we end up developing further ceph_perf_* utilities, it would make
sense to glob them all with a wildcard, similar to what we are doing
with all the ceph_test_* utilities in ceph-test.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-13 16:14:51 -06:00
John Spray
c3ef6409b2 ceph.in: add 'daemonperf' command
This is inspired by dstat and scripts/perf-watch.py, to
give a convenient live view of an interesting subset
of the performance counters from a Ceph daemon.

Signed-off-by: John Spray <john.spray@redhat.com>
2015-03-05 20:17:35 +00:00
Ken Dreyer
924f85f157 ceph.spec.in: loosen ceph-test's dependencies
In Debian, the ceph-test package can be installed with any version of
ceph-common.

Prior to this commit, in RHEL, we're much more strict about which
version of the dependencies we require. We depend directly on
librados2/librbd1/libcephfs1 instead of ceph-common, and we also require
the specific versions of these libraries to match the version of
ceph-test.

For testing Ceph, it is nice to have the ability to upgrade the
librados2/librbd1/libcephfs1 libraries on a host without having to also
upgrade the ceph-test package as well.

Remove the version number requirements, and change the dependencies from
librados2/librbd1/libcephfs1 to simply "ceph-common". That will make
/etc/ceph/ and /var/log/ceph present for the tests.

http://tracker.ceph.com/issues/10989 Refs: #10989

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-03-04 15:18:13 -07:00
Ken Dreyer
f3ad61a674 packaging: move rbd udev rules to ceph-common
We should ship the RBD udev rules in the same package that ships
/usr/bin/rbd.  This package happens to be ceph-common, so move the udev
rules there.

The udev rules rely on the ceph-rbdnamer utility, so move that utility
and its man page as well.

http://tracker.ceph.com/issues/10864 Refs: #10864

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-02-25 17:43:01 -08:00
Boris Ranto
d1c82ea9f4 ceph.spec: specify version
Signed-off-by: Boris Ranto <branto@redhat.com>
2015-02-24 18:30:18 -08:00
Boris Ranto
39982b10ad Split python-ceph to appropriate python-* packages
python-ceph contains various header files/bindings for serveral
libraries, this patch creates *-devel packages for all the
libraries separately and provides the compatibility layer for
the split.

Signed-off-by: Boris Ranto <branto@redhat.com>
2015-02-24 12:50:27 -08:00
Boris Ranto
c341c52984 ceph.spec: split ceph-devel to appropriate *-devel packages
ceph-devel contains various header files/bindings for several
libraries, this patch creates *-devel packages for all the libraries
separately and provides the compatibility layer for the split.

http://tracker.ceph.com/issues/10884 Refs: #10884

Signed-off-by: Boris Ranto <branto@redhat.com>

Amended by Ken Dreyer <kdreyer@redhat.com> to add version numbers to the
Obsoletes, add Obsoletes to the libradosstriper1-devel and
libcephfs_jni1-devel subpackages, adjust the librados documentation, and
add the Redmine issue number to this commit log.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-02-16 16:21:42 -07:00
Loic Dachary
3c05c9c829 tests: no need for python-flask at build time
http://tracker.ceph.com/issues/10845 Refs: #10845

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-02-12 00:55:49 +01:00
Sage Weil
f65cb09e17 Merge pull request #3092 from abartlet/ceph-dmcrypt-plain
Ceph dmcrypt with LUKS (split into 4 patches)

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-02-11 09:21:53 -08:00
Loic Dachary
4f36eaee9e ceph.spec.in: junit always except for EPEL 6
The package was renamed a long time ago (around the Fedora 15
timeframe). The "junit4" name is only relevant for EPEL 6. For EPEL 7
and Fedora 20, the "junit" package has "Provides: junit4". And most
recently, in the junit package that ships in Fedora 21 and 22, the
package maintainer dropped the old Provides: line.

http://tracker.ceph.com/issues/10728 Fixes: #10728

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-02-11 00:02:28 +01:00
Yehuda Sadeh
e6c2c82306 Merge pull request #3476 from ktdreyer/wip-rpm-radosgw-logrotate
ceph.spec.in: move rgw logrotate to rgw subpackage

Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-30 09:11:36 -08:00
Andrew Bartlett
2113524b9d Add tests for ceph dmcrypt encryption
Signed-off-by: Andrew Bartlett <abartlet@catalyst.net.nz>
2015-01-30 14:34:42 +13:00
Andrew Bartlett
6a45b8ed04 add all possible ceph-disk run-time requirements to build time deps
There really should be a better way than this to ensure the right things are installed for make check.

The existing list in ceph.spec.in has been re-sorted, just as the debian/control is

Andrew Bartlett
2015-01-30 14:34:09 +13:00
Ken Dreyer
9b220bddea ceph.spec.in: use wildcards to capture man pages
Use wildcard to capture gzipped man pages for ceph-clsinfo(8) and
librados-config(8). In addition to future-proofing us against
possible compression type changes down the road, this also aligns us
with the existing convention that's used to capture the rest of the man
page files.
2015-01-23 15:08:34 -07:00
Ken Dreyer
9edd0a5334 ceph.spec.in: move rgw logrotate to rgw subpackage
Prior to this commit, the radosgw logrotate config was in the main
"ceph" package. This meant that if a user had installed "ceph", but not
"ceph-radosgw", they would end up with a logrotate configuration that
was unnecessary.

Only install the logrotate configuration file if the user has installed
ceph-radosgw.

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-01-23 09:37:56 -07:00
Ken Dreyer
fff3cf91de ceph.spec.in: capitalization and punctuation
Ensure that each sub-package's %description starts with a capital letter
and ends with a dot.

rpmlint has a rule that checks the Summary field, but not %description
(yet).

Signed-off-by: Ken Dreyer <kdreyer@redhat.com>
2015-01-22 16:45:28 -07:00
Gregory Farnum
2a4cbfcca6 Merge pull request #3335 from ceph/wip-cephfs-tabletool
Create cephfs-table-tool

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2015-01-15 21:58:17 -08:00