Commit Graph

205 Commits

Author SHA1 Message Date
Ricardo Dias
3013d7ac8a
qa/tasks/mgr/dashboard: rbd: snapshot create/delete tests
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-04-13 15:58:47 +01:00
Ricardo Dias
8264e93458
qa/tasks/mgr/dashboard: rbd: image deletion test
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-04-13 15:58:47 +01:00
Ricardo Dias
fa7cac8158
mgr/dashboard: rbd: image disk usage implementation
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-04-13 15:58:47 +01:00
Ricardo Dias
3ab7612d97
qa/tasks/mgr/dashboard: rbd: asynchronous image create test
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-04-13 15:58:46 +01:00
Ricardo Dias
77c676ca6f
qa/tasks/mgr/dashboard: rbd: new image list format
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-04-13 15:58:46 +01:00
Mohamad Gebai
fb638381b2 mgr/iostat: add self-test
Signed-off-by: Mohamad Gebai <mgebai@suse.com>
2018-04-12 00:26:24 -04:00
Patrick Nawracay
e4a0b12abf mgr/dashboard: Implement RGW proxy
This implementation is basically a Rados Gateway reverse proxy.  It
additionally takes care of the authentication to the Rados Gateway, but to use
it you will have to be authenticated against the dashboards RESTful API.

The corresponding credentials can be configured using the following commands:

    dashboard set-rgw-api-secret-key <secret-key>

    dashboard set-rgw-api-access-key <access-key>

Signed-off-by: Patrick Nawracay <pnawracay@suse.com>
2018-04-11 12:26:42 +02:00
Lenz Grimmer
34232b347b
Merge pull request #21022 from sebastian-philipp/dashboard_get_range
mgr/dashboard: Refactor multiple duplicates of `get_rate()`

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
2018-04-11 12:22:00 +02:00
Lenz Grimmer
f0614a8d4e
Merge pull request #20920 from sebastian-philipp/dashboard_v2-erasure-code-profile
mgr/dashboard: Add ErasureCodeProfile controller

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Joao Eduardo Luis <joao@suse.de>
2018-04-11 12:19:40 +02:00
Sage Weil
b0fe734c21 qa/tasks/mgr/test_failover: fix for id -> name rename in mgr metadata
This was changed by 428236de8b

Signed-off-by: Sage Weil <sage@redhat.com>
2018-04-09 21:48:40 -05:00
Sebastian Wagner
012be1dc86 qa/tasks/mgr/dashboard: Imroved JSON validation
Refactored `OsdTest` to make use of `self.assertSchema()`

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-04-09 16:42:33 +02:00
Stephan Müller
c60da7bb1f mgr/dashboard: Pool backend changes
As needed by the UI.

Signed-off-by: Stephan Müller <smueller@suse.com>
2018-04-06 17:41:28 +02:00
Sebastian Wagner
7b6a45cc8c mgr/dashboard: Add ErasureCodeProfile controller
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-04-06 17:40:03 +02:00
Ricardo Dias
5a861f5fb1
Merge pull request #20870 from rjfd/wip-dashboard-tasks
mgr/dashboard: asynchronous task support

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-03-28 08:27:51 +01:00
zouaiguo
4840e899f1 [mgr/dashboard] add image id to rbd info instead of block_name_prefix
when create images use data_pool parameter, such as:
rbd create -p pool1 -s 1G --data-pool pool2  image1

then get image info from mgr use request http://192.7.7.36:7000/rbd_pool_data/pool1
we got the response:
[{"parent_name": "", "parent_pool": 18446744073709551615, "name": "image1", "num_objs": 256, "block_name_prefix": "rbd_data.14.f561643c986", "obj_size": 4194304, "features": 189, "features_name": "fast-diff, layering, exclusive-lock, deep-flatten, object-map, data-pool", "order": 22, "size": 1073741824}]

