Commit Graph

93752 Commits

Author SHA1 Message Date
Neha Ojha
a74129d26d qa/suites/upgrade/mimic-x: fix rhel runs
The following fragment was required for rhel on ovh
overrides:
    ansible.cephlab:
      skip_tags: entitlements,packages,repos

Since, this suite runs on smithi in our nightlies, we should not need
this.

Signed-off-by: Neha Ojha <nojha@redhat.com>
2019-01-03 13:39:30 -08:00
Alfredo Deza
8cb6de178e
Merge pull request #25674 from alfredodeza/wip-rm37442
ceph-volume normalize comma to dot for string to int conversions 

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
2019-01-03 13:44:06 -05:00
Patrick Donnelly
ee7d253494
Merge PR #24635 into master
* refs/pull/24635/head:
	test: add scrub control command tests
	mds: scrub abort/pause/resume/status control commands
	test: switch using "scrub start" tell interface to initiate scrub
	mds: introduce "scrub start" tell interface to initiate scrub
	mds: dump scrub formatted output when context completion
	mds: generate random scrub tag when empty
	mds: introduce C_ExecAndReply context completion class
	mds: use CInode::scrub_is_in_progress() wherever required

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Zheng Yan <zyan@redhat.com>
2019-01-03 10:15:31 -08:00
Sage Weil
e708b729cf msg/msg_types: encode entity_addr_t TYPE_ANY as TYPE_LEGACY for pre-nautilus
This is primarily for OSDMap's blacklist, which, starting with nautilus,
is populated by ANY addrs instead of LEGACY addrs.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:38 -06:00
Sage Weil
c378bd830a client: make blacklist detection handle TYPE_ANY entries
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:38 -06:00
Sage Weil
c4c511fd44 mon/OSDMonitor: maintain compat output for 'blacklist ls'
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:38 -06:00
Sage Weil
e09ca7b80b client: maintain compat for {inst,addr}_str in status dump
Add 'addr' field too.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:38 -06:00
Sage Weil
0d4c4db3c0 qa/tasks/ceph_manager: compare osd flush seq #'s as ints
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:38 -06:00
Sage Weil
8a3d90199d qa/suites/fs: make use of simple.yaml where appropriate
There's more needed than just ms_type=simple now.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:38 -06:00
Sage Weil
d518eb6cac qa/msgr: move msgr factet into generic re-usable dir
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:38 -06:00
Sage Weil
3b43e2a7b0 crimson: fix monmap build for seastar
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
b4e292ca9a doc/start/ceph.conf: trim the sample ceph.conf file
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
cdcb05765f doc/rados/operations: only describe --public-{addr,network} method for adding mons
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
ad39c086a0 PendingReleaseNotes: deprecate 'mon addr'
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
8e2fcae16e doc: fix some 'mon addr' references
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
1675cd5096 doc/rados/configuration: fix some 'mon addr' references
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
369dadea44 doc/rados/configuration/network-config-ref: revise network docs somewhat
These still could use a larger rewrite, but this is a bit better.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
bef7c62fe8 doc/rados/configuration/network-config-ref: remove totally obsolete section
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
16980bd12f qa/suites/rados: replace mon_seesaw.py task with a small bash script
The teuthology test did not like the change to remove 'mon addr' from
ceph.conf.  The standalone script is easier to test.

Note that it avoids mon names 'a', 'b', 'c' since the MonMap::build_initial
uses those.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
f857c70c9c qa/suites/fs/upgrade: don't bind to v2 addrs
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
caa3a82ada qa/tasks/mon_thrash: avoid 'mon addr' in mon section
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
f3ddb1c9b8 mon/MonClient: disable ms_bind_msgr2 if NAUTILUS feature not set
Do not try to bind to v2 addresses until all of the mons will know what
we are doing and will be able to advertise those addresses.

