]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 years agoceph-daemon: ceph/daemon-base:latest-master-devel 31507/head
Sage Weil [Sat, 9 Nov 2019 14:01:37 +0000 (08:01 -0600)]
ceph-daemon: ceph/daemon-base:latest-master-devel

The -devel one rebuilds daily, while latest-master rebuilds when
ceph-container.git changes.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31498 into master
Sage Weil [Sat, 9 Nov 2019 04:40:38 +0000 (22:40 -0600)]
Merge PR #31498 into master

* refs/pull/31498/head:
ceph-daemon: customize the bash prompt for shell + enter

Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge PR #31499 into master
Sage Weil [Sat, 9 Nov 2019 04:37:39 +0000 (22:37 -0600)]
Merge PR #31499 into master

* refs/pull/31499/head:
ceph-daemon: the 'ceph' command may not be installed

Reviewed-by: Michael Fritch <mfritch@suse.com>
5 years agoceph-daemon: the 'ceph' command may not be installed 31499/head
Sage Weil [Fri, 8 Nov 2019 21:36:49 +0000 (15:36 -0600)]
ceph-daemon: the 'ceph' command may not be installed

...even though there are legacy data dirs in /var/lib/ceph.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31500 into master
Sage Weil [Sat, 9 Nov 2019 03:12:13 +0000 (21:12 -0600)]
Merge PR #31500 into master

* refs/pull/31500/head:
ceph-daemon: set ssh public identity

Reviewed-by: Michael Fritch <mfritch@suse.com>
5 years agoMerge PR #31472 into master
Sage Weil [Fri, 8 Nov 2019 23:33:40 +0000 (17:33 -0600)]
Merge PR #31472 into master

* refs/pull/31472/head:
mon/MonMap: encode (more) valid compat monmap when we have v2-only addrs

Reviewed-by: Xiaoxi Chen <superdebuger@gmail.com>
5 years agoMerge PR #31471 into master
Sage Weil [Fri, 8 Nov 2019 22:46:02 +0000 (16:46 -0600)]
Merge PR #31471 into master

* refs/pull/31471/head:
mgr/DaemonServer: warn when we reject reports

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoceph-daemon: set ssh public identity 31500/head
Sage Weil [Fri, 8 Nov 2019 21:50:02 +0000 (15:50 -0600)]
ceph-daemon: set ssh public identity

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #31421 from alfredodeza/wip-bz1768523
Alfredo Deza [Fri, 8 Nov 2019 21:36:36 +0000 (16:36 -0500)]
Merge pull request #31421 from alfredodeza/wip-bz1768523

ceph-volume: allow to skip restorecon calls

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
Reviewed-by: Sebastien Han <shan@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
5 years agoceph-daemon: customize the bash prompt for shell + enter 31498/head
Sage Weil [Fri, 8 Nov 2019 20:17:17 +0000 (14:17 -0600)]
ceph-daemon: customize the bash prompt for shell + enter

[ceph: root@gnit /]#

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31493 into master
Sage Weil [Fri, 8 Nov 2019 19:28:45 +0000 (13:28 -0600)]
Merge PR #31493 into master

* refs/pull/31493/head:
ceph-daemon: 'profile ...' not 'allow profile ...'
mgr/ssh: 'profile ...' not 'allow profile ...'
mgr/orchestrator_cli: rearrange things a bit
doc/mgr/orchestrator_cli: remove irrelevant line
mgr/ssh: learn to deploy rbd-mirror daemons
mgr/orchestrator: add rbd-mirror commands and hooks
ceph-daemon: learn to deploy rbd-mirror daemon
mgr/ssh: handle lack of node hints more gracefully
mgr/ssh: factor out update_{rgw,mds} into common helper
mgr/ssh: fix update_rgw, update_mgr

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge PR #30890 into master
Patrick Donnelly [Fri, 8 Nov 2019 18:43:46 +0000 (10:43 -0800)]
Merge PR #30890 into master

* refs/pull/30890/head:
mgr: invoke plugin shutdown on SIG{TERM,INT} signals.
mgr/volumes: guard volume delete by waiting for pending ops
mgr/volumes: cleanup libcephfs handles when stopping
Revert "qa/suites/rados/mgr/tasks/module_selftest: whitelist mgr client getting backlisted"

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #31115 into master
Patrick Donnelly [Fri, 8 Nov 2019 18:41:47 +0000 (10:41 -0800)]
Merge PR #31115 into master

