[openstack-dev] [nova] How to use resource_providers for shared disk resources (NFS)
Jay Pipes
jaypipes at gmail.com
Mon Jan 30 18:01:10 UTC 2017
On 01/30/2017 05:55 AM, Shewale, Bhagyashri wrote:
> Hi nova devs,
>
> How can I use placement api's if my instance path is mounted on shared
> storage server (e.g. NFS)?
>
> I am trying to set multinode setup with NFS shared storage for all nodes
> to share disk resources along with placement services. As of now it is
> creating resource providers for each of the compute node and adds the
> DISK_GB for each resource provider.
Correct. Well, I mean that this behaviour is expected (and is the
identical behaviour that exists in Nova today with the non-placement API).
We have not yet merged code that handles the correct accounting of
shared storage, unfortunately. :(
When we merge all the code that handles shared storage [1], you should
be able to do something like the following:
STORAGE_UUID=`openstack aggregate-create "my NFS storage pool"`
openstack aggregate-host-associated $STORAGE_UUID $UUID_COMPUTE1
openstack aggregate-host-associated $STORAGE_UUID $UUID_COMPUTE2
Add some inventory to the aggregate, like so:
PUT /resource_providers/$STORAGE_UUID/inventories
{
"DISK_GB": {
"total": 1000,
"reserved": 0,
"min_unit": 10,
"max_unit": 1000,
"allocation_ratio": 1.0
}
}
and then the compute nodes will just "auto-heal" themselves, removing
"local" DISK_GB inventories and using the DISK_GB inventory of the
storage pool.
But, again, this code isn't yet merged.
We're making slow but steady progress, but I can't tell you when the
code will fully land, unfortunately.
Best,
-jay
[1] Code that builds upon this patch:
https://review.openstack.org/#/c/407309/
> For example below are my environment details:
>
> NODE A: compute
> NODE B: controller + compute
>
> Following entries are made in resource_providers table:
>
> +---------------------+---------------------+----+--------------------------------------+------------------------+------------+----------+
>
> | created_at | updated_at | id |
> uuid | name |
> generation | can_host |
>
> +---------------------+---------------------+----+--------------------------------------+------------------------+------------+----------+
>
> | 2017-01-30 06:49:17 | 2017-01-30 09:12:06 | 1 |
> 6cbbaf2b-5b8c-4f38-8b34-ee23791056a6 | openstack-VirtualBox |
> 3 | 0 |
>
> | 2017-01-30 09:02:29 | 2017-01-30 09:11:03 | 3 |
> bad71c26-8f36-43ea-abf4-bdbeffda9e54 | openstack-VirtualBox-1 |
> 2 | 0 |
>
> +---------------------+---------------------+----+--------------------------------------+------------------------+------------+----------+
>
>
>
> Following are the entries of inventories tables, of which 89 indicates
> the DISK_GB (size of shared storage):
>
>
>
> +---------------------+---------------------+----+----------------------+-------------------+-------+----------+----------+----------+-----------+------------------+
>
> | created_at | updated_at | id | resource_provider_id
> | resource_class_id | total | reserved | min_unit | max_unit | step_size
> | allocation_ratio |
>
> +---------------------+---------------------+----+----------------------+-------------------+-------+----------+----------+----------+-----------+------------------+
>
> | 2017-01-30 06:49:19 | 2017-01-30 09:10:37 | 1 | 1
> | 0 | 1 | 0 | 1 | 1 | 1
> | 16 |
>
> | 2017-01-30 06:49:19 | 2017-01-30 09:10:37 | 2 | 1
> | 1 | 11210 | 512 | 1 | 11210 | 1
> | 1.5 |
>
> | 2017-01-30 06:49:19 | 2017-01-30 09:10:37 | 3 | 1
> | 2 | 89 | 0 | 1 | 89 | 1
> | 1 |
>
> | 2017-01-30 09:02:31 | 2017-01-30 09:11:03 | 7 | 3
> | 0 | 1 | 0 | 1 | 1 | 1
> | 16 |
>
> | 2017-01-30 09:02:31 | 2017-01-30 09:11:03 | 8 | 3
> | 1 | 10253 | 512 | 1 | 10253 | 1
> | 1.5 |
>
> | 2017-01-30 09:02:31 | 2017-01-30 09:11:03 | 9 | 3
> | 2 | 89 | 0 | 1 | 89 | 1
> | 1 |
>
> +---------------------+---------------------+----+----------------------+-------------------+-------+----------+----------+----------+-----------+------------------+
>
>
>
> However still I am able to create the instances over the size of actual
> shared storage.
>
>
>
> Please let me know how to configure resource_providers in case of shared
> storage servers are used for disk resources.
>
>
>
> Thank you,
>
>
>
> Bhagyashri
>
>
> ______________________________________________________________________
> Disclaimer: This email and any attachments are sent in strictest confidence
> for the sole use of the addressee and may contain legally privileged,
> confidential, and proprietary data. If you are not the intended recipient,
> please advise the sender by replying promptly to this email and then delete
> and destroy this email and any attachments without any further use, copying
> or forwarding.
>
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
More information about the OpenStack-dev
mailing list