[manila] share group replication spike/questions
Hi, guys, As we talked about the topic in a virtual PTG few months ago. https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (Support promoting several shares in group (DELL EMC: dingdong) I'm trying to write a manila-spec for it. It's my first experience to implement such feature in framework. I need to double check with you something, and hope you can give me some guides like: 1. Where is the extra-spec defined for group/group type, it's in Manila repo, right? (like manila.db.sqlalchemy.models....) 2. The command cli should be implemented for 'python-manilaclinet' repo, right? (I have never touched this repo before) 3. Where is the rest-api should be implemented? 4. And more tips you have? like any other related project should be changed? Just list what I know, and more details questions will be raised when implementing, I think. FYI Thanks, Ding Dong
On Tue, Feb 25, 2020 at 12:53 AM <Dong.Ding@dell.com> wrote:
Hi, guys,
As we talked about the topic in a virtual PTG few months ago.
https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (*Support promoting several shares in group (DELL EMC: dingdong) *
I’m trying to write a manila-spec for it.
Hi, thank you for working on this, and for submitting a specification [0]. We're targeting this for the Victoria release, correct? I like working on these major changes as soon as possible giving us enough air time for testing and hardening.
It’s my first experience to implement such feature in framework.
I need to double check with you something, and hope you can give me some guides like:
1. Where is the extra-spec defined for group/group type, it’s in Manila repo, right? (like manila.db.sqlalchemy.models….)
Group type extra specs are added as storage capabilities first, you begin by modifying the driver interface to report this group type capability. When share drivers report their support for group replication, operators can use the corresponding string in their group type extra-specs to schedule appropriately. I suggest taking a look at an existing share group type capability called "consistent_snapshot_support". [1] and [2] are reviews that added it.
2. The command cli should be implemented for ‘python-manilaclinet’ repo, right? (I have never touched this repo before)
Yes. python-manilaclient encompasses - a python SDK to version 2 of the manila API - two shell implementations: manila and openstack client (actively being developed) Group type extra-specs are passed transparently through the SDK and CLI, you may probably add some documentation or shell hint text (like [3] if needed).
3. Where is the rest-api should be implemented?
The rest API is in the openstack/manila repository. [4][5] contain some documentation regarding how to change the manila API.
4. And more tips you have? like any other related project should be changed?
For any new feature, we need these additional things besides working code: - A first party driver implementation where possible so we can test this feature in the upstream CI (if no first party driver can support this feature, you'll need to make the best approximation of this feature through the Dummy/Fake driver [6]) - The feature must be tested with adequate test cases in manila-tempest-plugin - Documentation must be added to the manila documentation [7]
Just list what I know, and more details questions will be raised when implementing, I think.
FYI
Thanks,
Ding Dong
Happy to answer any more questions, here or on your specification [0] Thanks, Goutham [0] https://review.opendev.org/#/c/710166/ [1] https://review.opendev.org/#/c/446044/ [2] https://review.opendev.org/#/c/447474/ [3] https://opendev.org/openstack/python-manilaclient/src/commit/ac5ca461e8c8dd1... [4] https://docs.openstack.org/manila/latest/contributor/addmethod.openstackapi.... [5] https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.ht... [6] https://opendev.org/openstack/manila/src/commit/68a18f49472ac7686ceab15e9788... [7] https://docs.openstack.org/manila/latest/contributor/documenting_your_work.h...
Thanks Gotham, We are talking about this feature after U release. Cannot get it done in recently. Just do some prepare first. BR, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com> Sent: Friday, February 28, 2020 7:10 AM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Tue, Feb 25, 2020 at 12:53 AM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Hi, guys, As we talked about the topic in a virtual PTG few months ago. https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (Support promoting several shares in group (DELL EMC: dingdong) I’m trying to write a manila-spec for it. Hi, thank you for working on this, and for submitting a specification [0]. We're targeting this for the Victoria release, correct? I like working on these major changes as soon as possible giving us enough air time for testing and hardening. It’s my first experience to implement such feature in framework. I need to double check with you something, and hope you can give me some guides like: 1. Where is the extra-spec defined for group/group type, it’s in Manila repo, right? (like manila.db.sqlalchemy.models….) Group type extra specs are added as storage capabilities first, you begin by modifying the driver interface to report this group type capability. When share drivers report their support for group replication, operators can use the corresponding string in their group type extra-specs to schedule appropriately. I suggest taking a look at an existing share group type capability called "consistent_snapshot_support". [1] and [2] are reviews that added it. 2. The command cli should be implemented for ‘python-manilaclinet’ repo, right? (I have never touched this repo before) Yes. python-manilaclient encompasses - a python SDK to version 2 of the manila API - two shell implementations: manila and openstack client (actively being developed) Group type extra-specs are passed transparently through the SDK and CLI, you may probably add some documentation or shell hint text (like [3] if needed). 3. Where is the rest-api should be implemented? The rest API is in the openstack/manila repository. [4][5] contain some documentation regarding how to change the manila API. 4. And more tips you have? like any other related project should be changed? For any new feature, we need these additional things besides working code: - A first party driver implementation where possible so we can test this feature in the upstream CI (if no first party driver can support this feature, you'll need to make the best approximation of this feature through the Dummy/Fake driver [6]) - The feature must be tested with adequate test cases in manila-tempest-plugin - Documentation must be added to the manila documentation [7] Just list what I know, and more details questions will be raised when implementing, I think. FYI Thanks, Ding Dong Happy to answer any more questions, here or on your specification [0] Thanks, Goutham [0] https://review.opendev.org/#/c/710166/ [1] https://review.opendev.org/#/c/446044/ [2] https://review.opendev.org/#/c/447474/ [3] https://opendev.org/openstack/python-manilaclient/src/commit/ac5ca461e8c8dd1... [4] https://docs.openstack.org/manila/latest/contributor/addmethod.openstackapi.... [5] https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.ht... [6] https://opendev.org/openstack/manila/src/commit/68a18f49472ac7686ceab15e9788... [7] https://docs.openstack.org/manila/latest/contributor/documenting_your_work.h...
On Fri, Feb 28, 2020 at 12:21 AM <Dong.Ding@dell.com> wrote:
Thanks Gotham,
We are talking about this feature *after U release*.
Cannot get it done in recently.
Just do some prepare first.
Great, thanks for confirming. We'll hash out the design on the specification, and if necessary, we can work through it during the Open Infra Project Technical Gathering in June [8][9] [8] https://www.openstack.org/ptg/ [9] https://etherpad.openstack.org/p/vancouver-ptg-manila-planning
BR,
Ding Dong
*From:* Goutham Pacha Ravi <gouthampravi@gmail.com> *Sent:* Friday, February 28, 2020 7:10 AM *To:* Ding, Dong *Cc:* OpenStack Discuss *Subject:* Re: [manila] share group replication spike/questions
[EXTERNAL EMAIL]
On Tue, Feb 25, 2020 at 12:53 AM <Dong.Ding@dell.com> wrote:
Hi, guys,
As we talked about the topic in a virtual PTG few months ago.
https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (*Support promoting several shares in group (DELL EMC: dingdong) *
I’m trying to write a manila-spec for it.
Hi, thank you for working on this, and for submitting a specification [0]. We're targeting this for the Victoria release, correct? I like working on these major changes as soon as possible giving us enough air time for testing and hardening.
It’s my first experience to implement such feature in framework.
I need to double check with you something, and hope you can give me some guides like:
1. Where is the extra-spec defined for group/group type, it’s in Manila repo, right? (like manila.db.sqlalchemy.models….)
Group type extra specs are added as storage capabilities first, you begin by modifying the driver interface to report this group type capability. When share drivers report their support for group replication, operators can use the corresponding string in their group type extra-specs to schedule appropriately. I suggest taking a look at an existing share group type capability called "consistent_snapshot_support". [1] and [2] are reviews that added it.
2. The command cli should be implemented for ‘python-manilaclinet’ repo, right? (I have never touched this repo before)
Yes. python-manilaclient encompasses
- a python SDK to version 2 of the manila API
- two shell implementations: manila and openstack client (actively being developed)
Group type extra-specs are passed transparently through the SDK and CLI, you may probably add some documentation or shell hint text (like [3] if needed).
3. Where is the rest-api should be implemented?
The rest API is in the openstack/manila repository. [4][5] contain some documentation regarding how to change the manila API.
4. And more tips you have? like any other related project should be changed?
For any new feature, we need these additional things besides working code:
- A first party driver implementation where possible so we can test this feature in the upstream CI (if no first party driver can support this feature, you'll need to make the best approximation of this feature through the Dummy/Fake driver [6])
- The feature must be tested with adequate test cases in manila-tempest-plugin
- Documentation must be added to the manila documentation [7]
Just list what I know, and more details questions will be raised when implementing, I think.
FYI
Thanks,
Ding Dong
Happy to answer any more questions, here or on your specification [0]
Thanks,
Goutham
[0] https://review.opendev.org/#/c/710166/
[1] https://review.opendev.org/#/c/446044/
[2] https://review.opendev.org/#/c/447474/
[3] https://opendev.org/openstack/python-manilaclient/src/commit/ac5ca461e8c8dd1...
[4] https://docs.openstack.org/manila/latest/contributor/addmethod.openstackapi....
[5] https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.ht...
[6] https://opendev.org/openstack/manila/src/commit/68a18f49472ac7686ceab15e9788...
[7] https://docs.openstack.org/manila/latest/contributor/documenting_your_work.h...
Hi, Gotham, After checked the manila DB, I noticed there is table called ‘share_instances’ which was added for share replication and snapshot. Now, for group replication, do you think we also need a new table like ‘share_group_instances’ ? Thanks, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com> Sent: Saturday, February 29, 2020 7:43 AM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Fri, Feb 28, 2020 at 12:21 AM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Thanks Gotham, We are talking about this feature after U release. Cannot get it done in recently. Just do some prepare first. Great, thanks for confirming. We'll hash out the design on the specification, and if necessary, we can work through it during the Open Infra Project Technical Gathering in June [8][9] [8] https://www.openstack.org/ptg/ [9] https://etherpad.openstack.org/p/vancouver-ptg-manila-planning BR, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com<mailto:gouthampravi@gmail.com>> Sent: Friday, February 28, 2020 7:10 AM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Tue, Feb 25, 2020 at 12:53 AM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Hi, guys, As we talked about the topic in a virtual PTG few months ago. https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (Support promoting several shares in group (DELL EMC: dingdong) I’m trying to write a manila-spec for it. Hi, thank you for working on this, and for submitting a specification [0]. We're targeting this for the Victoria release, correct? I like working on these major changes as soon as possible giving us enough air time for testing and hardening. It’s my first experience to implement such feature in framework. I need to double check with you something, and hope you can give me some guides like: 1. Where is the extra-spec defined for group/group type, it’s in Manila repo, right? (like manila.db.sqlalchemy.models….) Group type extra specs are added as storage capabilities first, you begin by modifying the driver interface to report this group type capability. When share drivers report their support for group replication, operators can use the corresponding string in their group type extra-specs to schedule appropriately. I suggest taking a look at an existing share group type capability called "consistent_snapshot_support". [1] and [2] are reviews that added it. 2. The command cli should be implemented for ‘python-manilaclinet’ repo, right? (I have never touched this repo before) Yes. python-manilaclient encompasses - a python SDK to version 2 of the manila API - two shell implementations: manila and openstack client (actively being developed) Group type extra-specs are passed transparently through the SDK and CLI, you may probably add some documentation or shell hint text (like [3] if needed). 3. Where is the rest-api should be implemented? The rest API is in the openstack/manila repository. [4][5] contain some documentation regarding how to change the manila API. 4. And more tips you have? like any other related project should be changed? For any new feature, we need these additional things besides working code: - A first party driver implementation where possible so we can test this feature in the upstream CI (if no first party driver can support this feature, you'll need to make the best approximation of this feature through the Dummy/Fake driver [6]) - The feature must be tested with adequate test cases in manila-tempest-plugin - Documentation must be added to the manila documentation [7] Just list what I know, and more details questions will be raised when implementing, I think. FYI Thanks, Ding Dong Happy to answer any more questions, here or on your specification [0] Thanks, Goutham [0] https://review.opendev.org/#/c/710166/ [1] https://review.opendev.org/#/c/446044/ [2] https://review.opendev.org/#/c/447474/ [3] https://opendev.org/openstack/python-manilaclient/src/commit/ac5ca461e8c8dd1... [4] https://docs.openstack.org/manila/latest/contributor/addmethod.openstackapi.... [5] https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.ht... [6] https://opendev.org/openstack/manila/src/commit/68a18f49472ac7686ceab15e9788... [7] https://docs.openstack.org/manila/latest/contributor/documenting_your_work.h...
On Mon, Mar 9, 2020 at 6:55 PM <Dong.Ding@dell.com> wrote:
Hi, Gotham,
After checked the manila DB, I noticed there is table called ‘share_instances’ which was added for share replication and snapshot.
Now, for group replication, do you think we also need a new table like ‘share_group_instances’ ?
Agree, I think that's a sane approach to capture source and destination replicas adequately. Could you please discuss this through your specification?
Thanks,
Ding Dong
*From:* Goutham Pacha Ravi <gouthampravi@gmail.com> *Sent:* Saturday, February 29, 2020 7:43 AM *To:* Ding, Dong *Cc:* OpenStack Discuss *Subject:* Re: [manila] share group replication spike/questions
[EXTERNAL EMAIL]
On Fri, Feb 28, 2020 at 12:21 AM <Dong.Ding@dell.com> wrote:
Thanks Gotham,
We are talking about this feature *after U release*.
Cannot get it done in recently.
Just do some prepare first.
Great, thanks for confirming. We'll hash out the design on the specification, and if necessary, we can work through it during the Open Infra Project Technical Gathering in June [8][9]
[8] https://www.openstack.org/ptg/
[9] https://etherpad.openstack.org/p/vancouver-ptg-manila-planning
BR,
Ding Dong
*From:* Goutham Pacha Ravi <gouthampravi@gmail.com> *Sent:* Friday, February 28, 2020 7:10 AM *To:* Ding, Dong *Cc:* OpenStack Discuss *Subject:* Re: [manila] share group replication spike/questions
[EXTERNAL EMAIL]
On Tue, Feb 25, 2020 at 12:53 AM <Dong.Ding@dell.com> wrote:
Hi, guys,
As we talked about the topic in a virtual PTG few months ago.
https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (*Support promoting several shares in group (DELL EMC: dingdong) *
I’m trying to write a manila-spec for it.
Hi, thank you for working on this, and for submitting a specification [0]. We're targeting this for the Victoria release, correct? I like working on these major changes as soon as possible giving us enough air time for testing and hardening.
It’s my first experience to implement such feature in framework.
I need to double check with you something, and hope you can give me some guides like:
1. Where is the extra-spec defined for group/group type, it’s in Manila repo, right? (like manila.db.sqlalchemy.models….)
Group type extra specs are added as storage capabilities first, you begin by modifying the driver interface to report this group type capability. When share drivers report their support for group replication, operators can use the corresponding string in their group type extra-specs to schedule appropriately. I suggest taking a look at an existing share group type capability called "consistent_snapshot_support". [1] and [2] are reviews that added it.
2. The command cli should be implemented for ‘python-manilaclinet’ repo, right? (I have never touched this repo before)
Yes. python-manilaclient encompasses
- a python SDK to version 2 of the manila API
- two shell implementations: manila and openstack client (actively being developed)
Group type extra-specs are passed transparently through the SDK and CLI, you may probably add some documentation or shell hint text (like [3] if needed).
3. Where is the rest-api should be implemented?
The rest API is in the openstack/manila repository. [4][5] contain some documentation regarding how to change the manila API.
4. And more tips you have? like any other related project should be changed?
For any new feature, we need these additional things besides working code:
- A first party driver implementation where possible so we can test this feature in the upstream CI (if no first party driver can support this feature, you'll need to make the best approximation of this feature through the Dummy/Fake driver [6])
- The feature must be tested with adequate test cases in manila-tempest-plugin
- Documentation must be added to the manila documentation [7]
Just list what I know, and more details questions will be raised when implementing, I think.
FYI
Thanks,
Ding Dong
Happy to answer any more questions, here or on your specification [0]
Thanks,
Goutham
[0] https://review.opendev.org/#/c/710166/
[1] https://review.opendev.org/#/c/446044/
[2] https://review.opendev.org/#/c/447474/
[3] https://opendev.org/openstack/python-manilaclient/src/commit/ac5ca461e8c8dd1...
[4] https://docs.openstack.org/manila/latest/contributor/addmethod.openstackapi....
[5] https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.ht...
[6] https://opendev.org/openstack/manila/src/commit/68a18f49472ac7686ceab15e9788...
[7] https://docs.openstack.org/manila/latest/contributor/documenting_your_work.h...
Sure. I can list it in manila-spec. I’m wondering if we need the share-group-instances-xxx APIs also at the same time? Like share-instance-xxx: [cid:image001.jpg@01D5F7AF.A32AB440] Thanks, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com> Sent: Wednesday, March 11, 2020 2:10 PM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Mon, Mar 9, 2020 at 6:55 PM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Hi, Gotham, After checked the manila DB, I noticed there is table called ‘share_instances’ which was added for share replication and snapshot. Now, for group replication, do you think we also need a new table like ‘share_group_instances’ ? Agree, I think that's a sane approach to capture source and destination replicas adequately. Could you please discuss this through your specification? Thanks, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com<mailto:gouthampravi@gmail.com>> Sent: Saturday, February 29, 2020 7:43 AM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Fri, Feb 28, 2020 at 12:21 AM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Thanks Gotham, We are talking about this feature after U release. Cannot get it done in recently. Just do some prepare first. Great, thanks for confirming. We'll hash out the design on the specification, and if necessary, we can work through it during the Open Infra Project Technical Gathering in June [8][9] [8] https://www.openstack.org/ptg/ [9] https://etherpad.openstack.org/p/vancouver-ptg-manila-planning BR, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com<mailto:gouthampravi@gmail.com>> Sent: Friday, February 28, 2020 7:10 AM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Tue, Feb 25, 2020 at 12:53 AM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Hi, guys, As we talked about the topic in a virtual PTG few months ago. https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (Support promoting several shares in group (DELL EMC: dingdong) I’m trying to write a manila-spec for it. Hi, thank you for working on this, and for submitting a specification [0]. We're targeting this for the Victoria release, correct? I like working on these major changes as soon as possible giving us enough air time for testing and hardening. It’s my first experience to implement such feature in framework. I need to double check with you something, and hope you can give me some guides like: 1. Where is the extra-spec defined for group/group type, it’s in Manila repo, right? (like manila.db.sqlalchemy.models….) Group type extra specs are added as storage capabilities first, you begin by modifying the driver interface to report this group type capability. When share drivers report their support for group replication, operators can use the corresponding string in their group type extra-specs to schedule appropriately. I suggest taking a look at an existing share group type capability called "consistent_snapshot_support". [1] and [2] are reviews that added it. 2. The command cli should be implemented for ‘python-manilaclinet’ repo, right? (I have never touched this repo before) Yes. python-manilaclient encompasses - a python SDK to version 2 of the manila API - two shell implementations: manila and openstack client (actively being developed) Group type extra-specs are passed transparently through the SDK and CLI, you may probably add some documentation or shell hint text (like [3] if needed). 3. Where is the rest-api should be implemented? The rest API is in the openstack/manila repository. [4][5] contain some documentation regarding how to change the manila API. 4. And more tips you have? like any other related project should be changed? For any new feature, we need these additional things besides working code: - A first party driver implementation where possible so we can test this feature in the upstream CI (if no first party driver can support this feature, you'll need to make the best approximation of this feature through the Dummy/Fake driver [6]) - The feature must be tested with adequate test cases in manila-tempest-plugin - Documentation must be added to the manila documentation [7] Just list what I know, and more details questions will be raised when implementing, I think. FYI Thanks, Ding Dong Happy to answer any more questions, here or on your specification [0] Thanks, Goutham [0] https://review.opendev.org/#/c/710166/ [1] https://review.opendev.org/#/c/446044/ [2] https://review.opendev.org/#/c/447474/ [3] https://opendev.org/openstack/python-manilaclient/src/commit/ac5ca461e8c8dd1... [4] https://docs.openstack.org/manila/latest/contributor/addmethod.openstackapi.... [5] https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.ht... [6] https://opendev.org/openstack/manila/src/commit/68a18f49472ac7686ceab15e9788... [7] https://docs.openstack.org/manila/latest/contributor/documenting_your_work.h...
Sorry, send again to involve my colleague. * Sure. I can list the DB change in manila-spec. * Because I don’t use the instance API too much, I’m wondering if we need share-group-instances-xxx APIs if add such table? Like share-instance-xxx: [cid:image002.jpg@01D5F7C1.2E887020] Thanks, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com<mailto:gouthampravi@gmail.com>> Sent: Wednesday, March 11, 2020 3:40 PM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Mon, Mar 9, 2020 at 6:55 PM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Hi, Gotham, After checked the manila DB, I noticed there is table called ‘share_instances’ which was added for share replication and snapshot. Now, for group replication, do you think we also need a new table like ‘share_group_instances’ ? Agree, I think that's a sane approach to capture source and destination replicas adequately. Could you please discuss this through your specification? Thanks, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com<mailto:gouthampravi@gmail.com>> Sent: Saturday, February 29, 2020 7:43 AM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Fri, Feb 28, 2020 at 12:21 AM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Thanks Gotham, We are talking about this feature after U release. Cannot get it done in recently. Just do some prepare first. Great, thanks for confirming. We'll hash out the design on the specification, and if necessary, we can work through it during the Open Infra Project Technical Gathering in June [8][9] [8] https://www.openstack.org/ptg/ [9] https://etherpad.openstack.org/p/vancouver-ptg-manila-planning BR, Ding Dong From: Goutham Pacha Ravi <gouthampravi@gmail.com<mailto:gouthampravi@gmail.com>> Sent: Friday, February 28, 2020 7:10 AM To: Ding, Dong Cc: OpenStack Discuss Subject: Re: [manila] share group replication spike/questions [EXTERNAL EMAIL] On Tue, Feb 25, 2020 at 12:53 AM <Dong.Ding@dell.com<mailto:Dong.Ding@dell.com>> wrote: Hi, guys, As we talked about the topic in a virtual PTG few months ago. https://etherpad.openstack.org/p/shanghai-ptg-manila-virtual (Support promoting several shares in group (DELL EMC: dingdong) I’m trying to write a manila-spec for it. Hi, thank you for working on this, and for submitting a specification [0]. We're targeting this for the Victoria release, correct? I like working on these major changes as soon as possible giving us enough air time for testing and hardening. It’s my first experience to implement such feature in framework. I need to double check with you something, and hope you can give me some guides like: 1. Where is the extra-spec defined for group/group type, it’s in Manila repo, right? (like manila.db.sqlalchemy.models….) Group type extra specs are added as storage capabilities first, you begin by modifying the driver interface to report this group type capability. When share drivers report their support for group replication, operators can use the corresponding string in their group type extra-specs to schedule appropriately. I suggest taking a look at an existing share group type capability called "consistent_snapshot_support". [1] and [2] are reviews that added it. 2. The command cli should be implemented for ‘python-manilaclinet’ repo, right? (I have never touched this repo before) Yes. python-manilaclient encompasses - a python SDK to version 2 of the manila API - two shell implementations: manila and openstack client (actively being developed) Group type extra-specs are passed transparently through the SDK and CLI, you may probably add some documentation or shell hint text (like [3] if needed). 3. Where is the rest-api should be implemented? The rest API is in the openstack/manila repository. [4][5] contain some documentation regarding how to change the manila API. 4. And more tips you have? like any other related project should be changed? For any new feature, we need these additional things besides working code: - A first party driver implementation where possible so we can test this feature in the upstream CI (if no first party driver can support this feature, you'll need to make the best approximation of this feature through the Dummy/Fake driver [6]) - The feature must be tested with adequate test cases in manila-tempest-plugin - Documentation must be added to the manila documentation [7] Just list what I know, and more details questions will be raised when implementing, I think. FYI Thanks, Ding Dong Happy to answer any more questions, here or on your specification [0] Thanks, Goutham [0] https://review.opendev.org/#/c/710166/ [1] https://review.opendev.org/#/c/446044/ [2] https://review.opendev.org/#/c/447474/ [3] https://opendev.org/openstack/python-manilaclient/src/commit/ac5ca461e8c8dd1... [4] https://docs.openstack.org/manila/latest/contributor/addmethod.openstackapi.... [5] https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.ht... [6] https://opendev.org/openstack/manila/src/commit/68a18f49472ac7686ceab15e9788... [7] https://docs.openstack.org/manila/latest/contributor/documenting_your_work.h...
participants (2)
-
Dong.Ding@dell.com
-
Goutham Pacha Ravi