Commit Graph

93163 Commits

Author SHA1 Message Date
Kefu Chai
1189e2e3ea
Merge pull request #25585 from SUSE/wip-remove-cython-subinterpreter-check
cmake,deb,rpm: remove cython 0.29's subinterpreter check, re-enable build with cython 0.29+

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-12-20 19:30:08 +08:00
Sage Weil
3a2b090623 Merge PR #25622 into master
* refs/pull/25622/head:
	Objecter.cc: make op resend logic more readable

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2018-12-19 21:23:26 -06:00
Sage Weil
9f3cf00b79 Merge PR #25360 into master
* refs/pull/25360/head:
	qa/workunits/mon/pg_autoscaler: clean up pools afterwards
	qa/suites/rados/singletone/all/pg-autoscaler: whitelist health warnings
	qa/tasks/ceph: wait for splits/merges before final scrub
	mon/OSDMonitor: be tidy with target_size_ratio and pre-nautilus code
	mgr/pg_autoscaler: simplify conditions
	qa/suites/rados: add simple pg-autoscaler test
	qa/workunits/cephtool/test.sh: pg_autoscale_mode=off while testing pg_num etc
	doc/rados/operations: document autoscaler and its health warnings
	mgr/pg_autoscaler: add pg autoscaler module
	pybind/mgr/mgr_util: move format_ helpers out of status module
	mon/OSDMonitor: accept optional target_size_{bytes,ratio} to 'osd pool create'
	mon/OSDMonitor: remove max_split_count configurable
	osd/osd_types: pool_opts_t: int -> int64_t
	osd/osd_types: pool_opts: fix whitespace
	osd/osd_types: pool_opts_t: make encoding feature-dependent
	mgr/devicehealth: pg_num_min 1 for device_health_metrics pool
	mon/OSDMonitor: accept optional pg_num_min to 'osd pool create'
	mon/OSDMonitor: apply osd_pool_default_pg_autoscale_mode to new pools
	pybind/mgr/mgr_module: some accessors
	mon/MgrMonitor: enable progress module by default
	osd/osd_types: add pool pg_autoscale_mode, pg_num_min, target_size_{bytes,ratio} properties
	osdc/Objecter: revise get_latest_version locking
	os/memstore: ignore OP_COLL_SET_BITS
	qa: generalise REQUIRE_MEMSTORE
	mgr: drop GIL in get_config
	mon: add 'size' arg to `osd pool create`
	mon: use pg_num_target for checks during creation
	mgr: revise locking in getter paths
	common/options: add `mon_target_pg_per_osd`
	mgr: expose OSDMap.pool_raw_used_rate

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
2018-12-19 21:22:35 -06:00
Sage Weil
b255e49259 qa/workunits/mon/pg_autoscaler: clean up pools afterwards
This avoids a huge pg merge from 100s to 4, which takes a long time and
makes the teuthology scrub cleanup time out.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-19 14:37:01 -06:00
Sage Weil
b8d45b262c qa/suites/rados/singletone/all/pg-autoscaler: whitelist health warnings
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-19 14:37:01 -06:00
Sage Weil
6f06e394e4 qa/tasks/ceph: wait for splits/merges before final scrub
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-19 14:37:01 -06:00
Yehuda Sadeh
b6b2e7f71a
Merge pull request #25056 from fghaas/doc-rgw-openstack
doc: Improve OpenStack integration and multitenancy docs for radosgw

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
Reviewed-by: Kai Wagner <kwagner@suse.com>
Reviewed-by: Maxime Guyot <maxime@root314.com>
2018-12-19 12:28:55 -08:00
jtlayton
8dd93330e4
Merge pull request #25610 from jtlayton/wip-orchestrator
mgr/orchestrator: fix _list_services display
2018-12-19 14:11:46 -05:00
Sage Weil
b6822c8a36 Merge PR #25614 into master
* refs/pull/25614/head:
	cls/rgw: update rgw_cls_usage_log_trim_op encode version

Reviewed-by: Sage Weil <sage@redhat.com>
2018-12-19 11:45:29 -06:00
Florian Haas
d730820a48 Improve OpenStack integration and multitenancy docs for radosgw
Add explanatory information on:

