Kefu Chai [Tue, 17 Dec 2019 11:48:45 +0000 (19:48 +0800)]
stop.sh: do not try to contact mon unless cluster is up
otherwise "ceph mon metadata" will hang, when we try to stop an
already-stopped cluster. and `vstart_runner.py` always calls `stop.sh`
before setting up a cluster.
Sage Weil [Mon, 16 Dec 2019 19:26:14 +0000 (13:26 -0600)]
Merge PR #32212 into master
* refs/pull/32212/head:
rpm/cephadm: start description and summary with capital letter
rpm/cephadm: move HOMEDIR to /var/lib and make scriptlets idempotent on SUSE
Reviewed-by: Sage Weil <sage@redhat.com> Reviewed-by: Thomas Bechtold <tbechtold@suse.com>
Sage Weil [Mon, 16 Dec 2019 15:29:30 +0000 (09:29 -0600)]
qa/suites/upgrade: all upgrades to octopus on ubuntu only
We cannot do a traditional upgrade (install old package, start cluster,
install new package, ...) because nautilus is el7-only and octopus is
el8-only.
Sage Weil [Mon, 16 Dec 2019 16:04:13 +0000 (10:04 -0600)]
Merge PR #32198 into master
* refs/pull/32198/head:
cephadm: Fix Python2.7 isssue
cephadm: fix how uid/gid is determined
cephadm: add sample configuration for prometheus
cephadm: support deployment of prometheus
Nathan Cutler [Thu, 12 Dec 2019 13:31:24 +0000 (14:31 +0100)]
rpm/cephadm: move HOMEDIR to /var/lib and make scriptlets idempotent on SUSE
Also introduce a cephadm group. Since the cephadm package does not
require ceph-common, the ceph group is not available to be used.
Drop the -r option to useradd, because cephadm does not qualify as a system
user.
Finally, fix the SUSE RPM build. SUSE RPM builds using "osc" implement a check
that compares the cephadm package's "before" and "after" file lists, to enforce
idempotency of the scriptlets. The "userdel cephadm" in the %postun breaks this
check, so omit it from the SUSE RPM builds.
Jason Dillaman [Mon, 16 Dec 2019 14:46:15 +0000 (09:46 -0500)]
rbd-mirror: ensure deterministic ordering of method calls
The mock tests will require method calls in a known order. Previously
different environments could evaluate the parameters in different
orders resulting in out-of-order method calls.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Mykola Golub [Thu, 12 Dec 2019 14:38:08 +0000 (14:38 +0000)]
librbd: explicitly specify mode on mirror image enable
- don't use journaling feature to chose the mode;
- provide new API function mirror_image_enable2;
- return back the old behavior to automatically enable/disable
journaling feature on enabling/disabling image mirroring.
Paul Cuzner [Thu, 12 Dec 2019 21:52:19 +0000 (10:52 +1300)]
cephadm: fix how uid/gid is determined
The uid/gid is determined by looking at file ownership. It
was looking at /etc/ceph, but on current builds this is owned by root so switched to using /var/lib/ceph which
is the homedir of the ceph account.
Paul Cuzner [Thu, 12 Dec 2019 04:29:19 +0000 (17:29 +1300)]
cephadm: support deployment of prometheus
Initial support to enable cephadm to deploy
monitoring containers like prometheus. This
patch adds support for prometheus. It is the callers
responsibility to provide a valid prometheus.yml
file passed within the --config-json parameter.
Sage Weil [Sun, 15 Dec 2019 01:43:08 +0000 (19:43 -0600)]
Merge PR #32158 into master
* refs/pull/32158/head:
cephadm: fix exception when no time sync is running
cephadm: properly extract osd fsid during adoption
cephadm: do ceph-volume activate+deactivate as part of systemd unit
ceph-daemon: behave with no /etc/ceph/ceph.conf
Reviewed-by: Jan Fajerski <jfajerski@suse.com> Reviewed-by: Sebastian Wagner <swagner@suse.com>
Stephan Müller [Fri, 15 Nov 2019 12:27:52 +0000 (13:27 +0100)]
mgr/dashboard: Add binary min and max validators
Adds simple validators that resemble the min and max validators for
numbers.
As a binary size (the string) has first be converted into bytes
(the number) to validate against some other number and in case of an
error the other number want's to be converted into a size to display,
the whole process needs a bunch of conversion, but these validators take
care of all that.
Fixes: https://tracker.ceph.com/issues/38287 Signed-off-by: Stephan Müller <smueller@suse.com>
Stephan Müller [Tue, 19 Nov 2019 08:28:26 +0000 (09:28 +0100)]
mgr/dashboard: Make form modal more flexible
Now any input type is supported and the special binary type which will
use the cd-binary input and automatically format the binary size into
bytes when submitting.
Now any field can have custom validators and error messages.
The form will fallback on predefined error messages if not configured.
It will use the error messages provided by the binary min and max
validators. It still provides the error message for a required field.
Fixes: https://tracker.ceph.com/issues/38287 Signed-off-by: Stephan Müller <smueller@suse.com>
Stephan Müller [Wed, 6 Nov 2019 16:47:47 +0000 (17:47 +0100)]
mgr/dashboard: CephFS quota management
Now both CephFS quotas can be changed with a validation against the next
tree maximum in the file tree, that prevents setting the quotas in a way
that would not be usable.
Fixes: https://tracker.ceph.com/issues/38287 Signed-off-by: Stephan Müller <smueller@suse.com>
Kotresh HR [Thu, 5 Dec 2019 05:53:00 +0000 (11:23 +0530)]
stop: Unmount cephFS volumes
When stop.sh is run while the cephFS is mounted,
mount processes are retained and can't be killed.
And also the mount and df commands hang after this.
This patch unmounts the mounted volumes cleanly.
Tatjana Dehler [Wed, 4 Dec 2019 13:43:24 +0000 (14:43 +0100)]
mgr/dashboard: reactivate dashboard test suites
Reactivate the dashboard test suites that were commented
out in https://github.com/ceph/ceph/pull/30864 because
https://tracker.ceph.com/issues/41538 has been resolved
in the meanwhile.
Fixes: https://tracker.ceph.com/issues/42652 Signed-off-by: Tatjana Dehler <tdehler@suse.com>
It adds a new component to notify the user about the expiration
of the password. The banner is shown on top of the page and can
be dismissed by the user.
Fixes: https://tracker.ceph.com/issues/40329 Signed-off-by: Tatjana Dehler <tdehler@suse.com>
Tatjana Dehler [Fri, 13 Sep 2019 12:08:39 +0000 (14:08 +0200)]
mgr/dashboard: add password expiration date
Add a 'pwd_expiration_date' field to the User object to be able
to set password expiration date per user.
There are two options to set a password expiration date for a
user:
1. Set the 'USER_PWD_EXPIRATION_SPAN' setting. If defined
the expiration date of the password will be calculated
automatically based on the given value. It will also be
updated automatically when the user changes the password.
2. Set an expiration date by setting the 'pwdExpirationDate'
field when creating a user.
Add two more settings in addition: USER_PWD_EXPIRATION_WARNING_1
and USER_PWD_EXPIRATION_WARNING_2. These two settings are
defining the amount of days to notify the user that his password
will expiration soon.
It's not possible to set the 'pwd_expiration_date' field to a
date in the past.
If the password of a user is already expired he is no longer
allowed to log into the dashboard.
Fixes: https://tracker.ceph.com/issues/40329 Signed-off-by: Tatjana Dehler <tdehler@suse.com>
Patrick Donnelly [Fri, 13 Dec 2019 05:07:32 +0000 (21:07 -0800)]
Merge PR #31255 into master
* refs/pull/31255/head:
mds/MDSDaemon: make con disposable before passing message to asok
mds/SessionMap: interpret bare id as a valid filter
mds: get rid of unused send_command_reply helpers
mds: remove old handle_command machinery
mds/MDSRank: remove C_ExecAndReply helpers
mds/MDSRank: too many words about op_tracker
mds: convert 'cache drop'
mds: convert 'damage ls' and 'damage rm'
mds: convert '{session,client} config'
mds: convert 'scrub {start,abort,pause,resume,status}'
mds: convert 'session ls' and 'client ls'
mds: convert 'session evict' and 'session kill'
mds: convert 'heap' and 'cpu_profiler'
mds: convert 'exit', 'respawn'
mds/MDSDaemon: remove old duplicated tell commands
mds: send tell commands to asok infrastructure
common/admin_socket: switch tell queue to cref_t (from ref_t)
mds: switch asok calls over to call_async interface
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>