notice:
since block_name_prefix is deprecated,
from block_name_prefix we can not get image id(the real id is ''f561643c9869')
we need add image id to rbd info instead block_name_prefix

Python 2.7.5 (default, Jun 17 2014, 18:11:42)
[GCC 4.8.2 20140120 (Red Hat 4.8.2-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import rados
>>> import rbd
>>> RADOS_NAME = 'client.admin'
>>> cluster_name="ceph"
>>> cluster_handle = rados.Rados(name=RADOS_NAME, clustername=cluster_name, conffile='')
>>> cluster_handle.connect()
>>> ioctx = cluster_handle.open_ioctx("pool1")
>>> image_inst = rbd.Image(ioctx, "image1")
>>> image_inst.stat()
{'parent_name': '', 'parent_pool': 18446744073709551615L, 'num_objs': 256L, 'block_name_prefix': u'rbd_data.14.f561643c986', 'obj_size': 4194304L, 'order': 22, 'size': 1073741824L}
>>> image_inst.id()
u'f561643c9869'

after fix:

[root@tfg36 site-packages]# curl http://192.7.7.36:7000/rbd_pool_data/pool1
[{"parent_name": "", "parent_pool": 18446744073709551615, "name": "image1", "num_objs": 256, "block_name_prefix": "rbd_data.14.f561643c986", "obj_size": 4194304, "features": 189, "id": "f561643c9869", "features_name": "fast-diff, layering, exclusive-lock, deep-flatten, object-map, data-pool", "order": 22, "size": 1073741824}]

Signed-off-by: zouaiguo <zou.aiguo@zte.com.cn>
2018-03-28 10:14:42 +08:00
Ricardo Dias
067b86eb42
mgr/dashboard: added tasks info to summary controller
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-27 14:08:47 +01:00
Lenz Grimmer
d5e54fda5c
Merge pull request #21024 from s0nea/wip-dashboard-return-features-list
mgr/dashboard: Convert the RBD feature names to a list of strings

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
2018-03-27 11:45:54 +02:00
Lenz Grimmer
914faf2c1e
Merge pull request #21004 from s0nea/wip-dashboard-skip-datapool-testcase
mgr/dashboard: skip data pool testcase for none-bluestore clusters

Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Reviewed-by: Ricardo Dias <rdias@suse.com>
2018-03-27 11:43:18 +02:00
Sebastian Wagner
7a7a17caa9 mgr/dashboard: New API tests for perf_couters
Added OSD and MDS tests.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-26 17:16:41 +02:00
Ricardo Dias
a392e612cc
Merge pull request #21007 from rjfd/wip-dashboard-fix-py3
mgr/dashboard: fix dashboard python 3 support

Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-26 10:59:17 +01:00
Tatjana Dehler
33e15ecd39 mgr/dashboard: convert RBD features to a list of strings
Until now the API returns the features provided by an RBD as one comma
separated string. It's more usable for the frontend to receive a list
of strings instead.

Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2018-03-26 09:41:56 +02:00
Sebastian Wagner
cbee371958 mgr/dashboard: Add Teuthology test for /api/pool/_info
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-23 16:40:18 +01:00
Sebastian Wagner
dd18675e4f mgr/dashboard: Minor tweak to DashboardTestCase._request
Don't fall through silently.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-23 16:40:18 +01:00
Sebastian Wagner
e6c1056ad5 mgr/dashboard: Add create() to Pool controller
Also:

* Added tests.
* Renamed `DashboardTest` to `PoolTest`.
* Added `delete()`.

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-23 16:40:18 +01:00
Ricardo Dias
d101b33bc7 qa/tasks/mgr/dashboard: Fix login expires too soon
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-23 11:30:16 +01:00
Tatjana Dehler
075102468b mgr/dashboard: skip 'test_create_rbd_in_data_pool' without bluestore
Skip the test case 'test_create_rbd_in_data_pool' only if the cluster
does not support bluestore, otherwise run the test. The Ceph mgr
provides the information if the cluster supports bluestore or not, so
the test will be skipped depending on the current cluster.

Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2018-03-23 11:11:27 +01:00
Ricardo Dias
25c75a952d
mgr/dashboard: fix dashboard python 3 support
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-22 15:56:20 +00:00
Ricardo Dias
aa205a6731
mgr/dashboard: renamed dashboard_v2 to dashboard
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-16 07:23:08 +00:00
Ricardo Dias
ed291d9e4d
mgr/dashboard: remove dashboard module
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-16 07:23:04 +00:00
Tiago Melo
a2033e0845 mgr/dashboard_v2: fix test_perf_counters_mgr_get
Now that we can obtain perf counters for the mgr, we need to assert that we get
more than 0 counters and that they have the desired structure.

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

Signed-off-by: Tiago Melo <tmelo@suse.com>
2018-03-15 12:50:58 +00:00
Lenz Grimmer
78022e13e7
Merge pull request #20751 from s0nea/wip-mgr-dashboard_rbd_add
mgr/dashboard_v2: Add RBD create functionality to the Python backend

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Ricardo Marques <rimarques@suse.com>
2018-03-14 15:57:32 +01:00
Tatjana Dehler
5056cbacbf mgr/dashboard: Add RBD create functionality
This commit adds a basic RBD create functionality to the REST API. It enables
the POST request of the http://<host>:<port>/api/rbd API endpoint.

The commit adds also related tests.

Signed-off-by: Tatjana Dehler <tdehler@suse.com>
2018-03-14 10:38:43 +01:00
Tiago Melo
e8a1e267af mgr/dashboard_v2: add mgr to the list of perf counters
Signed-off-by: Tiago Melo <tmelo@suse.com>
2018-03-13 15:21:43 +00:00
Ricardo Dias
3efc1a834e
mgr/dashboard: Pool controller implementation and tests
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-12 11:43:48 +00:00
Kefu Chai
a5123004ff
Merge pull request #20778 from p-na/wip-mgr-fix-dashboard-backend-tests
mgr/dashboard: Fix backend tests for newer CherryPy versions

Reviewed-by: Ricardo Dias <rdias@suse.com>
2018-03-09 10:24:00 +08:00
Sebastian Wagner
f3d6067658 mgr/dashboard_v2: removed unused code that broke teuthology
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
2018-03-07 18:18:31 +01:00
Patrick Nawracay
45b9174191 mgr/dashboard: Fix backend tests for newer CherryPy versions
The backend test run by `run-backend-api-tests.sh` fails for CherryPy
versions 13.x and 14.x.

Signed-off-by: Patrick Nawracay <pnawracay@suse.com>
2018-03-07 13:45:52 +01:00
Ricardo Dias
966fe3672e
qa/tasks/mgr/dashboard_v2: implementation of backend API tests
We moved the dashboard_v2 test cases that required a real ceph cluster
to run into qa/tasks/mgr with the necessary adaptations.
These tests can now be run in teuthology using the cephfs_test_runner
task.

Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-05 13:07:18 +00:00
Ricardo Dias
86264d4b02
qa/tasks/mgr: move test initialization to setUpClass method
With this change, we avoid the disabling/enabling of the ceph-mgr module
being tested for each test function declared in each test case. Now
the ceph-mgr module being tested is disabled/enabled only once for each
test case.

Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-03-05 13:07:18 +00:00
Kefu Chai
ba82060def qa/tasks/mgr: correct the log message
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-02-11 14:25:37 +08:00
Kefu Chai
52bf90bb10
Merge pull request #20047 from jcsp/wip-prometheus-qa
qa: add new prometheus test to rados/mgr suite

Reviewed-By: Nathan Cutler <ncutler@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-01-25 23:43:07 +08:00
John Spray
d9a47181c4 mgr: add health checks for failed modules
Signed-off-by: John Spray <john.spray@redhat.com>
2018-01-24 13:08:20 -05:00
John Spray
f95b079c21 qa/mgr: add test for command execution errors
Signed-off-by: John Spray <john.spray@redhat.com>
2018-01-24 13:08:20 -05:00
John Spray
e2c68d5e25 qa: assign prometheus ports during selftest
This was throwing IOError("Port 9283 not free on '::'",)
when trying to serve, since merging https://github.com/ceph/ceph/pull/19744

It's because the standbys (on the same node as the active) are
now trying to listen too.

Fixes: https://tracker.ceph.com/issues/22755
Signed-off-by: John Spray <john.spray@redhat.com>
2018-01-23 10:23:39 +00:00
John Spray
c05d96330d
Merge pull request #19744 from jan--f/mgr-prometheus-standby-mondown
pybind/mgr/prometheus: add StandbyModule and handle failed MON cluster

Reviewed-by: John Spray <john.spray@redhat.com>
2018-01-22 13:29:48 +00:00
Jan Fajerski
4a45b02539 qa/tasks/mgr: add test_prometheus; smoke tests for prometheus module
Signed-off-by: Jan Fajerski <jfajerski@suse.com>
2018-01-22 13:21:45 +01:00
John Spray
c64c9ff00d qa: configure zabbix properly before selftest
Even though the selftest routine doesn't care about
the settings, we should set them to avoid emitting
nasty log/health messages when enabling the module.

Fixes: http://tracker.ceph.com/issues/22514
Signed-off-by: John Spray <john.spray@redhat.com>
2017-12-21 08:28:55 -05:00
John Spray
4fb3025682 qa: fix mgr _load_module helper
I inadvertently broke this with the latest change
to the module ls output.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-11-02 07:42:56 -04:00
John Spray
05e648be6a qa: expand mgr testing
Some extra coverage of the dashboard, including its standby
redirect mode and the publishing of URIs.

Also invoking the command_spam mode of the selftest module.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-11-01 08:21:42 -04:00
John Spray
d96a59e74b qa/mgr: fix influx/prometheus test names
This was a typo: they were swapped around.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-10-11 17:00:01 +01:00
John Spray
99352ceced qa: add mgr module selftest task
The module self test commands give us a chance to
catch any other ceph changes that change something
that a module was relying on reading.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-09-27 14:20:22 -04:00
John Spray
28cb4bb2e6 qa/tasks/mgr: regression test for 21260
(aka http://tracker.ceph.com/issues/21260)

Fixes: http://tracker.ceph.com/issues/21260
Signed-off-by: John Spray <john.spray@redhat.com>
2017-09-08 15:45:40 +02:00
John Spray
f695a0e30f qa: s/REQUIRE_MGRS/MGRS_REQUIRED/ for consistency
Signed-off-by: John Spray <john.spray@redhat.com>
2017-04-20 15:00:31 +01:00
John Spray
636fc40d90 qa: additions to mgr.test_failover
Reproducers for recent fixes:
http://tracker.ceph.com/issues/19407
http://tracker.ceph.com/issues/19258

Signed-off-by: John Spray <john.spray@redhat.com>
2017-04-20 15:00:31 +01:00
Sage Weil
c01f2ee0e2 move ceph-qa-suite dirs into qa/ 2016-12-14 11:29:55 -06:00