Commit Graph

144 Commits

Author SHA1 Message Date
Kefu Chai
5ee1fd2c32 doc: fix typos
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-09-21 12:41:42 +08:00
Lenz Grimmer
01c2ea52c1
Merge pull request #24128 from ricardoasmarques/wip-optional-user-password
mgr/dashboard: User password should be optional

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
2018-09-19 16:44:51 +02:00
Ricardo Marques
49ba4a7b84 mgr/dashboard: User password should be optional
Fixes: https://tracker.ceph.com/issues/36031

Signed-off-by: Ricardo Marques <rimarques@suse.com>
2018-09-19 13:49:22 +01:00
Sage Weil
3aa8005050 Merge PR #24109 into master
* refs/pull/24109/head:
	doc: update docs for device management
	mgr: make devicehealth always-on
	mgr/devicehealth: do not create metrics pool on get-device-metrics
	mgr/devicehealth: converge OPTIONS and DEFAULTS
	mgr/devicehealth: squelch health warnings for unused devices
	mgr/devicehealth: show-health-metrics -> get-health-metrics

Reviewed-by: John Spray <john.spray@redhat.com>
2018-09-19 07:33:32 -05:00
Rick Chen
4abb79f159 mgr/diskprediction: add prototype diskprediction module
This module is written by Rick Chen <rick.chen@prophetstor.com> and
provides both a built-in local predictor and a cloud mode that queries
a cloud service (provided by ProphetStor) to predict device failures.

Signed-off-by: Rick Chen <rick.chen@prophetstor.com>
Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-17 08:20:57 -05:00
Sage Weil
3e791d1f9e doc: update docs for device management
Move this out of mgr section and into rados operations.

Leave a placeholder for failure prediction, which is still a work in
progress.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-14 14:06:41 -05:00
Sage Weil
53cb6ac0d4 mgr/devicehealth: show-health-metrics -> get-health-metrics
Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-14 12:43:58 -05:00
Lenz Grimmer
e03d228ab0
Merge pull request #24030 from LenzGr/mgr-dashboard-documentation
doc: Updated Mgr Dashboard documentation

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-09-12 16:01:29 +02:00
John Spray
0551d0e14b
Merge pull request #23497 from noahdesu/insights
mgr/insights: insights reporting module

Reviewed-by: John Spray <john.spray@redhat.com>
2018-09-11 15:56:10 +01:00
John Spray
34e82cb436
Merge pull request #23464 from wido/influx-optimize
mgr/influx: Use Queue to store points which need to be written

Reviewed-by: John Spray <john.spray@redhat.com>
2018-09-11 15:16:12 +01:00
Lenz Grimmer
44be910c30 doc: Updated Mgr Dashboard documentation
Fixed a typo, added a note about the embedding of Grafana dashboards
still being WIP.

Signed-off-by: Lenz Grimmer <lgrimmer@suse.com>
2018-09-11 15:43:46 +02:00
Lenz Grimmer
4c61c67fa5 doc: Updated Mgr Dashboard feature description, added references
Reworded the description of the user/role management feature, clarified
that it can be configured on both the CLI and the WebUI. Added labels for
referencing the user/role management and SSL configuration sections.

Signed-off-by: Lenz Grimmer <lgrimmer@suse.com>
2018-09-11 14:12:04 +02:00
Sage Weil
84335576b7 Merge PR #23611 into master
* refs/pull/23611/head:
	mgr/devicehealth: fix exceptions
	doc/mgr/devicehealth: update docs
	mgr/devicehealth: leave health monitoring off by default
	mgr/devicehealth: add 'device monitoring {on,off}' commands
	mgr/devicehealth: 10m wakeup interval is sufficient
	mgr/devicehealth: scrape at scrape_interval intervals
	mgr/devicehealth: UTC everywhere
	mgr/devicehealth: fix sleep_interval configurable
2018-08-30 08:52:39 -05:00
Sage Weil
df71738d79 doc/mgr/devicehealth: update docs
- several new commands weren't documented

Signed-off-by: Sage Weil <sage@redhat.com>
2018-08-29 12:30:24 -05:00
Noah Watkins
b693af6b49 doc: clarify use of insights health pruning
Signed-off-by: Noah Watkins <nwatkins@redhat.com>
2018-08-21 16:48:19 -07:00
Kefu Chai
f7d452e8d1
Merge pull request #23558 from liewegas/wip-mgr-always-on
mgr: keep status, balancer always on
2018-08-22 00:18:30 +08:00
Wido den Hollander
25e7d31331
mgr/influx: Use Queue to store points which need to be written
This allows us to multiplex data being send to Influx as we have
a configurable amount of workers sending data to Influx.

The main bottleneck for the performance seems to be fetching all
the perf counters using this code:

    self.get_all_perf_counters()

On a larger cluster, for example 2000 OSDs this can take about 20s
where flushing to Influx only takes 5s.