* "rgw swift account in url" (including the Swift account in the Swift
  API url and Keystone endpoint)
* "rgw swift versioning enabled" (enabling Swift object versioning)
* "rgw s3 auth use keystone" (enabling S3 authentication against
  Keystone)
* "rgw keystone implicit tenants" (multi-tenancy via Keystone, including
  its implications for the Swift and S3 APIs)

Fixes: http://tracker.ceph.com/issues/36765
Signed-off-by: Florian Haas <florian@citynetwork.eu>
2018-12-19 17:46:56 +01:00
Kefu Chai
98860b8bf0
Merge pull request #25629 from tchaikov/wip-37707
install-deps.sh: disable centos-sclo-rh-source

Reviewed-by: Sage Weil <sage@redhat.com>
2018-12-19 20:46:23 +08:00
Lenz Grimmer
44bd1a0aa7
Merge pull request #25628 from rhcs-dashboard/masthead-changes
mgr/dashboard: Changed background color of Masthead to brand gray

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-12-19 13:30:31 +01:00
Jeff Layton
da6ae669df mgr/orchestrator: fix _list_services display
I see this error when using "ceph orchestrator service ls":

Error EINVAL: Traceback (most recent call last):
  File "/usr/lib64/ceph/mgr/orchestrator_cli/module.py", line 318, in handle_command
    return self._handle_command(inbuf, cmd)
  File "/usr/lib64/ceph/mgr/orchestrator_cli/module.py", line 330, in _handle_command
    return self._list_services(cmd)
  File "/usr/lib64/ceph/mgr/orchestrator_cli/module.py", line 165, in _list_services
    s.config_location))
AttributeError: 'ServiceDescription' object has no attribute 'config_location'

The config_locations field should be rados_config_location.

Signed-off-by: Jeff Layton <jlayton@redhat.com>
2018-12-19 06:17:59 -05:00
Kefu Chai
aa2b9e9a64 install-deps.sh: skip unavailable repos
as centos-sclo-rh-source leads us to 404 at this moment. and we are not
using the source repo for building ceph. so we can just skip any
unavailable repo.

Fixes: http://tracker.ceph.com/issues/37707
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2018-12-19 17:06:35 +08:00
Neha Gupta
4dcf76b175
mgr/dashboard: Changed background color of Masthead to brand gray
Fixes: http://tracker.ceph.com/issues/35690
Signed-off-by: Neha Gupta <gnehapk@gmail.com>
2018-12-19 17:35:25 +09:00
Sage Weil
e998991a09 mon/OSDMonitor: be tidy with target_size_ratio and pre-nautilus code
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 21:41:26 -06:00
Song Shun
2428f50ee8 Objecter.cc: make op resend logic more readable
make op resend logic more readable
  according to discussion at https://github.com/ceph/ceph/pull/25243

Signed-off-by: Song Shun <song.shun3@zte.com.cn>
2018-12-19 10:55:43 +08:00
Sage Weil
431d9b8699 mgr/pg_autoscaler: simplify conditions
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 16:22:39 -06:00
Sage Weil
403622be72 Merge PR #25470 into master
* refs/pull/25470/head:
	mon: CephBool -> CephChoices in command map for pre-nautilus mons
	mon/MonCommand: populate 'availability' field for compat

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2018-12-18 16:21:27 -06:00
Sage Weil
2cd1ca6625 qa/suites/rados: add simple pg-autoscaler test
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
87828e5cdd qa/workunits/cephtool/test.sh: pg_autoscale_mode=off while testing pg_num etc
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
f490fd0130 doc/rados/operations: document autoscaler and its health warnings
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
cea8f717f4 mgr/pg_autoscaler: add pg autoscaler module
Suggest or make changes to pool pg_num based on either current
utilization or administrator-provided target_size_{bytes,ratio}
expected utilization.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
c09bc8206c pybind/mgr/mgr_util: move format_ helpers out of status module
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
d98bc941ba mon/OSDMonitor: accept optional target_size_{bytes,ratio} to 'osd pool create'
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
4d3407ba93 mon/OSDMonitor: remove max_split_count configurable
This isn't really relevant or useful now that the mgr is throttling the
actual pg_num adjustment based on pg_num_target, % misplaced, etc.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
0846da1a9c osd/osd_types: pool_opts_t: int -> int64_t
Encode int32_t for pre-nautilus maps.