* refs/pull/31115/head:
mds: Reorganize class members in MDSTableClient header

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #31400 into master
Patrick Donnelly [Fri, 8 Nov 2019 18:06:08 +0000 (10:06 -0800)]
Merge PR #31400 into master

* refs/pull/31400/head:
mds: establish session with mgr only after added to FSMap
mds: do not register as a service daemon
mds: do not try to diagnose cause of MDSMap removal
mds: fix handling of initial MDS states
mds: remove unnecessary const qualifier
mds: cleanup type decl and map iteration
mds: define stream operator for mds_info_t

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agomds: establish session with mgr only after added to FSMap 31400/head
Patrick Donnelly [Wed, 6 Nov 2019 03:51:17 +0000 (19:51 -0800)]
mds: establish session with mgr only after added to FSMap

Note that we now sub to the mgrmap after init because the MgrClient
connection to the mgr is driven by receipt of the MgrMap.

This is important so that the MDS does not have metadata with the mgr
when the mons are ignoring the MDS otherwise due to CompatSet
incompatibilities.

Fixes: https://tracker.ceph.com/issues/41538
Fixes: https://tracker.ceph.com/issues/42635
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomds: do not register as a service daemon
Patrick Donnelly [Thu, 7 Nov 2019 07:07:20 +0000 (23:07 -0800)]
mds: do not register as a service daemon

This commit undoes the service daemon registration for the MDS. It doesn't look
absolutely necessary and it causes the MDS to be listed twice in the `ceph
versions` output:

    $ ceph versions
        ...
        "mds": {
            "ceph version v15.0.0-6915-g0143b904676 (0143b9046763ea1801efa8358a0c033ec862cea9) octopus (dev)": 3
        },
        "mds": {
            "unknown": 3
        },
        "overall": {
            "ceph version v15.0.0-6915-g0143b904676 (0143b9046763ea1801efa8358a0c033ec862cea9) octopus (dev)": 10,
            "unknown": 3
        }

Fixing that requires looking for duplicates or ignoring MDSs in the
service daemons when the mon processes `ceph versions`. I have a feeling
that it wasn't actually designed to be used by the MDS this way however.
Additionally, the reason for "unknown" version is because the metadata
sent to the mgr does not include "ceph_version".

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomds: do not try to diagnose cause of MDSMap removal
Patrick Donnelly [Wed, 6 Nov 2019 08:26:51 +0000 (00:26 -0800)]
mds: do not try to diagnose cause of MDSMap removal

The Monitors send an empty MDSMap to an MDS it is removing. The MDS
can't diagnose the cause. Instead suggest looking at the cluster/monitor
logs.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomds: fix handling of initial MDS states
Patrick Donnelly [Wed, 6 Nov 2019 03:39:59 +0000 (19:39 -0800)]
mds: fix handling of initial MDS states

Few things here:

- Make explicit the check for getting removed from the MDSMap. This was
  only done before by checking if MDS held a rank which does not check the
  case where a standby is removed from the FSMap.

- Use mds_info_t::dump to simplify various debug output.

- Add a few sanity asserts for invalid state transitions.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomds: remove unnecessary const qualifier
Patrick Donnelly [Wed, 6 Nov 2019 04:42:01 +0000 (20:42 -0800)]
mds: remove unnecessary const qualifier

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomds: cleanup type decl and map iteration
Patrick Donnelly [Wed, 6 Nov 2019 03:37:19 +0000 (19:37 -0800)]
mds: cleanup type decl and map iteration

This is a trivial refactor.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomds: define stream operator for mds_info_t
Patrick Donnelly [Wed, 6 Nov 2019 03:34:41 +0000 (19:34 -0800)]
mds: define stream operator for mds_info_t

This also cleans up the output to be more readable/useful in debug
output.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #29437 into master
Sage Weil [Fri, 8 Nov 2019 17:49:00 +0000 (11:49 -0600)]
Merge PR #29437 into master

* refs/pull/29437/head:
mgr/diskprediction_local: Reverted dependencies, added HGST models
mgr/diskprediction_local: Updated dependencies in ceph.spec.in, debian/control to match requirements.txt
mgr/diskprediction_local: Updated Red Hat developed prediction model. Updated module options to choose between Red Hat and ProphetStor models.
mgr/diskprediction_local: Updated prediction models to use only supported python packages.
mgr/diskprediction_local: Replaced old models and updated predictor.

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoceph-daemon: 'profile ...' not 'allow profile ...' 31493/head
Sage Weil [Fri, 8 Nov 2019 17:29:29 +0000 (11:29 -0600)]
ceph-daemon: 'profile ...' not 'allow profile ...'

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/ssh: 'profile ...' not 'allow profile ...'
Sage Weil [Fri, 8 Nov 2019 17:29:12 +0000 (11:29 -0600)]
mgr/ssh: 'profile ...' not 'allow profile ...'

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orchestrator_cli: rearrange things a bit
Sage Weil [Fri, 8 Nov 2019 17:26:49 +0000 (11:26 -0600)]
mgr/orchestrator_cli: rearrange things a bit