A 2000 OSD cluster generates about 100k data points on every run,
prior to using a Queue these would all be send to Influx in series
in that took over 15 seconds to complete.

Python Six is being used in the code to make sure it's compatible
with both Python 2 and 3.

Signed-off-by: Wido den Hollander <wido@42on.com>
2018-08-21 14:06:46 +02:00
Sage Weil
a78d600e6b doc: move mgr/balancer to rados/operations/balancer
Signed-off-by: Sage Weil <sage@redhat.com>
2018-08-18 09:25:50 -05:00
Noah Watkins
226bfe7477 doc: add insights module documentation
Signed-off-by: Noah Watkins <nwatkins@redhat.com>
2018-08-16 15:29:46 -07:00
Patrick Nawracay
7340e70d7f mgr/dashboard/backend: API to manage dashboard settings
Enables to change (set/unset) values of settings of the dashboard using
the REST API.

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

Signed-off-by: Patrick Nawracay <pnawracay@suse.com>
2018-08-10 11:32:25 +02:00
John Spray
d903240eed mgr: add Orchestrator.available method + CLI
The CLI `status` method tells you what backend
is selected, and also gives the backend
an opportunity to complain if something
seems wrong with its configuration.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-08-06 16:22:30 +01:00
John Spray
2e6ac9a43d doc: add general documentation on orchestrator
Signed-off-by: John Spray <john.spray@redhat.com>
2018-08-06 16:22:30 +01:00
John Spray
1fecff0e2d doc: add page for Rook module
This is pretty sparse because users don't really
interact with the module, they interact with other
modules that use it.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-08-06 16:22:30 +01:00
Volker Theile
670522ee31 mgr/dashboard: RGW proxy can't handle self-signed certificates
Fixes tracker.ceph.com/issues/24677

Signed-off-by: Volker Theile <vtheile@suse.com>
2018-08-03 08:48:05 +02:00
Ricardo Dias
77cdb2dccf
Merge pull request #23224 from votdev/rest_client_timeout
mgr/dashboard: Set timeout in RestClient calls

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
2018-08-01 10:02:09 +01:00
Sage Weil
f09a87f902 doc/mgr/devicehealth: document devicehealth module
Signed-off-by: Sage Weil <sage@redhat.com>
2018-07-31 14:08:53 -05:00
Volker Theile
2312839198 mgr/dashboard: Set timeout in RestClient calls
Set a default timeout of 45 seconds to all REST client calls. This can be customized via 'ceph dashboard set-rest-requests-timeout <seconds>'. Currently the REST client is only used by the RGW controller.

Signed-off-by: Volker Theile <vtheile@suse.com>
2018-07-27 14:03:06 +02:00
John Spray
061ffa508e
Merge pull request #22792 from jcsp/wip-mgrmodule-none-docs
mgr: improve docs for MgrModule methods
2018-07-24 10:36:44 +01:00
John Spray
4fddb181de doc/mgr: add docs for missing functions
Some functions had docstrings but were
not linked into plugins.rst, some needed
more text added.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-07-23 22:02:51 +01:00
John Spray
6ca387f275 doc: update mgr plugin page for remote calls
Signed-off-by: John Spray <john.spray@redhat.com>
2018-07-20 13:07:17 -04:00
Wido den Hollander
21fbfc9c3a
mgr/dashboard: Add option to disable SSL
Although is preferred and should be enabled by default users might
want to disable SSL as the dashboard might be running behind a proxy
which terminates the SSL.

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

Signed-off-by: Wido den Hollander <wido@42on.com>
2018-07-11 10:49:22 +02:00
Sage Weil
6dbf8ad2ec Merge PR #22703 into master
* refs/pull/22703/head:
	doc/mgr: add doc for crash mgr module
	qa/suites/rados/mgr: Add test_crash
	qa/tasks/mgr: add test_crash, call from test_module_selftest
	qa/tasks/{ceph_manager.py,vstart_runner.py}: allow kwargs in raw_*
	mgr/pybind/crash: handle crashdumps

Reviewed-by: John Spray <john.spray@redhat.com>
2018-07-04 14:22:18 -05:00
John Spray
414d94ae42 doc/dashboard: don't advise mgr_initial_modules
This setting tends to confuse people, as it's only respected
on the very first startup of the cluster.  Instead, mention
it (with appropriate caveats) on the general mgr admin
page.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-07-03 09:48:56 +01:00
Dan Mick
eb1103e94d doc/mgr: add doc for crash mgr module
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2018-06-29 14:53:14 -07:00
Jos Collin
a703e22bc4 doc: s/doc/ref for dashboard urls
Replaced :doc: with :ref: as per https://github.com/ceph/ceph/pull/22750#discussion_r198895040.