Fix up accessors.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
bcf75c5e22 osd/osd_types: pool_opts: fix whitespace
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
f94e7da364 osd/osd_types: pool_opts_t: make encoding feature-dependent
No functional change (yet).

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
955fec2a5e mgr/devicehealth: pg_num_min 1 for device_health_metrics pool
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
7b5c8511c9 mon/OSDMonitor: accept optional pg_num_min to 'osd pool create'
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
1164c30443 mon/OSDMonitor: apply osd_pool_default_pg_autoscale_mode to new pools
Default to 'warn' for now.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
John Spray
b19a0a010a pybind/mgr/mgr_module: some accessors
Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
5aae053c90 mon/MgrMonitor: enable progress module by default
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
8845463995 osd/osd_types: add pool pg_autoscale_mode, pg_num_min, target_size_{bytes,ratio} properties
These will direct PG autoscaling.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 13:30:54 -06:00
John Spray
5ce5f65179 osdc/Objecter: revise get_latest_version locking
Avoid holding Objecter lock while calling back
into completion.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
John Spray
1d9ea303bb os/memstore: ignore OP_COLL_SET_BITS
...rather than crashing out on it.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
John Spray
e5fb5a1ddd qa: generalise REQUIRE_MEMSTORE
Move it up into CephTestCase so that mgr tests can
use it too, and pick it up in vstart_runner.py so
that these tests will work neatly there.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
John Spray
d590a53918 mgr: drop GIL in get_config
Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
95505d41d6 mon: add 'size' arg to osd pool create
Take advantage of keyword arguments to extend
what we can do in a single command during pool creation.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
John Spray
0e101ae10f mon: use pg_num_target for checks during creation
This way, someone creating pools can proceed
as long as they've decreased the pg_num_target
of other pools, even if the adjustment hasn't
fully completed yet.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
61aa7e2e02 mgr: revise locking in getter paths
There were many places where with_* methods
were blocking on locks while holding the GIL.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 13:30:54 -06:00
Sage Weil
20caf99856 Merge PR #25613 into master
* refs/pull/25613/head:
	qa/suites/upgrade/mimic-x: add missing .qa

Reviewed-by: João Eduardo Luís <joao@suse.de>
2018-12-18 12:21:25 -06:00
John Spray
d83000266e common/options: add mon_target_pg_per_osd
This is the partner to mon_max_pg_per_osd, where
this is a more conservative target for PG auto adjustment,
leaving some breathing room for situations where we
might temporarily exceed our target PG count (but not
want to exceed our maximum PG count)

Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 10:50:14 -06:00
John Spray
6ed099f31c mgr: expose OSDMap.pool_raw_used_rate
Signed-off-by: John Spray <john.spray@redhat.com>
2018-12-18 10:50:14 -06:00
Sage Weil
81160bc202 Merge PR #25190 into master
* refs/pull/25190/head:
	mgr/prometheus: adjust to new 'df' fields
	mon/Monitor: fix newline between df section
	doc: update docs for new ceph df output
	mon/PGMap: break down RAW usage by device class
	mon/PGMap: tweak df headers
	mon/PGMap: GLOBAL -> RAW STORAGE in 'df' output
	mon/PGMap: dump_fs_stats -> dump_cluster_stats

Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-12-18 10:47:52 -06:00
Sage Weil
5e7f8a5139 Merge PR #25615 into master
* refs/pull/25615/head:
	common/options: fix bad default

Reviewed-by: Neha Ojha <nojha@redhat.com>
2018-12-18 10:22:36 -06:00
Sage Weil
9ddaa6e730 common/options: fix bad default
Got the fields wrong.

Fixes ff75a0b4f2

Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 09:16:29 -06:00
Casey Bodley
48ac39cf65 cls/rgw: update rgw_cls_usage_log_trim_op encode version
commit 7b17da691f added a 'bucket' field
to this op without bumping the encode version, and is causing failures
on upgrade

Fixes: http://tracker.ceph.com/issues/37703

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-12-18 09:35:48 -05:00
Sage Weil
09a8e5bce0 qa/suites/upgrade/mimic-x: add missing .qa
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-18 08:17:31 -06:00