Jason Dillaman [Wed, 13 Jan 2021 18:50:41 +0000 (13:50 -0500)]
librbd/migration: add support for reading from QCOW2 snapshots
Tweak the IO read path to now utilize the L1 table associated with
the specified snapshot id. This will cause the IO to properly read
from the specific snapshot.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Wed, 13 Jan 2021 02:19:22 +0000 (21:19 -0500)]
librbd/migration: decode QCOW2 snapshot metadata during open
This will allow the migration state machine to build matching RBD
snapshots to mimic the QCOW2 snapshots. The next commit will add the
ability to read from a snapshot.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Tue, 12 Jan 2021 20:35:49 +0000 (15:35 -0500)]
librbd/migration: basic QCOW2 format handler
The initial implementation does not support backing files, compression,
snapshots, (deprecated) encryption, external data files, nor L2 subcluster
allocation. The former three features will be added in a future commit.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Jason Dillaman [Tue, 12 Jan 2021 03:12:27 +0000 (22:12 -0500)]
librbd/migration: basic QCOW v1 format handler
The initial implementation does not support backing files, compression, nor
(deprecated) encryption. The former two features will be added in a future commit.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
Sebastian Wagner [Mon, 11 Jan 2021 11:02:25 +0000 (12:02 +0100)]
Merge pull request #38615 from adk3798/haproxy-stuff
mgr/cephadm: HA for RGW endpoints
Reviewed-by: Daniel-Pivonka <dpivonka@redhat.com> Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com> Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
* refs/pull/38698/head:
client: fix the cache size check
client: add more detail info for the _put_inode debug log
client: skip putting inodes if map is empty
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Greg Farnum [Fri, 8 Jan 2021 22:17:07 +0000 (22:17 +0000)]
osd: osdmap: do not assert target_v when encoding in stretch mode
Again, this was an overly-strict safety check. It passed testing against
(even old) userspace clients, but the kernel clients don't have all the
same feature bits and so when encoding for them, we see lower target_v values
and assert out erroneously.
As before, monitors and OSDs that actually need to interpret this data
are gated on cluster entry, so we don't need this safety check here.
Daniel-Pivonka [Mon, 26 Oct 2020 18:34:39 +0000 (14:34 -0400)]
cephadm: HA for RGW endpoints
Cephadm deploying keepalived and HAproxy for providing High availability for RGW endpoints
Fixes: https://tracker.ceph.com/issues/45116 Signed-off-by: Daniel-Pivonka <dpivonka@redhat.com> Signed-off-by: Adam King <adking@redhat.com> Signed-off-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
* refs/pull/38664/head:
qa: bump scrub timeout
qa: move cephfs_ec_profile under cephfs
qa: do not use ec pools for default data pool
qa: skip check-counters for light workloads
qa: remove empty multimds suite
qa: merge multimds:verify with fs:verify
qa: merge multimds:thrash to fs:thrash
qa: remove dead multimds:basic
qa: move functional multimds tests to fs:functional
qa: migrate multimds workloads to fs:workloads
qa: only run valgrind on cephfs daemons
qa: stop testing filestore on cephfs suites
qa: load data pools before deleting fs
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com> Tested-by: Patrick Donnelly <pdonnell@redhat.com>
* refs/pull/38693/head:
qa: execute scrubs only on rank 0
client: print debug information about resolved MDS
qa: let Client::resolve_mds lookup the rank
Varsha Rao [Tue, 8 Dec 2020 18:16:27 +0000 (23:46 +0530)]
mgr/volumes/nfs: remove 'ganesha-' prefix from cluster id
Orchestrator defines service name as "<service_type>.<service_id>". The ganesha
common config object name in orchestrator is "conf-<service_name>". Volume's
nfs plugin deploys nfs-ganesha clusters with 'ganesha' prefixed to cluster id
and common config object. It can cause unecessary issues in rook and cephadm.
So let's remove the prefix.
Kefu Chai [Thu, 7 Jan 2021 15:43:26 +0000 (23:43 +0800)]
doc: build mon_command_api.rst using a homebrew extension
so we can build the command doc using ReadTheDoc infra, without adding
the generated rst file to the source repo.
before this change, all the commands are ordered alphabetically. after
this change, command docs are generated by two directives, and are
ordered separately. we could restructure the directives and merge them.
but let's leave it for a future change if this is important.
for more details on writing sphinx directives, see
https://www.sphinx-doc.org/en/master/extdev/markupapi.html and
https://docutils.sourceforge.io/docs/howto/rst-directives.html
cephadm: silence "Failed to evict container" log msg
Right now, we're printing some evil looking messages in the log:
```
systemd[1]: Starting Ceph mgr.node2.ankmgz for ...
podman[32354]: Error: no container with name or ID ceph-... found: no such container
bash[32363]: Error: Failed to evict container: "": Failed to find container "ceph-..." in state: no container with name or ID ceph-... found: no such container
bash[32363]: Error: no container with ID or name "ceph-..." found: no such container
````
Also, the unit.run command already removes the container. No need
for ExecStartPre to do the same.
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
We should not link the dev guide form the user documentation. The user docs are already convoluted and hard to follow. Adding the dev guide is not helpful.
Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
... and retire entries i.e. flush to OSD.
Support writesame, compare_and_write, discard
and invalidate IO operations with tests.
Signed-off-by: Lisa Li <xiaoyan.li@intel.com> Signed-off-by: Mahati Chamarthy <mahati.chamarthy@intel.com> Signed-off-by: Changcheng Liu <changcheng.liu@intel.com>
Neha Ojha [Wed, 6 Jan 2021 15:37:47 +0000 (15:37 +0000)]
qa/tasks/cephadm.py: do not create rbd pool by default
rados/cephadm/smoke* does not use the install task and the adjust-ulimits
dependency is met as a part of it. create_rbd_pool needs adjust-ulimits,
so for now we will disable create_rbd_pool by default and only set it
to true for the upgrade suite.
...along with load_existing_entries and shutdown cache
operation
Signed-off-by: Lisa Li <xiaoyan.li@intel.com> Signed-off-by: Mahati Chamarthy <mahati.chamarthy@intel.com> Signed-off-by: Changcheng Liu <changcheng.liu@intel.com>
Zac Dover [Tue, 5 Jan 2021 13:55:16 +0000 (23:55 +1000)]
doc/cephfs: add data pool-MDS instructions link
- This commit adds a link to the "Create a Ceph
File System" page. The link that it adds is to the
"Adding a data pool to the MDS" subsection of the
file layouts page.
- s/mds/file system/