Signed-off-by: Jos Collin <jcollin@redhat.com>
2018-06-29 20:19:56 +05:30
Jos Collin
1007a19b7e doc: Updated dashboard doc references
Signed-off-by: Jos Collin <jcollin@redhat.com>
2018-06-28 16:02:06 +05:30
Jos Collin
22f205718a doc: updated the overview and glossary for dashboard
* Updated the overview of dashboard to avoid many paragraphs,
some outdated statements, etc.
* Updated glossary, glossary references and urls
* Dropped unnecessary term *module* in possible places
* Unified the new dashboard name as *Ceph Manager Dashboard*

Signed-off-by: Jos Collin <jcollin@redhat.com>
2018-06-28 16:01:30 +05:30
Ricardo Dias
1538d570ad
doc/mgr/dashboard: user and role management documentation
Signed-off-by: Ricardo Dias <rdias@suse.com>
2018-06-26 12:28:54 +01:00
Jos Collin
72f14881ae doc/dashboard: fix formatting on Grafana instructions
The whole list was in a code block, instead of just the snippets.

Signed-off-by: Jos Collin <jcollin@redhat.com>
2018-06-26 09:10:15 +05:30
Sage Weil
37d20dfdc5 Merge PR #22661 into master
* refs/pull/22661/head:
	mgr: remove unused [get|set]_store_json fns

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Dan Mick <dmick@redhat.com>
2018-06-22 13:00:20 -05:00
Lenz Grimmer
c37c5dd43e
Merge pull request #22658 from joscollin/wip-doc-dashboard-numbers
doc: Fixed the wrong numbers in mgr/dashboard.rst

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
2018-06-21 15:21:12 +02:00
John Spray
62f90da7db mgr: remove unused [get|set]_store_json fns
These were little used helpers, now totally unused!

Signed-off-by: John Spray <john.spray@redhat.com>
2018-06-21 14:13:36 +01:00
Jos Collin
8b2cfef596 doc: Fixed the wrong numbers in mgr/dashboard.rst
Signed-off-by: Jos Collin <jcollin@redhat.com>
2018-06-21 17:37:44 +05:30
John Spray
7ed8bc0e41
doc/dashboard: fix formatting on Grafana instructions
The whole list was in a code block, instead of just the snippets.

Signed-off-by: John Spray <john.spray@redhat.com>
2018-06-21 11:31:19 +01:00
Dan Mick
d9cabf2b04 doc/mgr/plugins.rst: explain more about the plugin command protocol
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2018-06-19 16:45:06 -07:00
John Spray
c731f2a170 doc/mgr: note need for module.py file in plugins
This is kind of a kludgy thing but let's at least
document it!

Signed-off-by: John Spray <john.spray@redhat.com>
2018-06-19 10:19:06 +01:00
Patrick Nawracay
bd2196b6ca mgr/dashboard: Add token authentication to Grafana proxy
Enables token authentication for the Grafana proxy as additional option
to username/password authentication. The authentication method has to be
set, too.

    $ ceph dashboard set-grafana-api-token <token>	   # default: ''
    $ ceph dashboard set-grafana-api-auth-method <method>  # default: ''

Possible values for the authentication method are 'password' and
'token'.

Signed-off-by: Patrick Nawracay <pnawracay@suse.com>
2018-06-14 13:54:00 +02:00
Lenz Grimmer
7b3a7306b6
Merge pull request #21644 from p-na/grafana-proxy
mgr/dashboard: Grafana proxy backend

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
2018-06-06 12:17:31 +02:00
Patrick Nawracay
30b5d72d2d mgr/dashboard: Add Grafana proxy
Add the ability to connect the dashboard with a Grafana instance to
display graphs from Grafana incorporated into the dashboard.

Possible configuration options:

$ ceph dashboard set-grafana-api-host <host> # Default: 'localhost'
$ ceph dashboard set-grafana-api-port <port> # Default: 3000
$ ceph dashboard set-grafana-api-scheme <scheme> # Default: 'http'

The configuration can be checked using a GET request to the API endpoint
`/api/grafana/status`. It returns a JSON response in the following
format:

    {
	"available": False,
	"message": "<error message>",
    }

The message is not returned if Grafana is available.

The Grafana proxy is reachable through
`http(s)://<host>/api/grafana/proxy`.

Signed-off-by: Patrick Nawracay <pnawracay@suse.com>
2018-06-06 11:11:27 +02:00
Wido den Hollander
b7cc66e809
mgr/dashboard: Listen on port 7000 by default and not 8080
Port 8080 is a common alternative HTTP port used for web traffic.

The dashboard however uses SSL (which can not be turned off) and for
that purpose we should either use 8443.

Historically the dashboard would run on port 7000 so to keep this backwards
compatibility the dashboard should bind again on TCP 7000.

Signed-off-by: Wido den Hollander <wido@42on.com>
2018-06-05 16:55:45 +02:00