mgr/deepsea: check for inflight completions when starting event reader, cleanup logging and comments
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Unlike `config set`, `config-key set` does not take the <who>
argument.
This change removes it from mgr ssl setup.
Signed-off-by: Mehdi Abaakouk <sileht@sileht.net>
A Ceph Manager Orchestrator that uses a external REST API service to execute Ansible playbooks.
get_inventory implementation
Signed-off-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
Document how to use CLI through Orchestrator CLI
Signed-off-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
doc/orchestrator: Integrate CLI specification into the documentation
Reviewed-by: Alfredo Deza <adeza@redhat.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
This module provides integration between Ceph's orchestrator framework
and DeepSea, a Ceph deployment and management system built upon Salt.
Included so far are implementations of get_inventory() and
describe_service(). This allows `ceph orchestrator device ls`, `ceph
orchestrator service ls` and `ceph orchestrator service status` to
operate correctly.
To test, try:
# ceph mgr module enable orchestrator_cli
# ceph mgr module enable deepsea
# ceph orchestrator set backend deepsea
# ceph deepsea config-set salt_api_url <salt api url>
# ceph deepsea config-set salt_api_username <salt api username>
# ceph deepsea config-set salt_api_password <salt api shared secret>
# ceph orchestrator device ls
# ceph orchestrator service ls
Signed-off-by: Tim Serong <tserong@suse.com>
This section was removed accidentally by
331a826a9f. It offers a helpful configuration
variant to deal with mgr failovers.
Signed-off-by: Jan Fajerski <jfajerski@suse.com>
mgr/orchestrator: Add support for "ceph orchestrator service ls"
Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Reviewed-by: Tim Serong <tserong@suse.com>
Separate diskprediction local cloud from the diskprediction plugin.
Devicehealth invoke device prediction function related on the global
configuration "device_failure_prediction_mode".
Signed-off-by: Rick Chen <rick.chen@prophetstor.com>
The ServiceDescription object just holds a list of ServiceLocation
objects. Eliminate ServiceLocation and merge it into the
ServiceDescription class. Have describe_service return a list of
ServiceDescriptions.
Suggested-by: Tim Serong <tserong@suse.com>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
There's currently no way to enumerate the services that the
orchestrator backend knows about. Add a "service ls" command
that will list them with some basic info, subject to filters
given on the command line.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
* refs/pull/24925/head:
Avoid import _strptime failed
Avoid exception if remote plugin not enabled
Separate diskprediction local plugin from the diskprediction plugin
Reviewed-by: Sage Weil <sage@redhat.com>
Fixes: https://tracker.ceph.com/issues/36193
Enable API auditing with 'ceph dashboard set-audit-api-enabled true' (default is false). If you do not want to log the request payload, then disable it via 'set-audit-api-log-payload false' (default is true).
Example output:
2018-10-08 10:25:21.850994 mgr.x [INF] [DASHBOARD] from='https://[::1]:44410' path='/api/auth' method='POST' user='None' params='{"username": "admin", "password": "***", "stay_signed_in": false}'
Signed-off-by: Volker Theile <vtheile@suse.com>
Separate diskprediction local plugin from the diskprediction plugin.
Devicehealth invoke device prediction function related on the global
configuration "device_failure_prediction_mode".
Signed-off-by: Rick Chen <rick.chen@prophetstor.com>
* 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>
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>
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>
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>
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>
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>
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>
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>