Group services together

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agodoc/mgr/orchestrator_cli: remove irrelevant line
Sage Weil [Fri, 8 Nov 2019 17:12:17 +0000 (11:12 -0600)]
doc/mgr/orchestrator_cli: remove irrelevant line

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/ssh: learn to deploy rbd-mirror daemons
Sage Weil [Fri, 8 Nov 2019 17:04:27 +0000 (11:04 -0600)]
mgr/ssh: learn to deploy rbd-mirror daemons

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/orchestrator: add rbd-mirror commands and hooks
Sage Weil [Fri, 8 Nov 2019 16:12:27 +0000 (10:12 -0600)]
mgr/orchestrator: add rbd-mirror commands and hooks

This is somewhat different from the other services in that the name is
basically unused: we have a single pool of rbd-mirror daemons for the
whole cluster.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoceph-daemon: learn to deploy rbd-mirror daemon
Sage Weil [Fri, 8 Nov 2019 16:46:45 +0000 (10:46 -0600)]
ceph-daemon: learn to deploy rbd-mirror daemon

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/ssh: handle lack of node hints more gracefully 31488/head
Sage Weil [Fri, 8 Nov 2019 16:29:17 +0000 (10:29 -0600)]
mgr/ssh: handle lack of node hints more gracefully

RuntimeError: Remote method threw exception: TypeError: object of type 'NoneType' has no len()

isn't friendly

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/ssh: factor out update_{rgw,mds} into common helper
Sage Weil [Fri, 8 Nov 2019 15:26:44 +0000 (09:26 -0600)]
mgr/ssh: factor out update_{rgw,mds} into common helper

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/ssh: fix update_rgw, update_mgr
Sage Weil [Fri, 8 Nov 2019 15:23:49 +0000 (09:23 -0600)]
mgr/ssh: fix update_rgw, update_mgr

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31467 into master
Sage Weil [Fri, 8 Nov 2019 16:10:46 +0000 (10:10 -0600)]
Merge PR #31467 into master

* refs/pull/31467/head:
ceph-daemon: Add basic unittest infrastructure and cmake integration
ceph-daemon: Move ceph-daemon executable to own directory

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoceph-daemon: Add basic unittest infrastructure and cmake integration 31467/head
Thomas Bechtold [Thu, 7 Nov 2019 16:47:02 +0000 (17:47 +0100)]
ceph-daemon: Add basic unittest infrastructure and cmake integration

To be able to write unittests, add a tox.ini (for testing in venvs)
and a first single test case as example.
Tests can be executed with eg:

$ tox

Or by running the usual:

$ ./run-make-check.sh

Signed-off-by: Thomas Bechtold <tbechtold@suse.com>
5 years agoceph-daemon: Move ceph-daemon executable to own directory
Thomas Bechtold [Thu, 7 Nov 2019 15:41:23 +0000 (16:41 +0100)]
ceph-daemon: Move ceph-daemon executable to own directory

Moving ceph-daemon into src/ceph-daemon/ makes it simpler to add extra
code (eg. tox.ini, README, unittests, ...) specific to ceph-daemon.
That way related files are in a single directory.

Signed-off-by: Thomas Bechtold <tbechtold@suse.com>
5 years agoMerge PR #31477 into master
Sage Weil [Fri, 8 Nov 2019 15:15:50 +0000 (09:15 -0600)]
Merge PR #31477 into master

* refs/pull/31477/head:
ceph-daemon: unmount osd data dir during `adopt`

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31478 into master
Sage Weil [Fri, 8 Nov 2019 13:22:59 +0000 (07:22 -0600)]
Merge PR #31478 into master

* refs/pull/31478/head:
ceph-daemon: add --skip-pull
ceph-daemon: add explicit pull at bootstrap start

Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge PR #31177 into master
Sage Weil [Fri, 8 Nov 2019 13:22:05 +0000 (07:22 -0600)]
Merge PR #31177 into master

* refs/pull/31177/head:
doc: update with zone bucket and straw2 addition

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31476 into master
Sage Weil [Fri, 8 Nov 2019 13:11:20 +0000 (07:11 -0600)]
Merge PR #31476 into master

