Commit Graph

1057 Commits

Author SHA1 Message Date
Sage Weil
9c729a78be qa/tasks/keystone.py: no need for notcmalloc in example
Signed-off-by: Sage Weil <sage@redhat.com>
2019-02-08 09:12:01 -06:00
Lenz Grimmer
2275a41d09
Merge pull request #25918 from rjfd/wip-dashboard-nfs-backend
mgr/dashboard: NFS Ganesha management REST API

Reviewed-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
2019-02-06 16:41:49 +01:00
Sebastian Wagner
d71a97b7fa mgr/orchestrator: make use of @CLICommand
Also Modified some command to allow multiple hosts
Also: Added more tests

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2019-02-05 11:27:47 +01:00
Sebastian Wagner
d361f77a78
Merge pull request #26171 from sebastian-philipp/orchestrator-merge-create-add
mgr/orchestrator: Unify `osd create` and `osd add`

Reviewed-by: Jeff Layton <jlayton@redhat.com>
Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
2019-02-01 16:42:36 +01:00
Sebastian Wagner
9e926e9927 mgr/orchestrator: Unify osd create and osd add
Also:

* Added some more tests
* Better validation of drive Groups
* Simplified `TestWriteCompletion`

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2019-02-01 10:10:59 +01:00
Patrick Donnelly
0d26266ccb
Merge PR #26038 into master
* refs/pull/26038/head:
	mds: simplify recall warnings
	mds: add extra details for cache drop output
	qa: test mds_max_caps_per_client conf
	mds: limit maximum number of caps held by session
	mds: adapt drop cache for incremental recall
	mds: recall caps incrementally
	mds: adapt drop cache for incremental trim
	mds: add throttle for trimming MDCache
	mds: cleanup SessionMap init
	mds: cleanup Session init

Reviewed-by: Zheng Yan <zyan@redhat.com>
2019-01-31 12:08:26 -08:00
Patrick Donnelly
c0b3a11484
mds: simplify recall warnings
Instead of a timeout and complicated decisions about whether the client is
releasing caps in an expeditious fashion, just use a DecayCounter that tracks
the number of caps we've recalled. This counter is decremented whenever the
client releases caps. If the counter passes a threshold, then we raise the
warning.

Similar reworking is done for the steady-state recall of client caps. Another
release DecayCounter is added so we can tell when the client is not releasing
any more caps.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-31 12:07:54 -08:00
Ricardo Dias
eabb054b1a
mgr/dashboard: ganesha: add support for sec_label_xattr CEPH fsal attribute
Signed-off-by: Ricardo Dias <rdias@suse.com>
2019-01-31 11:10:10 +00:00
Ricardo Dias
acd9fc679e
mgr/dashboard: ganesha: add 'security_label' support
Signed-off-by: Ricardo Dias <rdias@suse.com>
2019-01-31 11:10:10 +00:00
Ricardo Dias
e429afda53
qa/tasks/mgr/dashboard: NFS Ganesha tests
Signed-off-by: Ricardo Dias <rdias@suse.com>
2019-01-31 11:10:09 +00:00
Casey Bodley
aacd111e39
Merge pull request #26205 from cbodley/wip-38115
qa/mon: fix cluster support for monmap bootstrap

Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-30 13:55:52 -05:00
Casey Bodley
0aebb55af5 qa/mon: fix cluster support for monmap bootstrap
-filter out mons from other clusters
-fix parsing of mon name from role

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

Signed-off-by: Casey Bodley <cbodley@redhat.com>
2019-01-30 12:24:36 -05:00
alfonsomthd
c094e2d702 mgr/dashboard: fix skipped backend API tests
* When the creation of the cluster is delegated to vstart_runner.py
(--create or --create-target-only) the amount of MGRs required
is calculated by the script so there is no more skipped tests
due to insufficient amount of MGRs.

* Additionally, this issue is not reproducible anymore:
Fixes: https://tracker.ceph.com/issues/37964

* Fixed typo: TEUTHOLOFY_PY_REQS

