]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Varsha Rao [Thu, 28 May 2020 10:57:25 +0000 (10:57 +0000)]
qa/tasks/cephfs: Add tests for nfs exports
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
af3b925dfd97929e2b967ab6b05e92b7d0de6ece )
Varsha Rao [Thu, 28 May 2020 10:14:56 +0000 (15:44 +0530)]
mgr/volumes/nfs: Fix idempotency of cluster and export commands
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
b8ce61e8bde7a0cb1eed7129038701c10fd275cd )
Varsha Rao [Tue, 26 May 2020 10:17:55 +0000 (15:47 +0530)]
mgr/volumes/nfs: Fix incorrect read only access_type value
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
923d1814866736067b76236c3cadaccbad0e871d )
Varsha Rao [Tue, 26 May 2020 10:13:40 +0000 (15:43 +0530)]
mgr/fs/nfs: Use check_mon_command() instead of mon_command()
check_mon_command() checks the return code of mon command.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
fee3f25609130c8f03a829b0ad28a6aa0760dd35 )
Varsha Rao [Thu, 30 Apr 2020 10:10:52 +0000 (15:40 +0530)]
qa/cephfs: Add tests for nfs
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
ab41951b04c99bf55e093937196add25d4face84 )
Varsha Rao [Fri, 15 May 2020 17:56:13 +0000 (23:26 +0530)]
mgr/volumes/nfs: Remove type option from export create interface
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
9bcd7b673d7206a35abc9bf612ec3ff05f491ba7 )
Varsha Rao [Fri, 15 May 2020 16:04:03 +0000 (21:34 +0530)]
vstart: Instead of CACHEINODE use MDCACHE
CACHEINODE will be deprecated soon. Instead use MDCACHE.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
2c50c9b0c168a6770560d70efd03769ddd43a8a8 )
Varsha Rao [Thu, 14 May 2020 16:00:46 +0000 (21:30 +0530)]
mgr/volumes: Rearrange nfs export interface
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
8a84744a5a7b8e7fb158cfe33887e8f0a2b2fb91 )
Varsha Rao [Thu, 14 May 2020 15:45:58 +0000 (21:15 +0530)]
mgr/volumes/nfs: Delete common config object on cluster deletion
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
0ee8439b69e309c8c99cc0cb8466ce8dac866e6b )
Varsha Rao [Thu, 14 May 2020 13:46:35 +0000 (19:16 +0530)]
mgr/volumes/nfs: Delete all exports on cluster deletion
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
d12aed8eeaaa981873aa278d8bdb209e3f6968c9 )
Varsha Rao [Thu, 14 May 2020 11:16:48 +0000 (16:46 +0530)]
mgr/volumes: Make nfs create export interface idempotent
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
b3b83b0554441597c6a7a282e55a5fb3ce8b9982 )
Varsha Rao [Wed, 6 May 2020 10:20:12 +0000 (15:50 +0530)]
vstart: Add watch url for conf-nfs object
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
e9e09a199f5d0624bda748d78eecba6cae4d7fc5 )
Varsha Rao [Tue, 5 May 2020 10:38:49 +0000 (16:08 +0530)]
mgr/volumes/nfs: Delete user on removing export
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
b9bff573c965bfa5c90919431e8791610fef7787 )
Varsha Rao [Tue, 5 May 2020 10:09:48 +0000 (15:39 +0530)]
mgr/volumes: Create user for given path and fs
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
dd20761908a2a7ba63df941991aa5adfada4d1fb )
Varsha Rao [Mon, 4 May 2020 14:13:12 +0000 (19:43 +0530)]
vstart: Ensure cephadm and NFS does not conflict
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
31767428fc36f34331b75dd899ed0b9ae6b3ecaf )
Varsha Rao [Mon, 4 May 2020 14:05:47 +0000 (19:35 +0530)]
vstart: Update details about ganesha packages
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
f81fe362456865265f79b7b13b726fc0fdb6ef54 )
Varsha Rao [Tue, 28 Apr 2020 16:27:20 +0000 (21:57 +0530)]
mgr/volumes/nfs: Add delete cephfs export command
$ ceph nfs export delete <binding> <clusterid>
binding: It is the pseudo root name
clusterid: It is name of the cluster
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
5b45610549ec7e3f22fbda77164201bcb7396b78 )
Varsha Rao [Tue, 28 Apr 2020 11:49:32 +0000 (17:19 +0530)]
mgr/volumes/nfs: Add RADOS notify for common config object
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
85e71eb7d40e1bbd2f77dbc8dce65dd42ea85fb1 )
Varsha Rao [Mon, 27 Apr 2020 11:30:03 +0000 (17:00 +0530)]
mgr/volumes/nfs: Pass cluster_id directly to NFSCluster {create, update, delete} methods
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
fff59e686aeae615935fe1ee8ad84352aa6757f3 )
Varsha Rao [Thu, 23 Apr 2020 15:46:16 +0000 (21:16 +0530)]
mgr/volumes: Add nfs cluster delete interface
$ ceph nfs cluster delete <clusterid>
This deletes the deployed cluster.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
db2734a50fd3babd43892af0437edbe9a8130c99 )
Varsha Rao [Thu, 23 Apr 2020 13:40:48 +0000 (19:10 +0530)]
mgr/volumes: Add nfs cluster update interface
$ ceph nfs cluster update <clusterid> <placement>
This updates the existing deployed cluster according to placement value.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
9f97401f2794d51cfd7c44564a82b747e88420f9 )
Varsha Rao [Tue, 21 Apr 2020 13:20:04 +0000 (18:50 +0530)]
vstart: Enable test_orchestrator in start_ganesha()
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
16d11d1f67226dbede7c706e17418dfa278c7c73 )
Varsha Rao [Tue, 21 Apr 2020 12:53:04 +0000 (18:23 +0530)]
mgr/volumes: Add placement option to create nfs cluster interface
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
b16190bb5fb61754199cf9731c496888299c983a )
Varsha Rao [Tue, 21 Apr 2020 09:56:57 +0000 (15:26 +0530)]
mgr/volumes/nfs: Change common ganesha config object name to 'conf-nfs.ganesha-<cluster_id>'
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
7f584fd574e471363597d9f366e8336deba72222 )
Varsha Rao [Mon, 20 Apr 2020 06:12:18 +0000 (11:42 +0530)]
mgr/volumes/nfs: Call orch nfs apply
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
1e1a1b0ae80646c06855e94a21b8d5c83a0e3955 )
Varsha Rao [Wed, 8 Apr 2020 06:13:57 +0000 (11:43 +0530)]
mgr/volumes: Add a note about placement option in nfs cluster create
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
e3da10220ec854bec63c369b1e6a96013cf875d0 )
Varsha Rao [Wed, 8 Apr 2020 06:09:29 +0000 (11:39 +0530)]
mgr/volumes: Remove unused typing module
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
14cbf6d567b7e945f4a497d4e5b0d0631ec50f0a )
Varsha Rao [Mon, 6 Apr 2020 14:24:37 +0000 (19:54 +0530)]
mgr/volumes: Make cluster id option mandatory in nfs create export
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
25642bcf50dd56ab5cd14470543f9e3fb7a4185b )
Varsha Rao [Wed, 1 Apr 2020 16:01:26 +0000 (21:31 +0530)]
mgr/volumes: Update nfs cluster and export interface
Instead of prefixing 'fs' to the commands, type is added for easy extension to
create rgw exports.
$ ceph nfs cluster create <type=cephfs> [--size=1] <clusterid>
$ ceph nfs export create <type=cephfs> <fsname> <binding> [--readonly] [--path=/path/in/cephfs] [--attach=<clusterid>]
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
a84d4b0124d49a14426c0703a204b4c64c13c936 )
Varsha Rao [Wed, 1 Apr 2020 15:34:58 +0000 (21:04 +0530)]
vstart: Update the nfs cluster create and export interface
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
34ba1cc141a9b2969b9a4e80c35339f04b0ea4fa )
Varsha Rao [Wed, 1 Apr 2020 11:18:30 +0000 (16:48 +0530)]
mgr/volumes: Remove GaneshaConf and NFSConfig class
NFSCluster and FSExport class replace GaneshaConf and NFSConfig class.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
56a4fabe78bfdc9c396a76c65c1ce10f5b9bf4ed )
Varsha Rao [Tue, 31 Mar 2020 11:48:03 +0000 (17:18 +0530)]
mgr/volumes: Create multiple CephFS exports
Using the following fs nfs interface multiple exports can be created:
ceph fs nfs export create <fsname> <binding> --readonly --path=<pathname> --attach=<clusterid>
Note: Binding is pseudo path.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
0b6343fb7e261b3fe509b463523e60d55145351b )
Varsha Rao [Mon, 30 Mar 2020 10:17:15 +0000 (15:47 +0530)]
mgr/volumes: Move ganesha common config to vstart
This is a preparatoy patch before calling orchestrator for nfs cluster
deployment. All the ganesha config is moved to vstart. Keyring creation is also
taken care by vstart.
The volumes fs nfs cluster create interface does the following things:
1) Create a common recovery pool for all ganesha clusters. Each cluster will
have their own namespace.
2) Create an empty rados conf object named 'conf-nfs' for saving all export
urls.
Call to orch interface will be done in future patch.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
19699b0bcdadec5b4615f170c7967fd9d756d5e2 )
Varsha Rao [Tue, 24 Mar 2020 18:56:56 +0000 (00:26 +0530)]
mgr/volumes/nfs: Fix mypy errors
This patch fixes the following mypy errors:
volumes/module.py:9: note: In module imported here,
volumes/__init__.py:2: note: ... from here:
volumes/fs/nfs.py: note: In member "validate_path" of class "CephFSFSal":
volumes/fs/nfs.py:80: error: Name 're' is not defined
volumes/fs/nfs.py: note: In member "create_path" of class "CephFSFSal":
volumes/fs/nfs.py:83: error: Name 'CephFS' is not defined
volumes/fs/nfs.py: note: In member "_persist_daemon_configuration" of class "GaneshaConf":
volumes/fs/nfs.py:259: error: Need type annotation for 'daemon_map' (hint: "daemon_map: Dict[<type>, <type>] = ...")
volumes/fs/nfs.py: note: In member "create_instance" of class "NFSConfig":
volumes/fs/nfs.py:386: error: Incompatible types in assignment (expression has type "GaneshaConf", variable has type "str")
volumes/fs/nfs.py: note: In member "create_export" of class "NFSConfig":
volumes/fs/nfs.py:389: error: "str" has no attribute "create_export"
volumes/fs/nfs.py: note: In member "delete_export" of class "NFSConfig":
volumes/fs/nfs.py:404: error: "str" has no attribute "has_export"
volumes/fs/nfs.py:407: error: "str" has no attribute "remove_export"
volumes/fs/nfs.py:408: error: "str" has no attribute "reload_daemons"
volumes/__init__.py:2: note: In module imported here:
volumes/module.py: note: In member "_cmd_fs_nfs_export_create" of class "Module":
volumes/module.py:406: error: "str" has no attribute "check_fsal_valid"
volumes/module.py:407: error: "str" has no attribute "create_instance"
volumes/module.py:408: error: "str" has no attribute "create_export"
volumes/module.py: note: In member "_cmd_fs_nfs_export_delete" of class "Module":
volumes/module.py:412: error: "str" has no attribute "delete_export"
volumes/module.py: note: In member "_cmd_fs_nfs_cluster_create" of class "Module":
volumes/module.py:415: error: Incompatible types in assignment (expression has type "NFSConfig", variable has type "str")
volumes/module.py:416: error: "str" has no attribute "create_nfs_cluster"
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
b87f6fc0fd1cdc5803166a2f92ce5152d5495999 )
Varsha Rao [Tue, 24 Mar 2020 18:13:40 +0000 (23:43 +0530)]
mgr/volumes/nfs: Update the export class to remove unecessary config options
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
75c5a8bfb27cff8975b6c062ddac1a38bd117b9b )
Varsha Rao [Tue, 24 Mar 2020 11:13:09 +0000 (16:43 +0530)]
mgr/volumes: Remove dependency on dashboard ganesha module
Instead of importing ganesha module, necessary classes are directly used in
volumes nfs module.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
c613c0d96996f30b4a9d3ae2c882d8593f280bf5 )
Varsha Rao [Tue, 24 Mar 2020 09:56:51 +0000 (15:26 +0530)]
vstart: Use random port instead of default Ganesha port
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
91334cb8eab1f6eb203f74267ead141747780696 )
Varsha Rao [Fri, 6 Mar 2020 20:33:51 +0000 (02:03 +0530)]
vstart: Use "NFS" instead "GANESHA" for starting nfs ganesha clusters
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
765cafdb6169836d1ba216b1cd7d4e118fc559e7 )
Varsha Rao [Fri, 6 Mar 2020 20:19:30 +0000 (01:49 +0530)]
mgr/volumes: Improve readability of ganesha common config
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
2b0f9646e237b3a5b748087c54adecaf2eb3104a )
Varsha Rao [Fri, 6 Mar 2020 19:56:57 +0000 (01:26 +0530)]
vstart: Add note about mounting cephfs exports
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
1be7e547e40a0808de481c2c889e3b759f58d4e5 )
Varsha Rao [Thu, 5 Mar 2020 09:56:03 +0000 (15:26 +0530)]
src/vstart: Set CEPH_CONF environment variables
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
751a994f6798bcf0b8e2de7a9dfed330c84702fa )
Varsha Rao [Tue, 3 Mar 2020 13:42:58 +0000 (19:12 +0530)]
mgr/volumes/fs: Update default ganesha conf options
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
05dade8f768629a3a02a4399374be255e8461349 )
Varsha Rao [Tue, 25 Feb 2020 14:21:06 +0000 (19:51 +0530)]
doc: Add document about fs nfs interface to create CephFS exports
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
48c8e8b546066085c9a32c7214c34efd15692a4d )
Varsha Rao [Tue, 25 Feb 2020 10:45:25 +0000 (16:15 +0530)]
vstart: Update fs nfs export create command
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
4ba9376ca53cd4ebfe85acd59abe479c9a48139d )
Varsha Rao [Tue, 25 Feb 2020 08:31:07 +0000 (14:01 +0530)]
mgr/volumes: Update nfs export create and delete command
Remove fill_keys function and add key to nfsconfig object.
Export create and delete methods that no longer require ganeshaconf object to
be passed.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
2fb2a823f18ffeba4e13719f775278ecb483431c )
Varsha Rao [Tue, 25 Feb 2020 07:27:44 +0000 (12:57 +0530)]
mgr/volumes: Remove create_rados_pool method
Pool is created by cluster command.
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
ae49ab3c789550379138bbd58a3b306dbb046100 )
Varsha Rao [Mon, 24 Feb 2020 12:19:14 +0000 (17:49 +0530)]
mgr/volumes: Changes to nfs export delete and create
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
30bba72281800b5be7f4a2d79ed00940dbe1c4f4 )
Varsha Rao [Fri, 21 Feb 2020 06:09:45 +0000 (11:39 +0530)]
mgr/volumes: While creating nfs-ganesha user update its cap
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
6363b887eeb50cb5dba8f7ef3c8d075fda5d1b27 )
Varsha Rao [Wed, 19 Feb 2020 13:26:52 +0000 (18:56 +0530)]
mgr/volumes: Update caps for new user created and add it's key to keyring
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
0f2f7b0b1a903c0611dd86fb5e05cf901b1217f1 )
Varsha Rao [Wed, 12 Feb 2020 07:58:23 +0000 (13:28 +0530)]
vstart: Update vstart according to cluster create command
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
e89cf6f58df138d5c8e2fdc06a26634fa6e6f65d )
Varsha Rao [Wed, 12 Feb 2020 07:48:27 +0000 (13:18 +0530)]
mgr/volumes: Add Ganesha common config
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
c1412fa64e77f56ee10b5703bc0956bc93df4842 )
Varsha Rao [Thu, 30 Jan 2020 04:37:44 +0000 (10:07 +0530)]
mgr/volumes: Create NFSConfig class
Move the ganesha config functions into this class.
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
a4debfdc906d0410b45cf291caeb7378fd375507 )
Varsha Rao [Mon, 27 Jan 2020 10:06:48 +0000 (15:36 +0530)]
mgr/volumes: Add command to create nfs-ganesha clusters
ceph fs nfs cluster create <cluster_id> [--size=1]
cluster_id: Name of the nfs cluster
This command creates a common recovery pool for all Ganesha daemons, creates
new user and nfs cluster. Orchestrator needs to be enabled.
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
cc50d4c154d1f2acee238b95484d429180eeec7b )
Varsha Rao [Fri, 3 Jan 2020 13:21:28 +0000 (18:51 +0530)]
mgr: Create pool for nfs ganesha recovery
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
8c945eda6ccd9828eb0e473fafe11d3555e5f9e0 )
Varsha Rao [Thu, 19 Dec 2019 12:03:39 +0000 (17:33 +0530)]
mgr: Add "ceph fs nfs delete <export_id>" to delete exports
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
26d948735aaa360cc0494bbb3268b355d1ad61ad )
Varsha Rao [Fri, 22 Nov 2019 05:34:01 +0000 (11:04 +0530)]
mgr: Add command to create exports for nfs-ganesha
'ceph fs nfs create': This command creates export objects for nfs-ganesha.
vstart ganesha daemon fetches the export block from rados object.
Fixes: https://tracker.ceph.com/issues/44193
Signed-off-by: Varsha Rao <varao@redhat.com>
(cherry picked from commit
960688169f26b0cdbbcd90d3e7cefe9a176d17dc )
Yuri Weinstein [Tue, 7 Jul 2020 23:04:54 +0000 (16:04 -0700)]
Merge pull request #35711 from rhcs-dashboard/wip-46020-octopus
octopus: mgr/dashboard: work with v1 RBD images
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Kiefer Chang <kiefer.chang@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Lenz Grimmer [Tue, 7 Jul 2020 13:49:34 +0000 (15:49 +0200)]
Merge pull request #35620 from rhcs-dashboard/wip-46048-octopus
octopus: mgr/dashboard: cropped actions menu in nested details
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Laura Paduano [Tue, 7 Jul 2020 12:31:50 +0000 (14:31 +0200)]
Merge pull request #35705 from tspmelo/wip-45855-octopus
octopus: mgr/dashboard: Improve Summary's subscribe methods
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Lenz Grimmer [Tue, 7 Jul 2020 11:02:23 +0000 (13:02 +0200)]
Merge pull request #35883 from bk201/wip-46314-octopus
octopus: mgr/dashboard: fix wal/db slots controls in the OSD form
Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Avan Thakkar [Thu, 28 May 2020 16:14:15 +0000 (21:44 +0530)]
mgr/dashboard: cropped actions menu in nested details
Fixes: https://tracker.ceph.com/issues/45508
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit
ec3c731d2dc28839984e94f6faddab761ea1a7a5 )
(cherry picked from commit
9d56135ff704043860f5dc52afd02819abdfc8af )
Lenz Grimmer [Mon, 6 Jul 2020 12:30:25 +0000 (14:30 +0200)]
Merge pull request #35885 from rhcs-dashboard/wip-46313-octopus
octopus: mgr/dashboard: Prometheus query error in the metrics of Pools, OSDs and RBD images
Reviewed-by: Patrick Seidensal <pnawracay@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Patrick Donnelly [Thu, 2 Jul 2020 16:44:27 +0000 (09:44 -0700)]
Merge PR #35759 into octopus
* refs/pull/35759/head:
qa: fix flake8 warnings
doc: add documentation for new ephemeral pinning feature
pybind/mgr/volumes: wire up pinning subvolumes/subvolumegroups
qa: adapt tests for empty pinned dir export
qa: break export pin tests into discrete tests
qa: add more ephemeral pin tests
qa: add tests for ephemeral pinning
mds: add maximum random ephemeral pin percentage
mds: replicate random pin state
mds: finish implementation of ephemeral pins
mds: do string equality comparison
mds: add ephemeral pinning for subtrees
mds: trim pinned and empty subtrees
mds: refactor remove_subtree
mds: allow export of pinned directory if empty
mds: reduce subtree processing verbosity
mds: skip export of empty directories
mds: remove frozen export pin from queue
mds: simplify for loop construction
mds: add debug messages for export queue processing
qa: refactor _wait_subtree and _get_subtree
qa: use status from wait_for_daemons
qa: quietly print json output from asok commands
Reviewed-by: Sidharth Anupkrishnan <sanupkri@redhat.com>
Sebastian Wagner [Thu, 2 Jul 2020 09:26:52 +0000 (11:26 +0200)]
Merge pull request #35568 from sebastian-philipp/octopus-backport-34633-35099-35459-35521-35504-35474-35538
octopus: cephadm batch backport June (3)
Reviewed-by: Kiefer Chang <kiefer.chang@suse.com>
Avan Thakkar [Mon, 13 Apr 2020 09:50:00 +0000 (15:20 +0530)]
mgr/dashboard: Prometheus query error in the metrics of Pools, OSDs and RBD images
Fixes: https://tracker.ceph.com/issues/45068
Signed-off-by: Avan Thakkar <athakkar@redhat.com>
(cherry picked from commit
47b515c09496da8fc326300bab6618250466effe )
Kiefer Chang [Mon, 15 Jun 2020 07:16:57 +0000 (15:16 +0800)]
mgr/dashboard: fix wal/db slots controls in the OSD form
Controls should be updated immediately after changing.
Fixes: https://tracker.ceph.com/issues/44985
Signed-off-by: Kiefer Chang <kiefer.chang@suse.com>
(cherry picked from commit
2a7b392d873f224e71c50d2916dbd1a63e4360f9 )
Patrick Donnelly [Wed, 24 Jun 2020 17:26:16 +0000 (10:26 -0700)]
qa: fix flake8 warnings
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
683153c56e4db9ac5d17dbdcc6b741a27fb37062 )
Patrick Donnelly [Tue, 9 Jun 2020 22:30:28 +0000 (15:30 -0700)]
doc: add documentation for new ephemeral pinning feature
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
6cd10c591af61c37f7175c9cd6873568caa099f6 )
Patrick Donnelly [Wed, 10 Jun 2020 04:14:23 +0000 (21:14 -0700)]
pybind/mgr/volumes: wire up pinning subvolumes/subvolumegroups
Fixes: https://tracker.ceph.com/issues/41541
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
982041e89d6db6aa764e287a05f1c2937efa719a )
Patrick Donnelly [Fri, 19 Jun 2020 20:52:22 +0000 (13:52 -0700)]
qa: adapt tests for empty pinned dir export
Previously, empty pinned directories were not migrated.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
69e3f556a73f20ce099d3cf41fd839761ef5198b )
Patrick Donnelly [Mon, 15 Jun 2020 16:40:55 +0000 (09:40 -0700)]
qa: break export pin tests into discrete tests
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
091e8ffd9dd174d47cf683f14abb2ec23581705e )
Patrick Donnelly [Tue, 9 Jun 2020 22:28:21 +0000 (15:28 -0700)]
qa: add more ephemeral pin tests
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
aef549e49e6fe69635307a0c1f66221e75d81f5d )
Sidharth Anupkrishnan [Wed, 19 Feb 2020 14:28:15 +0000 (19:58 +0530)]
qa: add tests for ephemeral pinning
Signed-off-by: Sidharth Anupkrishnan <sanupkri@redhat.com>
(cherry picked from commit
aa99c8546be2c33793803fa2c1d733ed39933573 )
Patrick Donnelly [Tue, 9 Jun 2020 23:49:20 +0000 (16:49 -0700)]
mds: add maximum random ephemeral pin percentage
This new config is designed to prevent creating too many subtrees from a
random ephemeral pinning policy.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
c8d343d592de92af91c6f9eecb6aab0ebed54657 )
Patrick Donnelly [Tue, 9 Jun 2020 22:15:00 +0000 (15:15 -0700)]
mds: replicate random pin state
This is slightly evil in its current form. The MDS should use locks to
transmit state changes but right now it's just set when the CInode is
replicated. This replication of this state marker is necessary for
failover situations where we want the randomly pinned subtree to remain
pinned across failovers.
Note: this problem does not exist for the ephemeral distributed pins
because simple knowledge of the immediate parent's setting (which is
replicated normally) is sufficient to determine if the CInode is
ephemerally distributed. Ditto for regular export pins.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
306003c51b1070a10c8e3818f67117d987640ba0 )
Conflicts:
src/mds/CInode.h
Patrick Donnelly [Sat, 7 Mar 2020 03:20:58 +0000 (19:20 -0800)]
mds: finish implementation of ephemeral pins
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
703e4b01fa83f81cda4fdc46b91f24a5e92f95f0 )
Patrick Donnelly [Sat, 7 Mar 2020 03:09:50 +0000 (19:09 -0800)]
mds: do string equality comparison
The string::find method would return true for ceph.dir.pin even for the
other ephemeral pin xattr names. For this reason, it was never possible
to actually turn ephemeral pins on!
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
21872bdb118c5eef4c2cfdadcc62737bb9471022 )
Sidharth Anupkrishnan [Tue, 14 Jan 2020 13:35:47 +0000 (19:05 +0530)]
mds: add ephemeral pinning for subtrees
This PR introduces inode xattrs export_ephemeral_random and
export_ephemeral_distributed which enables two different metadata
distribution strategies - the first being suitable for a more depthwise
scaling of metadata (height of the tree keeps increasing) and the latter
for horizontal scaling (many subtrees under a single parent).
export_ephemeral_distributed applies is not hierarchical. Any direct
descendant directory (i.e. a child directory) has an ephemeral export
pin applied to it according to a consistent hash of the child directory
inode number. export_ephemeral_distributed is hierarchical like
"export_pin". Any CDir loaded into the cache may be ephemerally pinned
to a random rank. Like "export_ephemeral_distributed", the random rank
is determined by a consistent hash.
The metadata distribution strategies are facilitated by using John
Lamping and Eric Veach's Jump Consistent Hashing as the consistent hash
algorithm. This hashing algorithm eliminates the need to store the data
structures representing the consistent hash cluster state and performs
as well as Akamai's original implementation providing a fairly uniform
distribution. This algorithm only works for distributed systems with
numbered buckets (nodes) arranged in ascending order and cluster resizes
does not produce any holes in the arrangement of nodes i.e (0, 1, 2, 3)
--[removing node 1]--> (0, 1, 2). CephFS satisfies these conditions as
the MDSs are arranged as numbered ranks and cluster modifications does
not produce any holes in the resulting arrangement of ranks.
Fixes: https://tracker.ceph.com/issues/41302
Signed-off-by: Sidharth Anupkrishnan <sanupkri@redhat.com>
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
ced15ed7ef70ff832d4bebedecb89944276b0395 )
Conflicts:
src/mds/MDSRank.cc
Patrick Donnelly [Fri, 5 Jun 2020 02:00:04 +0000 (19:00 -0700)]
mds: trim pinned and empty subtrees
Before export (and ephemeral) pinned subtrees are stuck in cache
forever.
Add qa test for checking export pinned directories can be trimmed.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
5eea6761cc7e5950810cb0a625d49bd3f788183c )
Patrick Donnelly [Fri, 5 Jun 2020 01:58:10 +0000 (18:58 -0700)]
mds: refactor remove_subtree
Search each map only once as necessary.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
747687f5dec8adc86abafb367275373bb44d96e9 )
Patrick Donnelly [Mon, 8 Jun 2020 23:50:44 +0000 (16:50 -0700)]
mds: allow export of pinned directory if empty
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
4749e5abb16a38b34ed63d11dbcd8bf3831b3f13 )
Patrick Donnelly [Wed, 10 Jun 2020 16:20:25 +0000 (09:20 -0700)]
mds: reduce subtree processing verbosity
and some mild loop refactoring.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
c0271eea75eb83de2e38219f6dcc6597d41a5653 )
Patrick Donnelly [Sat, 7 Mar 2020 03:19:49 +0000 (19:19 -0800)]
mds: skip export of empty directories
Note: empty as in no cached sub-entries.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
570e6cfbcfc98f877a0e21cf536dfc826a4f9d15 )
Patrick Donnelly [Sat, 7 Mar 2020 03:15:03 +0000 (19:15 -0800)]
mds: remove frozen export pin from queue
The export already belongs on the node id so there's no need to keep it
in the queue.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
70ba356bbdd5c10979f9ff6a630de23d8304fb35 )
Patrick Donnelly [Sat, 7 Mar 2020 03:13:46 +0000 (19:13 -0800)]
mds: simplify for loop construction
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
d3158bf11ea1ea4934b12f48f6c373d912072c31 )
Patrick Donnelly [Tue, 9 Jun 2020 22:14:23 +0000 (15:14 -0700)]
mds: add debug messages for export queue processing
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
461fad8f807bdc01fbb19d79934573ee94d5712a )
Patrick Donnelly [Fri, 5 Jun 2020 02:40:00 +0000 (19:40 -0700)]
qa: refactor _wait_subtree and _get_subtree
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
c0506230653b0c190d4793feb77ca197b45d85ee )
Conflicts:
qa/tasks/cephfs/mount.py
Patrick Donnelly [Fri, 5 Jun 2020 02:49:09 +0000 (19:49 -0700)]
qa: use status from wait_for_daemons
Avoid an extra `fs dump` call.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
ddb18091a64b29bb69aafa2941cda01e3f749cf5 )
Patrick Donnelly [Sun, 14 Jun 2020 03:26:35 +0000 (20:26 -0700)]
qa: quietly print json output from asok commands
Pretty print output once. Use --format=json so the stdout on teuthology
is not pretty printed, taking hundreds of lines.
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit
f451c43aca58945ca5d4646bf057e009deb0a787 )
Josh Durgin [Wed, 1 Jul 2020 19:29:27 +0000 (12:29 -0700)]
Merge branch 'wip-46095-octopus' into octopus - from https://github.com/ceph/ceph/pull/35685
octopus: mon: Warn when too many reads are repaired on an OSD
Reviewed-by: Neha Ojha <nojha@redhat.com>
David Zafman [Tue, 16 Jun 2020 23:28:58 +0000 (16:28 -0700)]
test: flush_pg_stats() ignore OSDs that don't respond to getting sequence
This eliminates bogus errors in the logs and returned from flush_pg_stats()
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit
41322eaa62be0de20fdedb44d5817a3f1916ab5e )
David Zafman [Wed, 10 Jun 2020 02:24:00 +0000 (19:24 -0700)]
mgr: Warn when too many reads are repaired on an OSD
Include test case
Configurable by setting mon_osd_warn_num_repaired (default 10)
Ignore new health warning with random eio injection test
Fixes: https://tracker.ceph.com/issues/41564
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit
661996d4342c427209b1eae4b0247f8210a00fc3 )
Yuri Weinstein [Wed, 1 Jul 2020 19:22:32 +0000 (12:22 -0700)]
Merge pull request #35715 from dzafman/wip-46115
octopus: tools: Add statfs operation to ceph-objecstore-tool
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
Yuri Weinstein [Wed, 1 Jul 2020 19:20:35 +0000 (12:20 -0700)]
Merge pull request #35550 from neha-ojha/wip-reduce-noise-octopus
octopus: qa/tasks/ceph_manager.py: dump more useful info before failing
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Yuri Weinstein [Wed, 1 Jul 2020 19:19:39 +0000 (12:19 -0700)]
Merge pull request #35136 from shyukri/wip-45209-octopus
octopus: monitoring: alert for pool fill up broken
Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Patrick Seidensal <pnawracay@suse.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Jan Fajerski [Wed, 1 Jul 2020 12:30:06 +0000 (14:30 +0200)]
Merge pull request #35830 from guits/wip-46251-octopus
octopus: ceph-volume: add dmcrypt support in raw mode
Nathan Cutler [Wed, 1 Jul 2020 10:42:02 +0000 (12:42 +0200)]
Merge pull request #35753 from smithfarm/wip-wipe-prn-octopus
octopus: doc: PendingReleaseNotes: clean slate for 15.2.5
Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
Patrick Donnelly [Tue, 30 Jun 2020 21:22:15 +0000 (14:22 -0700)]
Merge PR #35809 into octopus
* refs/pull/35809/head:
qa/tasks/vstart_runner.py: be python3 compatible
doc/dev/developer_guide: use python3 to launch vstart_runner.py
pybind/mgr/dashboard/run-backend-api-tests.sh: use python3 by default
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Jenkins Build Slave User [Tue, 30 Jun 2020 15:40:51 +0000 (15:40 +0000)]
15.2.4
Guillaume Abrioux [Thu, 25 Jun 2020 11:33:09 +0000 (13:33 +0200)]
ceph-volume: remove unused function
This function is never called in raw context, let's remove it.
Signed-off-by: Guillaume Abrioux <gabrioux@redhat.com>
(cherry picked from commit
20e8286f5e1b79678b17659272daa1e28e763618 )