This avoids the possibility of corner cases where we bind to one thing
but advertise something different via the various cluster maps.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
ae8b0cd62a osd/OSDMap: maintain compat addr fields
Fixes b47d9135d5 and
9fb1e521c7.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
1aceb2d04b msg/msg_types: add get_legacy_str()
Render a pre-nautilus entity_addr_t string.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
51ede31d55 mds/MDSMap.h: maintain compat addr field
This avoids breaking anyone looking at a pre-nautilus dump.
Fixes ea1481d08d.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
ac82a0b3e8 mon/MgrMap: maintain compat active_addr field
This avoids breaking anyone looking at a pre-nautilus dump.  Fixes
7f787704cd.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
5cba1fb874 mon/MonClient: reconnect to mon if it's addrvec appears to have changed
This primarily kicks in if we connect to a mon's v1 address during the
initial probe and then discover that it has v2+v1.  It's a catch-all,
though, so that we'll reconnect to the (er, a) mon in any case where we
see it's addresses change.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
c4ae3554e1 qa/tasks/ceph.conf.template: increase mon_mgr_mkfs_grace
The grace starts with the monmap creation stamp, and ceph.py does a lot
of work between creating that map and actually starting daemons (e.g.,
preparing all of the osd devices), leading to occasional MGR_DOWN errors.
Double the grace period.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
6f42b656d4 msg/async/ProtocolV2: fill in IP for all peer_addrs
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
283c8d3d34 msg/async: print all addrs on debug lines
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
c078c81031 mon/MonMap: no noname- mon name prefix when for_mkfs
Teuthology no longer puts mon addr in ceph.conf, and instead sets the
mon_host option globally.  That means a different path for
ceph-monstore-tool rebuild to regenerate the monmap, and the generated
map's names need to match teuthologies.

This change fixes the teuthology rebuild test because that tests's mon
names happen to also be 'a', 'b', 'c'.  It's fragile, but it works.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
c29b1d7246 ceph-monstore-tool: print initial monmap
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
4582de3ef3 msg/async/ProtocolV2: advertise ourselves as a v2 addr when using v2 protocol
We may have learned our address from a v1 connection, so myaddrs() is
a v1 addr like [v1:1.2.3.4:123/4392].  When we connect to someone using
msgr2, we should advertise ourselves as a v2 address, or else we risk
confusing everyone because we are a "v1" endpoint using the v2 protocol.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
69408b57e0 msg/async: assert existing protocol matches current protocol
If we are (potentially) replacing a connection, assert that the protocol
version matches.  If it doesn't, something very weird is going on!

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
87b89bd613 msg/async: add missing modelines
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
54efc4517c mon/MonMap: add missing modeline
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
b1aec88c9f vstart.sh: put mon addrs in mon_host, not 'mon addr'
Notably, mon addr won't take an addrvec, while everything else will.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
d151ece3af msg/async: better debug around conn map lookups and updates
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
395947ae40 mon/MonClient: dump initial monmap at debug level 10
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
b92be2ca9b qa/standalone/osd/osd-fast-mark-down: use v1 addr w/ simplemessenger
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
a19b8e5b14 qa/tasks/ceph: set initial monmap features with using addrvec addrs
The --add option will only infer a bare IP to include a v2 addr if the
NAUTILUS feature is there, and that isn't normally present on a freshly
generate monmap.  Add it if we are doing addrvecs!

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
a274e772f2 monmaptool: add --enable-all-features option
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
241d402d7c qa/tasks/ceph: only use monmaptool --addv if addr has [,:v]
Otherwise, we want the --add path, which has the logic to infer ports,
v2+v1, etc.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
ac2430a43d qa/tasks/ceph_manager: make get_mon_status use mon addr
We don't have the 'mon addr' config property any more.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
545df766be qa/tasks/ceph: keep mon addrs in ctx namespace
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
27b7867d83 mon/OSDMonitor: log all osd addrs on boot
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
a1cebd00a9 msg/simple: behave when v2 and v1 addrs are present at target
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
609c6d76bc mon/MonClient: warn if global_id changes
Shouldn't happen!

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
50f5e328d7 msg/Connection: add warning/note on get_peer_global_id
This field isn't populated for loopback connections because the msgr
doesn't have any insight into what global_id its user has.

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00
Sage Weil
d64cac170e mds/MDSDaemon: clean up handle_mds_map debug output a bit
The old wording was misleading!

Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-03 11:17:31 -06:00