Signed-off-by: Alfonso Martínez <almartin@redhat.com>
2019-01-30 13:05:02 +01:00
Patrick Donnelly
30aaa884bf
qa: test mds_max_caps_per_client conf
That the MDS will not let a client sit above mds_max_caps_per_client caps.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-29 15:16:31 -08:00
Patrick Donnelly
ef46216d8d
mds: recall caps incrementally
As with trimming, use DecayCounters to throttle the number of caps we recall,
both globally and per-session.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-29 15:16:30 -08:00
Patrick Donnelly
7fa1e3c37f
mds: remove cache drop asok command
`cache drop` is a long running command that will block the asok interface
(while the tell version does not). Attempting to abort the command with ^C or
equivalents will simply cause the `ceph` command to exit but won't stop the
asok command handler from waiting for the cache drop operation to complete.

Instead, just allow the tell version.

Fixes: http://tracker.ceph.com/issues/38020
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-23 06:48:58 -08:00
Matt Benjamin
d4c4082cca
Merge pull request #25774 from yehudasa/wip-rgw-tiering-3
rgw: rados tiering
2019-01-22 12:42:21 -05:00
Patrick Donnelly
47a2c0da21
Merge PR #26012 into master
* refs/pull/26012/head:
	qa: add test that down fs does not ERR
	mon/MDSMonitor: skip offline ERR for down fs

Reviewed-by: Douglas Fuller <dfuller@redhat.com>
2019-01-19 17:21:42 -08:00
Patrick Donnelly
cae0756639
Merge PR #25973 into master
* refs/pull/25973/head:
	qa: use simpler fs fail to bring fs down
	MDSMonitor: add fs fail command

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Douglas Fuller <dfuller@redhat.com>
2019-01-19 17:18:08 -08:00
Patrick Donnelly
f046f14f4a
Merge PR #25971 into master
* refs/pull/25971/head:
	qa: test hex dump_inode
	pybind/ceph_argparse: accept int with non-decimal base

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-19 17:17:04 -08:00
Patrick Donnelly
6e1d7c4b39
qa: use simpler fs fail to bring fs down
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-18 23:37:17 -08:00
Patrick Donnelly
cabefdeba0
qa: add test that down fs does not ERR
Also fix other test cases to not rely on health warning.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-17 18:14:10 -08:00
Patrick Donnelly
b62daf3b25
qa: test hex dump_inode
Fixes: http://tracker.ceph.com/issues/24721

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-17 07:38:12 -08:00
Sage Weil
236c8a4528 qa/tasks/ceph.py: bracket addrvecs in mon_host etc
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-16 08:33:03 -06:00
Tim Serong
fa6cd8ae65 mgr/orchestrator_cli: Add service and service-instance start/stop/reload
Signed-off-by: Tim Serong <tserong@suse.com>
2019-01-15 17:11:06 +11:00
Sage Weil
ff67c66ee6 Merge PR #25932 into master
* refs/pull/25932/head:
	qa/tasks/ceph: stop any split/merge activity before scrubbing

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2019-01-14 14:08:25 -06:00
Patrick Donnelly
d6ee4aa0fa
Merge PR #25843 into master
* refs/pull/25843/head:
	qa: fix damage expectation setting
	qa: fix loop variable reference

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2019-01-14 11:37:24 -08:00
Yehuda Sadeh
ff458b322d qa/rgw_multi: adjust structure for new zone config
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-14 08:50:23 -08:00
Lenz Grimmer
385e767f5f
Merge pull request #25876 from s0nea/wip-dashboard-rename-config-option-types
mgr/dashboard: config option type names update

Reviewed-by: Stephan Müller <smueller@suse.com>
2019-01-14 15:14:21 +01:00
Sage Weil
54c5202b74 qa/tasks/ceph: stop any split/merge activity before scrubbing
If there are leftover merges at the end of the run they can take a long
time to get through, blowing our timeout for (waiting for pgs to become
active and to stop splitting/merge) and scrubbing pgs.  Stop all of that
at the end of the run so that we don't have to wait so long.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-14 06:51:21 -06:00
Lenz Grimmer
73abdcfd82
Merge pull request #25913 from s0nea/wip-dashboard-test_full_health-fix
mgr/dashboard: Fix test_full_health test