* refs/pull/31476/head:
ceph-daemon: make mon container privileged

Reviewed-by: Michael Fritch <mfritch@suse.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
5 years agoceph-daemon: add --skip-pull 31478/head
Sage Weil [Fri, 8 Nov 2019 13:10:53 +0000 (07:10 -0600)]
ceph-daemon: add --skip-pull

It occurs to me there might be cases where the user *doesn't* want to pull
the latest image (e.g., because it is a partially disconnected enviroment,
and they know the image is already in the local registry).

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31464 into master
Sage Weil [Fri, 8 Nov 2019 13:08:46 +0000 (07:08 -0600)]
Merge PR #31464 into master

* refs/pull/31464/head:
ceph-daemon: help users find the shell/CLI too
ceph-daemon: enable the dashboard during bootstrap
ceph-daemon: add CLI helper to bootstrap

Reviewed-by: Paul Cuzner <pcuzner@redhat.com>
Reviewed-by: Kai Wagner <kwagner@suse.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge pull request #31479 from rishabh-d-dave/cv-dd-sync
Jan Fajerski [Fri, 8 Nov 2019 13:01:29 +0000 (14:01 +0100)]
Merge pull request #31479 from rishabh-d-dave/cv-dd-sync

ceph-volume: use fsync for dd command

5 years agoMerge pull request #29041 from jan--f/c-v-too-small-disks-unavailable
Jan Fajerski [Fri, 8 Nov 2019 12:52:45 +0000 (13:52 +0100)]
Merge pull request #29041 from jan--f/c-v-too-small-disks-unavailable

ceph-volume: reject disks smaller then 5GB in inventory

5 years agoMerge pull request #31260 from trociny/wip-42405
Jason Dillaman [Fri, 8 Nov 2019 12:35:41 +0000 (07:35 -0500)]
Merge pull request #31260 from trociny/wip-42405

rbd-mirror: removing non-primary trash snapshot

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #31188 from zy751713126/rbd_features
Jason Dillaman [Fri, 8 Nov 2019 12:35:05 +0000 (07:35 -0500)]
Merge pull request #31188 from zy751713126/rbd_features

librbd: features converting bitmask and string API

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #31457 from jschmid1/ssh_orch_dev_env
Sebastian Wagner [Fri, 8 Nov 2019 12:20:49 +0000 (13:20 +0100)]
Merge pull request #31457 from jschmid1/ssh_orch_dev_env

