← Back to team overview

fuel-dev team mailing list archive

Re: Disk allocation for MongoDB role

 

> Will it be a default disk allocation which a user can change via UI
yes.

> We can do disks_for_mongo = floor (free_disks * mongo_compute_coeff) and
take mongo_compute_coeff from openstack.yaml
this is good idea indeed.


On Thu, Mar 27, 2014 at 7:26 PM, Andrey Danin <adanin@xxxxxxxxxxxx> wrote:

> I agree with your suggestion. Will it be a default disk allocation which a
> user can change via UI? If so, it seems a good solution for now.
> We can do disks_for_mongo = floor (free_disks * mongo_compute_coeff) and
> take mongo_compute_coeff from openstack.yaml
>
>
> On Thu, Mar 27, 2014 at 6:33 PM, Mike Scherbakov <mscherbakov@xxxxxxxxxxxx
> > wrote:
>
>> Sorry,
>> I meant disks_for_mongo = floor (free_disks / 2)
>>
>>
>> On Thu, Mar 27, 2014 at 6:19 PM, Andrey Danin <adanin@xxxxxxxxxxxx>wrote:
>>
>>> What does floor() do? The free_disks variable is an integer and we
>>> cannot round it again.
>>>
>>>
>>> On Thu, Mar 27, 2014 at 4:47 PM, Mike Scherbakov <
>>> mscherbakov@xxxxxxxxxxxx> wrote:
>>>
>>>> My suggestion would be the following for now (let's improve when we get
>>>> more results):
>>>>
>>>>    1. For separated mongodb node
>>>>       1. If there are > 1 disk
>>>>          1. use 1 disk for os, all other disks for mongodb
>>>>       2. if 1 disk
>>>>          1. Use default os calculator, leave rest of the space for
>>>>          mongodb
>>>>       2. For combination of mongodb with compute
>>>>       1. free_disks = disks - 1 (1 is for os); disks_for_mongo = floor
>>>>       (free_disks), rest for virtual storage, and first disk for both os &
>>>>       virtual storage
>>>>
>>>> So idea is to allocate separated disks for mongodb where possible. At
>>>> the same time, still leaving space for virtual storage and other roles.
>>>>
>>>> What do you think?
>>>>
>>>>
>>>> On Wed, Mar 26, 2014 at 6:59 PM, Maksim Mazur <mmaxur@xxxxxxxxxxxx>wrote:
>>>>
>>>>> Hi!
>>>>>
>>>>> >>disk allocation scheme should be researched by the team implementing
>>>>> the feature. In this case, hardware requirements information and disk
>>>>> allocation scheme draft should be written down into the blueprint. Only
>>>>> after this is done, we can start discussing the particular implementation.
>>>>>
>>>>> As far as I know "team" implementing this feature is the only one
>>>>> person. And I don not have hardware to make performance tests right now.
>>>>> And I'm little bit overloaded on Mirantis OpenStack Express project.
>>>>>
>>>>> As temporary solution I can  propose the following solution.
>>>>>
>>>>> 1. For now we leave disk allocation as is.
>>>>> 2. On MOE we have hardware to test so if Ceilometer will be included
>>>>> in next release we will be able to do full testing in real hardware up to
>>>>> 20 hardware nodes.
>>>>> 3. After tests I will be able to give any recommendations about disks
>>>>> allocation.
>>>>>
>>>>>
>>>>> Otherwise I need help to do testing and create design documents.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Wed, Mar 26, 2014 at 4:08 PM, Mike Scherbakov <
>>>>> mscherbakov@xxxxxxxxxxxx> wrote:
>>>>>
>>>>>> Why can't we track storage for mongo as just one of the tasks in
>>>>>> existing blueprint for ceilometer-mongodb? It looks to me pretty granular
>>>>>> one. More over, I think we need to keep such details in one single design
>>>>>> document of the bigger story.
>>>>>>
>>>>>> There was a document with numbers regarding disk consumption, not
>>>>>> sure about IO. Max, do you have this info? Based on disk IO & space
>>>>>> requirements we are all can propose and come to an agreement in logic for
>>>>>> disk partitioning. For example, if IO is high, we may always require
>>>>>> separated disk(s) for it. There is might be recommendation on fs type for
>>>>>> mongodb as well. We mongodb is collacated with some other roles, such as
>>>>>> compute, we will need to come up with logic how to distribute disk space
>>>>>> between "virtual storage" LVM and mongodb (50/50 or other ratio?).
>>>>>>
>>>>> As far as I know data amount  in ceilometer DB depends on number of
>>>>> VMs on stack so it is impossible to predict how much space will we need.
>>>>>
>>>>>
>>>>>
>>>>>> Thanks,
>>>>>> On Mar 26, 2014 5:43 PM, "Bogdan Dobrelya" <bdobrelia@xxxxxxxxxxxx>
>>>>>> wrote:
>>>>>>
>>>>>>> On 03/26/2014 02:15 PM, Maksim Mazur wrote:
>>>>>>> > Hi!
>>>>>>> >
>>>>>>> > I need to create disk allocation rule for MongoDB role. (MongoDB is
>>>>>>> > NoSQL backend for Ceilometer)
>>>>>>> >
>>>>>>> >
>>>>>>> > I have no experience with high-loaded MongoDB single instances or
>>>>>>> > ReplicaSets.
>>>>>>> >
>>>>>>> > For the first view having a dedicated drive or raid array for
>>>>>>> MondoDB
>>>>>>> > data looks like good idea for large installations but it is
>>>>>>> overkill for
>>>>>>> > small stacks.
>>>>>>> > And I'm not sure is it possible to use dedicated drive if MongoDB
>>>>>>> role
>>>>>>> > applyed on Controller.
>>>>>>> >
>>>>>>> >
>>>>>>> > Could you please help me with task?
>>>>>>> >
>>>>>>> >
>>>>>>> > Best Regards,
>>>>>>> > Max Mazur.
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>> >
>>>>>>>
>>>>>>> Hi all.
>>>>>>>
>>>>>>> I suggest to follow the existing guideline Fuel UI provides for disks
>>>>>>> configuration for nodes. As a start, you could create a new
>>>>>>> blueprint to
>>>>>>> define new storage ("Mongo DB Storage") for Nailgun UI to be used by
>>>>>>> Fuel on provision stage.
>>>>>>>
>>>>>>> There are a similar tasks with "Openstack DB Storage" (in TODO list)
>>>>>>> and
>>>>>>> separated "Logs Storage" ( see
>>>>>>>
>>>>>>> https://etherpad.openstack.org/p/manage-logs-with-free-space-consideration
>>>>>>> for BP
>>>>>>>
>>>>>>> https://blueprints.launchpad.net/fuel/+spec/manage-logs-with-free-space-consideration
>>>>>>> )
>>>>>>>
>>>>>>> Note: the blueprint was not approved yet, but I believe some patterns
>>>>>>> could be reused for Mongo/Openstack DB storages as well... E.g. the
>>>>>>> sections 'Fuel-UI requirements', 'Planning disk partitions, RAID
>>>>>>> type,
>>>>>>> logical volume for Remote Logs Storage'.
>>>>>>>
>>>>>>> --
>>>>>>> Best regards,
>>>>>>> Bogdan Dobrelya,
>>>>>>> Skype #bogdando_at_yahoo.com
>>>>>>> Irc #bogdando
>>>>>>>
>>>>>>> --
>>>>>>> Mailing list: https://launchpad.net/~fuel-dev
>>>>>>> Post to     : fuel-dev@xxxxxxxxxxxxxxxxxxx
>>>>>>> Unsubscribe : https://launchpad.net/~fuel-dev
>>>>>>> More help   : https://help.launchpad.net/ListHelp
>>>>>>>
>>>>>>
>>>>>
>>>>> Best Regards,
>>>>> Max Mazur
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Mike Scherbakov
>>>> #mihgen
>>>>
>>>> --
>>>> Mailing list: https://launchpad.net/~fuel-dev
>>>> Post to     : fuel-dev@xxxxxxxxxxxxxxxxxxx
>>>> Unsubscribe : https://launchpad.net/~fuel-dev
>>>> More help   : https://help.launchpad.net/ListHelp
>>>>
>>>>
>>>
>>>
>>> --
>>> Andrey Danin
>>> adanin@xxxxxxxxxxxx
>>> skype: gcon.monolake
>>>
>>
>>
>>
>> --
>> Mike Scherbakov
>> #mihgen
>>
>
>
>
> --
> Andrey Danin
> adanin@xxxxxxxxxxxx
> skype: gcon.monolake
>



-- 
Mike Scherbakov
#mihgen

Follow ups

References