Reviewed-by: Sebastian Wagner <swagner@suse.com>
2019-01-14 10:27:47 +01:00
Lenz Grimmer
9cbf2d9e09
Merge pull request #25905 from s0nea/wip-dashboard-osd-add-flag-fix
mgr/dashboard: Provide all four 'mandatory' OSD flags

Reviewed-by: Patrick Nawracay <pnawracay@suse.com>
Reviewed-by: Ricardo Dias <rdias@suse.com>
2019-01-14 10:27:29 +01:00
Sage Weil
c18a5d2e1c qa/tasks/rebuild_mondb: use monmap to properly name the mons
We used to rely on the monmap bootstrap code to magically create a valid
monmap with named mons because our old-style ceph.conf had mon_addr
values in each mon.foo section.  Instead, just feed it a real monmap
from pre-destruction.

In practice, a user can manually generate this monmap, or rename the
mons after the fact with --inject-monmap, or whatever.  Out of scope
for this test, so we just do the simplest thing to make the rebuild test
work.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-11 16:10:14 -06:00
Yehuda Sadeh
2d6b645d23 qa/rgw: support for storage classes
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-11 08:43:41 -08:00
Tatjana Dehler
146175a872 mgr/dashboard: Fix test_full_health test
Fixes: http://tracker.ceph.com/issues/37872
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2019-01-11 16:12:59 +01:00
Tatjana Dehler
613ea569f3 mgr/dashboard: Provide all four 'mandatory' flags
Fixes: https://tracker.ceph.com/issues/37857
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2019-01-11 10:52:06 +01:00
Lenz Grimmer
7fe4820c60
Merge pull request #25791 from rhcs-dashboard/36740-pool-stats-read-write-columns
mgr/dashboard: add columns to Pools table

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
2019-01-10 09:58:05 +01:00
Tatjana Dehler
17bdec41fc mgr/dashboard: use new config options type names
Use the new config option type names (given by the cluster) in the
dashboard.

Fixes: http://tracker.ceph.com/issues/37843
Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2019-01-10 08:08:54 +01:00
Yehuda Sadeh
83f7af473b qa/ragweed: change the way we determine which ragweed branch to use
- if force-branch, use that
 - otherwise:
    - read default-branch from client config
    - use suite branch or ceph branch if suite branch is not defined
    - if this branch is one of official releases (or master), prefix
      it with 'ceph-'