mgr/ssh: update ssh-orch bootstrap guide (Vagrantfile & docs)

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: do not show non-pool data in pool details (#31456)
Lenz Grimmer [Fri, 8 Nov 2019 11:36:22 +0000 (11:36 +0000)]
mgr/dashboard: do not show non-pool data in pool details (#31456)

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: Fix grafana dashboards (#31219)
Lenz Grimmer [Fri, 8 Nov 2019 11:08:11 +0000 (11:08 +0000)]
mgr/dashboard: Fix grafana dashboards (#31219)

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Jan Fajerski <jfajerski@suse.com>
5 years agoMerge pull request #31189 from bk201/wip-42075
Lenz Grimmer [Fri, 8 Nov 2019 10:58:38 +0000 (10:58 +0000)]
Merge pull request #31189 from bk201/wip-42075

Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoMerge pull request #31021 from sebastian-philipp/python-common-make-drive-selection
Sebastian Wagner [Fri, 8 Nov 2019 10:20:50 +0000 (11:20 +0100)]
Merge pull request #31021 from sebastian-philipp/python-common-make-drive-selection

python-common: Add drive selection

Reviewed-by: Joshua Schmid <jschmid@suse.de>
Reviewed-by: Kiefer Chang <kiefer.chang@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoceph-volume: use fsync for dd command 31479/head
Rishabh Dave [Fri, 8 Nov 2019 07:04:27 +0000 (12:34 +0530)]
ceph-volume: use fsync for dd command

fsync makes sure that data and metadata is actually written to device
being zapped before finishing.

Fixes: https://tracker.ceph.com/issues/39156
Signed-off-by: Rishabh Dave <ridave@redhat.com>
5 years agoceph-daemon: add explicit pull at bootstrap start
Sage Weil [Fri, 8 Nov 2019 03:43:37 +0000 (21:43 -0600)]
ceph-daemon: add explicit pull at bootstrap start

This is less confusing for users since the pull can be slow and the
uid/gid check is a weird thing to hang on for a long time.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoceph-daemon: unmount osd data dir during `adopt` 31477/head
Michael Fritch [Fri, 8 Nov 2019 00:13:18 +0000 (17:13 -0700)]
ceph-daemon: unmount osd data dir during `adopt`

Signed-off-by: Michael Fritch <mfritch@suse.com>
5 years agoceph-daemon: make mon container privileged 31476/head
Sage Weil [Thu, 7 Nov 2019 23:14:52 +0000 (17:14 -0600)]
ceph-daemon: make mon container privileged

libudev needs to be privileged in order to query the underlying hardware
devices, as reported by the 'ceph device ...' command set, and to scrape
smart metrics, etc.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoceph-daemon: help users find the shell/CLI too 31464/head
Sage Weil [Thu, 7 Nov 2019 15:23:22 +0000 (09:23 -0600)]
ceph-daemon: help users find the shell/CLI too

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoceph-daemon: enable the dashboard during bootstrap
Sage Weil [Thu, 7 Nov 2019 14:31:18 +0000 (08:31 -0600)]
ceph-daemon: enable the dashboard during bootstrap

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #31221 from weiyingze-git/patch
Jason Dillaman [Thu, 7 Nov 2019 20:25:03 +0000 (15:25 -0500)]
Merge pull request #31221 from weiyingze-git/patch

test: add test_remove_snap_ImageNotFound test case in remove snap part

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #31414 from cbodley/wip-qa-rgw-more-crypto-backend
Casey Bodley [Thu, 7 Nov 2019 19:15:29 +0000 (14:15 -0500)]
Merge pull request #31414 from cbodley/wip-qa-rgw-more-crypto-backend

qa/rgw: use 'testing' kms backend for other rgw subsuites

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
5 years agomon/MonMap: encode (more) valid compat monmap when we have v2-only addrs 31472/head
Sage Weil [Thu, 7 Nov 2019 18:54:00 +0000 (12:54 -0600)]
mon/MonMap: encode (more) valid compat monmap when we have v2-only addrs

If we have 1 or more mons with v2-only addrs, pre-nautilus clients can't
talk to them.  If there are more than 1 such mons in the map, they also
fail when loading the map because they expect the addrs to be unique. In
such situations, lie by giving them v1 addrs that are actually v2 ip:port
(so not actually valid).  Hopefully there are enough other mons that do
have v1 addrs that the clients can still connect.

Fixes: https://tracker.ceph.com/issues/42600
Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/DaemonServer: warn when we reject reports 31471/head
Sage Weil [Thu, 7 Nov 2019 18:51:04 +0000 (12:51 -0600)]
mgr/DaemonServer: warn when we reject reports

If this is triggered it can be disruptive, since we're marking the
connection down.  It points to a real bug, so better visibility is good
(e.g., failing the teuthology jobs).

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31398 into master
Sage Weil [Thu, 7 Nov 2019 16:58:46 +0000 (10:58 -0600)]
Merge PR #31398 into master

* refs/pull/31398/head:
pybind/mgr/pg_autoscaler: implement shutdown method

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
5 years agoMerge PR #31064 into master
Sage Weil [Thu, 7 Nov 2019 16:57:56 +0000 (10:57 -0600)]
Merge PR #31064 into master

* refs/pull/31064/head:
test: Test balancer module commands
mgr: Improve balancer module status
mgr: Release GIL before calling OSDMap::calc_pg_upmaps()

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge PR #30976 into master
Sage Weil [Thu, 7 Nov 2019 16:55:59 +0000 (10:55 -0600)]
Merge PR #30976 into master

* refs/pull/30976/head:
cmake: bump libceph-common SO version for compliance

Reviewed-by: Tim Serong <tserong@suse.com>
5 years agoceph-volume tests validate restorecon skip calls 31421/head
Alfredo Deza [Tue, 5 Nov 2019 16:51:35 +0000 (11:51 -0500)]
ceph-volume tests validate restorecon skip calls

Signed-off-by: Alfredo Deza <adeza@redhat.com>
5 years agoceph-volume util.system allow skipping restorecon calls
Alfredo Deza [Tue, 5 Nov 2019 16:51:16 +0000 (11:51 -0500)]
ceph-volume util.system allow skipping restorecon calls

Signed-off-by: Alfredo Deza <adeza@redhat.com>
5 years agoceph-volume: reject disks smaller then 5GB in inventory 29041/head
Jan Fajerski [Mon, 15 Jul 2019 08:33:45 +0000 (10:33 +0200)]
ceph-volume: reject disks smaller then 5GB in inventory

Volumes smaller than 5GB won't be created anyway. This also guards
against drives with size 0, as can happen in mdraid setups.

Fixes: http://tracker.ceph.com/issues/40776
Signed-off-by: Jan Fajerski <jfajerski@suse.com>
5 years agoMerge PR #31438 into master
Sage Weil [Thu, 7 Nov 2019 16:10:16 +0000 (10:10 -0600)]
Merge PR #31438 into master

* refs/pull/31438/head:
mgr/ssh: implement blink_device_light

Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoMerge PR #31462 into master
Sage Weil [Thu, 7 Nov 2019 15:41:59 +0000 (09:41 -0600)]
Merge PR #31462 into master

* refs/pull/31462/head:
mgr/ssh: remove superfluous parameters

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge PR #31445 into master
Sage Weil [Thu, 7 Nov 2019 15:41:19 +0000 (09:41 -0600)]
Merge PR #31445 into master

* refs/pull/31445/head:
ceph-daemon: set container_image during bootstrap

Reviewed-by: Michael Fritch <mfritch@suse.com>
5 years agoceph-daemon: add CLI helper to bootstrap
Sage Weil [Thu, 7 Nov 2019 14:17:46 +0000 (08:17 -0600)]
ceph-daemon: add CLI helper to bootstrap

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/ssh: implement blink_device_light 31438/head
Sage Weil [Wed, 6 Nov 2019 14:59:37 +0000 (08:59 -0600)]
mgr/ssh: implement blink_device_light

On my test box I get as far as

  NO_SUPPORT(153): SCSI VPD page 0x83 is not supported

because my hardware doesn't support this.  The same command works
on another box that does.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31443 into master
Sage Weil [Thu, 7 Nov 2019 13:55:43 +0000 (07:55 -0600)]
Merge PR #31443 into master

* refs/pull/31443/head:
ceph-daemon: fix 'version' field for legacy `ls`

Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoMerge PR #31458 into master
Sage Weil [Thu, 7 Nov 2019 13:55:14 +0000 (07:55 -0600)]
Merge PR #31458 into master

* refs/pull/31458/head:
ceph-daemon: Only run in the __main__ scope

Reviewed-by: Michael Fritch <mfritch@suse.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoceph-daemon: set container_image during bootstrap 31445/head
Sage Weil [Wed, 6 Nov 2019 20:49:12 +0000 (14:49 -0600)]
ceph-daemon: set container_image during bootstrap

Set the new cluster's container_image to match the image we bootstrapped
with.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #31463 into master
Sage Weil [Thu, 7 Nov 2019 13:49:49 +0000 (07:49 -0600)]
Merge PR #31463 into master

* refs/pull/31463/head:
ceph-daemon: switch default image

Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agomgr/diskprediction_local: Reverted dependencies, added HGST models 29437/head
Karanraj Chauhan [Wed, 6 Nov 2019 18:46:45 +0000 (13:46 -0500)]
mgr/diskprediction_local: Reverted dependencies, added HGST models

Removed pandas from requirements.txt, ceph.spec.in, and debian/control
because of installation issues in RHEL/CentOS.

Replaced pandas usages in RHDiskFailurePredictor with similar numpy
counterparts (e.g. structured array instead of dataframe)
Replaced joblib usages with pickle because older version of scikit-learn
did not list joblib as a dependency and so it wasnt getting installed.
Using joblib would have required specifying it as a separate dependency
in spec file and requirements.

Added HGST models for RHDiskFailurePredictor.

Signed-off-by: Karanraj Chauhan <kachauha@redhat.com>
5 years agomgr/diskprediction_local: Updated dependencies in ceph.spec.in, debian/control to...
Karanraj Chauhan [Wed, 30 Oct 2019 16:17:35 +0000 (12:17 -0400)]
mgr/diskprediction_local: Updated dependencies in ceph.spec.in, debian/control to match requirements.txt

Added pandas dependency to ceph.spec.in and debian/control.

In the spirit of "if it aint broke, dont fix it", I did NOT add
scikit-learn as a dependency in spec or control, because scikit-learn
was already a dependency in diskprediction_local, and so it should have
already have been taken care of.

Also in the same spirit, removed joblib dependency from requirements.txt
because scikit-learn depends on it and therefore joblib will get
installed when scikit-learn gets installed.

Signed-off-by: Karanraj Chauhan <kachauha@redhat.com>
5 years agomgr/diskprediction_local: Updated Red Hat developed prediction model. Updated module...
Karanraj Chauhan [Tue, 15 Oct 2019 15:30:52 +0000 (11:30 -0400)]
mgr/diskprediction_local: Updated Red Hat developed prediction model. Updated module options to choose between Red Hat and ProphetStor models.

predictor.py contains definition for the original ProphetStor developed model as well
as Red Hat developed model (using Backblaze dataset).
User can choose which model to use by passing either 'prophetstor' or 'redhat' to the
`Module`'s `predictor_model` config option.

Updated the disk health data formatting code in `Module` to include `user_capacity`,
`vendor`, etc fields that are used by the RHDiskFailurePredictor. These will simply
be ignored by the PSDiskFailurePredictor

Updated preprocessing in RH model to use the data passed from module directly instead
of restructuring again. Added logging instead of print statements.

Restructured pretrained models directory to accomodate both models files.

Signed-off-by: Karanraj Chauhan <kachauha@redhat.com>
5 years agomgr/diskprediction_local: Updated prediction models to use only supported python...
Karanraj Chauhan [Tue, 10 Sep 2019 15:20:45 +0000 (11:20 -0400)]
mgr/diskprediction_local: Updated prediction models to use only supported python packages.

Removed non-supported python packages from requirements.txt
Added scikit-learn based models, removed rgf-python based models.
Updated config.json and DiskPredictor.__preprocess for the same.
Also added manufacturer as argument to DiskPredictor.__preprocess

Updated manufacturer lookup - first check if available as smartctl field,
if not then try to infer from model name.
Updated predicted class to be the prediction for the most recent day in
time series data given.
Updated naming convention from "preprocessor" to "scaler".

Signed-off-by: Karanraj Chauhan <kachauha@redhat.com>
5 years agomgr/diskprediction_local: Replaced old models and updated predictor.
Karanraj Chauhan [Wed, 31 Jul 2019 20:53:02 +0000 (16:53 -0400)]
mgr/diskprediction_local: Replaced old models and updated predictor.

ProphetStor models are replaced with in-house developed models.
Preprocessors are also stored in addition to the prediction models.
Objects are now stored using joblib instead of pickle, as recommended by
scikit-learn docs.

"manufacturer-specific" models are used instead of "best-feature-match"
models. i.e., instead of models being trained (presumably) just based on what
features are available, models have been trained for each manufacturer.
This is because of variation in meaning and availibility of SMART
attributes across manufacturers.

Updated config.json, requirements.txt, and DiskFailurePredictor for these changes.

Signed-off-by: Karanraj Chauhan <kachauha@redhat.com>
5 years agoMerge PR #31448 into master
Sage Weil [Thu, 7 Nov 2019 13:27:16 +0000 (07:27 -0600)]
Merge PR #31448 into master

* refs/pull/31448/head:
ceph-daemon: make 'ls' log less noisy

Reviewed-by: Michael Fritch <mfritch@suse.com>
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Thomas Bechtold <tbechtold@suse.com>
5 years agoceph-daemon: switch default image 31463/head
Sage Weil [Thu, 7 Nov 2019 13:25:48 +0000 (07:25 -0600)]
ceph-daemon: switch default image

Use this until octopus is ready.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agomgr/ssh: remove superfluous parameters 31462/head
Joshua Schmid [Thu, 7 Nov 2019 12:44:20 +0000 (13:44 +0100)]
mgr/ssh: remove superfluous parameters

in _set_ssh_config and _clear_ssh_config

Signed-off-by: Joshua Schmid <jschmid@suse.de>
5 years agomgr/{dashboard,prometheus}: return FQDN instead of '0.0.0.0' (#31430)
Lenz Grimmer [Thu, 7 Nov 2019 12:18:39 +0000 (12:18 +0000)]
mgr/{dashboard,prometheus}: return FQDN instead of '0.0.0.0' (#31430)

Reviewed-by: Jan Fajerski <jfajerski@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/ssh: move and adapt documentation for ssh-orchestrator 31457/head
Joshua Schmid [Thu, 7 Nov 2019 09:33:26 +0000 (10:33 +0100)]
mgr/ssh: move and adapt documentation for ssh-orchestrator

Signed-off-by: Joshua Schmid <jschmid@suse.de>
5 years agomgr/dashboard: Use htmllint (#30998)
Lenz Grimmer [Thu, 7 Nov 2019 11:42:09 +0000 (11:42 +0000)]
mgr/dashboard: Use htmllint (#30998)

Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: Set iSCSI disk WWN and LUN number from the UI (#31056)
Lenz Grimmer [Thu, 7 Nov 2019 11:11:31 +0000 (11:11 +0000)]
mgr/dashboard: Set iSCSI disk WWN and LUN number from the UI (#31056)

Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
5 years agoceph-daemon: Only run in the __main__ scope 31458/head
Thomas Bechtold [Thu, 7 Nov 2019 09:50:04 +0000 (10:50 +0100)]
ceph-daemon: Only run in the __main__ scope

That makes unit testing easier to setup because the code is not loaded
when ceph-daemon gets imported. Instead it is only loaded when
executed.
For that, the parser also moved to a function instead of being on
module level.

Signed-off-by: Thomas Bechtold <tbechtold@suse.com>
5 years agomgr/ssh: adapt vagrantfile for ssh-orchestration bootstrap
Joshua Schmid [Thu, 7 Nov 2019 09:23:58 +0000 (10:23 +0100)]
mgr/ssh: adapt vagrantfile for ssh-orchestration bootstrap

Signed-off-by: Joshua Schmid <jschmid@suse.de>
5 years agoMerge pull request #31070 from sebastian-philipp/dashbaord-run-backend-zsh
Sebastian Wagner [Thu, 7 Nov 2019 09:17:33 +0000 (10:17 +0100)]
Merge pull request #31070 from sebastian-philipp/dashbaord-run-backend-zsh

mgr/dashboard: Fix zsh support in run-backend-api-tests.sh

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Patrick Seidensal <pseidensal@suse.com>
5 years agomgr/dashboard: do not show non-pool data in pool details 31456/head
Alfonso Martínez [Thu, 7 Nov 2019 09:15:30 +0000 (10:15 +0100)]
mgr/dashboard: do not show non-pool data in pool details

Fixes: https://tracker.ceph.com/issues/42674
Signed-off-by: Alfonso Martínez <almartin@redhat.com>
5 years agomgr/dashboard: fix e2e test failure for OSDs (#31451)
Volker Theile [Thu, 7 Nov 2019 09:04:13 +0000 (10:04 +0100)]
mgr/dashboard: fix e2e test failure for OSDs (#31451)

mgr/dashboard: fix e2e test failure for OSDs

Reviewed-by: Patrick Seidensal <pseidensal@suse.com>
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agotest/pybind: add features test case 31188/head
zhengyin [Mon, 21 Oct 2019 07:32:39 +0000 (15:32 +0800)]
test/pybind: add features test case

add features_to_string and features_from_string test case

Signed-off-by: Zheng Yin <zhengyin@cmss.chinamobile.com>
5 years agolibrbd: features converting bitmask and string API
zhengyin [Mon, 21 Oct 2019 07:28:00 +0000 (15:28 +0800)]
librbd: features converting bitmask and string API

Signed-off-by: Zheng Yin <zhengyin@cmss.chinamobile.com>
5 years agomgr/dashboard: fix e2e test failure for OSDs 31451/head
Kiefer Chang [Thu, 7 Nov 2019 04:11:21 +0000 (12:11 +0800)]
mgr/dashboard: fix e2e test failure for OSDs

When clicking a selected row, the row becomes unselected and the detail
component is hidden. Rearrange related tests by selecting the row only
once.

Fixes: https://tracker.ceph.com/issues/42671
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
5 years agoMerge pull request #31350 from chenpan1012/rbd_testcase
Jason Dillaman [Wed, 6 Nov 2019 23:43:41 +0000 (18:43 -0500)]
Merge pull request #31350 from chenpan1012/rbd_testcase

cls/rbd: add snapshot limit UINT64_MAX test case

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoceph-daemon: make 'ls' log less noisy 31448/head
Sage Weil [Wed, 6 Nov 2019 23:42:13 +0000 (17:42 -0600)]
ceph-daemon: make 'ls' log less noisy

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge branch 'master' into patch 31221/head
Jason Dillaman [Wed, 6 Nov 2019 23:43:08 +0000 (18:43 -0500)]
Merge branch 'master' into patch

5 years agoMerge pull request #31208 from weiyingze-git/master
Jason Dillaman [Wed, 6 Nov 2019 23:41:55 +0000 (18:41 -0500)]
Merge pull request #31208 from weiyingze-git/master

test:add test_remove_snap2 interface to remove  snap when it's protected

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agoceph-daemon: fix 'version' field for legacy `ls` 31443/head
Michael Fritch [Wed, 6 Nov 2019 17:35:51 +0000 (10:35 -0700)]
ceph-daemon: fix 'version' field for legacy `ls`

The `ls` command was reporting the git commit id instead of the ceph
version.

Signed-off-by: Michael Fritch <mfritch@suse.com>