Commit Graph

97170 Commits

Author SHA1 Message Date
Ricardo Marques
ab8552f651
Merge pull request #27254 from ricardoasmarques/improve-iscsi-overview
mgr/dashboad: Improve iSCSI overview page

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
2019-04-05 10:02:47 +01:00
Sebastian Wagner
effc2a3962
Merge pull request #27292 from sebastian-philipp/kubejacker-simplify
src/script/kubejacker: Fix and simplify

Reviewed-by: Jeff Layton <jlayton@redhat.com>
2019-04-05 10:09:24 +02:00
Kefu Chai
736d396ee0
Merge pull request #27121 from sebastian-philipp/orchestrator-doc-cli-fix-service-add
doc/orchestrator: Fix broken bullet points

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-04-05 13:52:44 +08:00
Kefu Chai
dbc32e518a
Merge pull request #27379 from xenolinux/wip-fix-bug1
doc : fixed capitalization

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-04-05 13:48:58 +08:00
Kefu Chai
9a60ae4286
Merge pull request #26710 from cyx1231st/wip-seastar-msgr-protocolv2
crimson/net: lossy connection for ProtocolV2

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-04-05 11:40:01 +08:00
Kefu Chai
19a7ce5d57
Merge pull request #27383 from tchaikov/wip-cmake-libpython3
cmake: check for MAJOR.MINOR version of python3

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2019-04-05 11:30:13 +08:00
Yingxin Cheng
0e564dbf7a crimson/net: more compact code with then()
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
8ce92d0c3f crimson/net: clean auth related interfaces
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
fcae1e6b44 crimson/net: scoped enum for proto_type
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
feddee4e5c crimson/net: utilize lowres_system_clock with better performance
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
82583c121c crimson/net: set policy from peer_type
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
b6beb68885 crimson/net: fix Socket::read_exactly(0) case
Do not raise read_eof when try to read 0 bytes.

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
ef680adb59 test/crimson: fix perf_crimson_msgr to support v2
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
eb925f4944 test/crimson: msgr should wait before shutdown
test_concurrent_dispatch() should wait for server->wait() before
shutting down its messengers.

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
6a1dc38010 test/crimson: unit test for v2 protocol
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
153e4877ae crimson/net: message frame exchanges (lossy part)
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
02535f188a crimson/net: add keepalive timestamps to connection
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
ea9e0056bd crimson/net: protocolv2 handshake frame exchanges
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
44a9886b87 crimson/net: ProtocolV2 auth part
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
7bc2abfd3b crimson/net: dummy auth for protocol v2
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
a12875300a crimson/net: add AuthConnectionMeta to Protocol
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
604ea739de crimson/net: add peer_global_id to Connection
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:19 +08:00
Yingxin Cheng
ce95af1cb6 crimson/net: banner exchange and HelloFrame
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
7d71884bfb crimson/net: support frame read/write for ProtocolV2
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
5f5b60a056 crimson/net: add target_addr to SocketConnection
represent the peer target_addr accepted/connected

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
5d79386fbb crimson/net: add get_mytype() to Messenger
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
5e7d387caf crimson/net: add global_seq in ProtocolV2
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
e366e736ff crimson/net: skeleton code for ProtocolV2 logic
crimson ProtocolV2 class is following a state-machine design style:
* states are defined in ProtocolV2::state_t;
* call `execute_<state_name>()` methods to trigger different states;
* V2 logics are implemented in each execute_<state_name>() methods, and
  with explicit transitions to other states at the end of the execute_*;
* each state is associated with a write state defined in Protocol.h:
  - none: not allowed to send;
  - delay: messages can be queued, but will be delayed to send;
  - open: dispatch queued message/keepalive/ack;
  - drop: not send any messages, drop them all.

crimson ProtocolV2 is alike async ProtocolV2, with some considerations:
* explicit and encapsulated client/server handshake workflow.
* futurized-exception-based fault handling, which can interrupt protocol
  workflow at any time in each state.
* introduced SERVER_WAIT state, meaning to wait for peer-client's socket
  to reset or be replaced, and expect no further reads.
* introduced an explicit REPLACING state, async-msgr would be at the
  NONE state during replacing.

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
674a740877 crimson/net: apple-to-apple server async-msgr
The simplest async-msgr server which will have the same behavior with
crimson-msgr server for apple-to-apple performance test.

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
42b66ac99b test/crimson: improved perf tool for crimson-msgr
New features:
* --jobs: start multiple client messengers from core #1 ~ #jobs;
* --core: can assign server core to get away from busy client cores;
* --rounds: a client will send <rounds>/<jobs> messages;

Improved:
* Better configuration report;
* Report individual client results plus a summary;
* Validate if CPU number is sufficient before running;
* Sleep 1 second while connecting, so it won't hurt performance;
* Simplify client logic and bug fixes;