try to clone branch specified above, if failed (branch doesn't exist probably)
and not force-branch, use default-branch.
Also add an option to override ragweed repo.

Switched all force-branch from ragweed qa suite to default-branch.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2019-01-09 11:02:57 -08:00
Patrick Donnelly
360550b1ab
qa: fix damage expectation setting
The purge queue expectation was being ignored.

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

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-09 07:05:01 -08:00
Patrick Donnelly
909d0f1333
qa: fix loop variable reference
Otherwise the Mutation for Truncate is done on obj_id of the last iteration of the previous loop.

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

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-09 07:05:00 -08:00
Lenz Grimmer
26de63e5af
Merge pull request #25813 from rhcs-dashboard/updated-test-full-health
mgr/dashboard: updated health API test
2019-01-09 14:32:40 +01:00
alfonsomthd
d9404d6813 mgr/dashboard: add columns to Pools table
* Added columns:
Usage, Read bytes, Write bytes, Read ops, Write ops.

* TableKeyValueComponent:
Bugfix in method: _insertFlattenObjects

* Updated jest global mock:
Now window.getComputedStyle returns an object
that has getPropertyValue defined
(otherwise jest pool tests involving chart.js threw error). See:
https://developer.mozilla.org/en-US/docs/Web/API/Window/getComputedStyle

Fixes: https://tracker.ceph.com/issues/37717
Fixes: https://tracker.ceph.com/issues/34320

Signed-off-by: Alfonso Martínez <almartin@redhat.com>
2019-01-09 08:59:47 +01:00
Patrick Donnelly
03990857fa
Merge PR #25621 into master
* refs/pull/25621/head:
	mds: allow boot on read-only
	mds: setup readonly mode for PurgeQueue
	mds: return string_view for type str
	mds: add missing locks for PurgeQueue methods
	mds: delete on_error context on des

Reviewed-by: Zheng Yan <zyan@redhat.com>
2019-01-08 15:56:16 -08:00
Patrick Donnelly
4e4db26c9c
Merge PR #24556 into master
* refs/pull/24556/head:
	tools/cephfs: make 'cephfs-data-scan scan_links' update snaptable
	tools/cephfs: make 'cephfs-data-scan scan_links' update inotable

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-01-08 15:10:28 -08:00
Sage Weil
78070b96bf qa/tasks/radosbench: default to 64k writes
The default rados bench is 4MB writes, but this tends to fill up our
tiny test clusters.  Use 64KB instead.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-07 07:22:29 -06:00
alfonsomthd
dcf46cfe94 mgr/dashboard: updated health API test
Updated test_full_health to reflect changes in
mgr_map / mon_status payloads.

Signed-off-by: Alfonso Martínez <almartin@redhat.com>
2019-01-07 12:49:25 +01:00
Yan, Zheng
b593e5a881 tools/cephfs: make 'cephfs-data-scan scan_links' update snaptable
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2019-01-07 16:50:04 +08:00
Yan, Zheng
01089652d3 tools/cephfs: make 'cephfs-data-scan scan_links' update inotable
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
2019-01-07 16:49:31 +08:00
Sage Weil
251f667ef8 Merge PR #25009 into master
* refs/pull/25009/head:
	librbd: stringify locker name with get_legacy_str()
	osdc/Objecter: fix list_watchers addr rendering to match legacy
	test/crimson: disable unittest_seastar_messenger test
	msg/msg_types: encode entity_addr_t TYPE_ANY as TYPE_LEGACY for pre-nautilus
	client: make blacklist detection handle TYPE_ANY entries
	mon/OSDMonitor: maintain compat output for 'blacklist ls'
	client: maintain compat for {inst,addr}_str in status dump
	qa/tasks/ceph_manager: compare osd flush seq #'s as ints
	qa/suites/fs: make use of simple.yaml where appropriate
	qa/msgr: move msgr factet into generic re-usable dir
	crimson: fix monmap build for seastar
	doc/start/ceph.conf: trim the sample ceph.conf file
	doc/rados/operations: only describe --public-{addr,network} method for adding mons
	PendingReleaseNotes: deprecate 'mon addr'
	doc: fix some 'mon addr' references
	doc/rados/configuration: fix some 'mon addr' references
	doc/rados/configuration/network-config-ref: revise network docs somewhat
	doc/rados/configuration/network-config-ref: remove totally obsolete section
	qa/suites/rados: replace mon_seesaw.py task with a small bash script
	qa/suites/fs/upgrade: don't bind to v2 addrs
	qa/tasks/mon_thrash: avoid 'mon addr' in mon section
	mon/MonClient: disable ms_bind_msgr2 if NAUTILUS feature not set
	osd/OSDMap: maintain compat addr fields
	msg/msg_types: add get_legacy_str()
	mds/MDSMap.h: maintain compat addr field
	mon/MgrMap: maintain compat active_addr field
	mon/MonClient: reconnect to mon if it's addrvec appears to have changed
	qa/tasks/ceph.conf.template: increase mon_mgr_mkfs_grace
	msg/async/ProtocolV2: fill in IP for all peer_addrs
	msg/async: print all addrs on debug lines
	mon/MonMap: no noname- mon name prefix when for_mkfs
	ceph-monstore-tool: print initial monmap
	msg/async/ProtocolV2: advertise ourselves as a v2 addr when using v2 protocol
	msg/async: assert existing protocol matches current protocol
	msg/async: add missing modelines
	mon/MonMap: add missing modeline
	vstart.sh: put mon addrs in mon_host, not 'mon addr'
	msg/async: better debug around conn map lookups and updates
	mon/MonClient: dump initial monmap at debug level 10
	qa/standalone/osd/osd-fast-mark-down: use v1 addr w/ simplemessenger
	qa/tasks/ceph: set initial monmap features with using addrvec addrs
	monmaptool: add --enable-all-features option
	qa/tasks/ceph: only use monmaptool --addv if addr has [,:v]
	qa/tasks/ceph_manager: make get_mon_status use mon addr
	qa/tasks/ceph: keep mon addrs in ctx namespace
	mon/OSDMonitor: log all osd addrs on boot
	msg/simple: behave when v2 and v1 addrs are present at target
	mon/MonClient: warn if global_id changes
	msg/Connection: add warning/note on get_peer_global_id
	mds/MDSDaemon: clean up handle_mds_map debug output a bit
	qa/suites/rados/upgrade: debug mds
	mds/MDSRank: improve is_stale_message to handle addrvecs
	msg/async: make loopback detect when sending to one of our many addrs
	qa/suites/rados/upgrade: no aggressive pg num changes
	mon/OSDMonitor: require nautilus mons for require_osd_release=nautilus
	mon/OSDMonitor: require mimic mons for require_osd_release=mimic
	qa/suites/rados/thrash-old-clients: use legacy addr syntax in ceph.conf
	msg/async: preserve peer features when replacing a connection
	qa/tasks/ceph.py: move methods from teuthology.git into ceph.py directly; support mon bind * options
	mon/MonMap: adjust build_initial behavior for mkfs vs probe
	mon/MonMap: improve ambiguous addr behavior
	qa/suites/rados/upgrade: spread mons a bit
	qa/rados/thrash-old-clients: keep mons on separate hosts
	qa/standalone/mon/misc.sh: tweak test to be more robust
	qa/tasks/mon_seesaw: expect v1/v2 prefix in addr
	osd/OSDMap: fix is_blacklisted() check to assume type ANY
	mon/OSDMonitor: use ANY addr type for blacklisting
	mon/msg_types: TYPE_V1ORV2 -> TYPE_ANY
	qa/workunits/cephtool: fix blacklist test
	qa/suites/upgrade: install old version with only v1 addrs
	common/options: by default, bind to both msgr v1 and v2 addresses
	vstart.sh: add --msgr1, --msgr2, --msgr21 options
	msg/async/ProtocolV2: be flexible with server identity check
	msg/msg_types: fix entity_addrvec_t::parse() with null end arg
	qa/suites/rados/basic/msgr: no msgr2 addrs in initial monmaps
	qa/tasks/ceph: add 'mon_bind_addrvec' and 'mon_bind_msgr2' options
	monmaptool: add --addv argument to pass in addrvec directly
	qa/suites/rados/basic/msgr: do not use msgr2 with simplemessenger
	qa/suites/rados/basic/msgr: async is not experimental
	messages/MOSDBoot: fix compat with pre-nautilus
	mon/MonMap: allow v1 or v2 to be explicitly specified along with part
	msg/msg_types: allow parsing of IPs without assuming v1 vs v2
	msg/msg_types: default parse to v2 addrs
	msg: standarize on v1: and v2: prefixes for *all* entity_addr_t's
	vstart.sh: use msgr2 by default
	mon/MonMap: remove get_addr() methods
	ceph-mon: adjust startup/bind/join sequence to use addrs
	mon: use MonMap::get_addrs() (instead of get_addr())
	mon/MonClient: change pending_cons to addrvec-based map
	mon/MonMap: fix set_addr() caller, kill wrapper
	mon/MonMap: remove addr-based add()
	monmaptool: fix --add to do either legacy or msgr2+legacy
	monmaptool: clean up iterator use a bit
	mon/MonMap: handle ambiguous mon addrs by trying both legacy and msgr
	mon/MonMap: take addrvec for set_initial_members
	mon/MonMap: use addrvecs for test instances
	mon: pass addrvec via MMonJoin
	mon/MonmapMonitor: fix 'mon add' to populate addrvec
	mon/MonMap: addr -> addrvec
	msg/async/ProtocolV2: only update socket_addr if we learned our addr
	osd: go active even if mon only accepted our v1 addr
	test/msgr: add test for msgr2 protocol
	msg/async/ProtocolV2: share socket_addr and all addrs during handshake
	msg/async: print socket_addr for the connection
	msg/async: msgr2 protocol placeholder
	msg/async: move ProtocolV1 class to its own source file
	msg/async: keep listen addr in ServerSocket, pass to new connections
	msg/async/AsyncMessenger: fix set_addr_unknowns

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2019-01-04 13:42:09 -06:00