Removed unecessary features:
* finish_decode() for MOSDOp;
* keepalive ratio;

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
f11e9b87a1 crimson/net: fix messenger creation
sharded data structures should only be allocated in core#0, or the
program will hang during exit.

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
1e5852215a crimson/net: create SocketConnection based on address type
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
e8ef8f2ce1 crimson/net: use entity_addrvec_t::front() inside messenger
Do not expect legacy-addr in order to bind v2 address.

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
5779e4119a crimson/net: added msgr2 setting for SocketConnection
Provide entrypoint for the future ProtocolV2 class.

Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
32ad076ceb crimson/net: implement factory method of Socket
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 11:21:18 +08:00
Yingxin Cheng
9282d1a5d2 crimson/net: introduce SocketFRef
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 10:48:50 +08:00
Yingxin Cheng
2ab8b741d3 crimson/net: introduce protocol-level abstraction
Signed-off-by: Yingxin Cheng <yingxincheng@gmail.com>
2019-04-05 10:48:50 +08:00
Kefu Chai
d1e83082b4 rpm: install python%{python3_pkgversion}-devel on el7
as RHEL 7.7 support a native python3.6, we cannot hardwire to python3.4
on RHEL7/CentOS7 anymore.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-04-05 10:16:25 +08:00
Boris Ranto
8b3f0d5bcc cmake: check for MAJOR.MINOR version of python3
We can only check for MAJOR.MINOR version of python3 since
FindPython3Libs does not support checking for MAJOR.MINOR.PATCH version
of python3. We also need to make sure we use the PYTHON3 versions of
these variables.

This should fix a regression introduced by c961e00.

Signed-off-by: Boris Ranto <branto@redhat.com>
2019-04-05 10:09:58 +08:00
Patrick Donnelly
050004ce2c
Merge PR #27266 into master
* refs/pull/27266/head:
	cephfs-shell: Fix hidden files and directories list by ls command

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-04-04 15:36:14 -07:00
Ricardo Marques
1efcdf3000
Merge pull request #27380 from ricardoasmarques/fix-iscsi-target-submission
mgr/dashboard: Fix iSCSI target submission

Reviewed-by: Tiago Melo <tmelo@suse.com>
2019-04-04 23:35:14 +01:00
Patrick Donnelly
f7786d6cf5
Merge PR #27198 into master
* refs/pull/27198/head:
	vstart: generate environment script suitable for sourcing
	cephfs-shell: fix mode of script in tree

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-04-04 14:24:38 -07:00
Ricardo Marques
d63f206310 mgr/dashboard: Fix iSCSI target submission
cdIsInGroup should not be included in the request
and username/password should be an empty string
(instead of null)

Fixes: https://tracker.ceph.com/issues/39110

Signed-off-by: Ricardo Marques <rimarques@suse.com>
2019-04-04 21:31:59 +01:00
Patrick Donnelly
27df199891
Merge PR #27373 into master
* refs/pull/27373/head:
	doc: Add usage for shortcuts command in cephfs-shell

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-04-04 12:52:55 -07:00
Patrick Donnelly
f18eccb668
Merge PR #27303 into master
* refs/pull/27303/head:
	mds: add Octopus cephfs feature bit
	mds: verify current release has a cephfs feature bit
	mds: add cephfs feature bit for Nautilus
	mon: generalize and refactor lambda use
	qa: test featureful client with mimic base
	qa: remove obsolete snap upgrade tests

Reviewed-by: Zheng Yan <zyan@redhat.com>
2019-04-04 12:42:16 -07:00
Patrick Donnelly
901bb7cd04
Merge PR #27238 into master
* refs/pull/27238/head:
	mds: update projected_version when upgrading snaptable

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-04-04 12:40:27 -07:00
Patrick Donnelly
66a2276da3
Merge PR #26881 into master
* refs/pull/26881/head:
	mds: remove SimpleLock::replicate_relax()
	mds: avoid check session connection's features when issuing caps

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
2019-04-04 12:39:08 -07:00
Ricardo Marques
ab0ac43982 mgr/dashboard: Log gateway_name on iscsi_client
Signed-off-by: Ricardo Marques <rimarques@suse.com>
2019-04-04 20:15:03 +01:00
Ricardo Marques
c988a44f06 mgr/dashboard: Display number of sessions on iSCSI overview page
Signed-off-by: Ricardo Marques <rimarques@suse.com>
2019-04-04 20:15:03 +01:00
Ricardo Marques
b7870c8051 mgr/dashboard: Adds 'tcmu-runner' to the 'user:rbd' backstore descr
Signed-off-by: Ricardo Marques <rimarques@suse.com>
2019-04-04 20:15:03 +01:00