Re: [ceph-users] Ceph and Compute on same hardware?

2014-11-12 Thread gaoxingxing

I think you may also consider risk like kernel crashes etc,since storage and 
compute node are sharing the same box.
Date: Wed, 12 Nov 2014 14:51:47 +
From: pieter.koo...@me.com
To: ceph-users@lists.ceph.com
Subject: Re: [ceph-users] Ceph and Compute on same hardware?

Hi,
Thanks for the replies. Likely will not choose this method but wanted to make 
sure that it was a good technical reason rather than just a "best practice". I 
did not quite think of "conntracker" at the time so this is a good one to 
consider.
Thanks
Pieter
On 12 November 2014 14:30, Haomai Wang  wrote:
Actually, our production cluster(up to ten) all are that ceph-osd ran

on compute-node(KVM).



The primary action is that you need to constrain the cpu and memory.

For example, you can alloc a ceph cpu-set and memory group, let

ceph-osd run with it within limited cores and memory.



The another risk is the network. Because compute-node and ceph-osd

shared the same kernel network stack, it exists some risks that VM may

ran out of network resources such as conntracker in netfilter

framework.



On Wed, Nov 12, 2014 at 10:23 PM, Mark Nelson  wrote:

> Technically there's no reason it shouldn't work, but it does complicate

> things.  Probably the biggest worry would be that if something bad happens

> on the compute side (say it goes nuts with network or memory transfers) it

> could slow things down enough that OSDs start failing heartbeat checks

> causing ceph to go into recovery and maybe cause a vicious cycle of

> nastiness.

>

> You can mitigate some of this with cgroups and try to dedicate specific

> sockets and memory banks to Ceph/Compute, but we haven't done a lot of

> testing yet afaik.

>

> Mark

>

>

> On 11/12/2014 07:45 AM, Pieter Koorts wrote:

>>

>> Hi,

>>

>> A while back on a blog I saw mentioned that Ceph should not be run on

>> compute nodes and in the general sense should be on dedicated hardware.

>> Does this really still apply?

>>

>> An example, if you have nodes comprised of

>>

>> 16+ cores

>> 256GB+ RAM

>> Dual 10GBE Network

>> 2+8 OSD (SSD log + HDD store)

>>

>> I understand that Ceph can use a lot of IO and CPU in some cases but if

>> the nodes are powerful enough does it not make it an option to run

>> compute and storage on the same hardware to either increase density of

>> compute or save money on additional hardware?

>>

>> What are the reasons for not running Ceph on the Compute nodes.

>>

>> Thanks

>>

>> Pieter

>>

>>

>> ___

>> ceph-users mailing list

>> ceph-users@lists.ceph.com

>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com

>>

>

> ___

> ceph-users mailing list

> ceph-users@lists.ceph.com

> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com







--

Best Regards,



Wheat

___

ceph-users mailing list

ceph-users@lists.ceph.com

http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com




___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com  
  ___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


Re: [ceph-users] Ceph and Compute on same hardware?

2014-11-12 Thread Robert van Leeuwen
> A while back on a blog I saw mentioned that Ceph should not be run on compute 
> nodes and in the general
> sense should be on dedicated hardware. Does this really still apply?

In my opinion storage needs to be rock-solid.
Running other (complex) software on a Ceph node increases the chances of stuff 
falling over.
Worst-case a cascading effect takes down you whole storage platform.
If your storage platform bites the dust your whole compute cloud also falls 
over (assuming you boot instances from Ceph).

Troubleshooting issues (especially those that have no obvious cause)  becomes 
more complex having to rule out more potential causes.

Not saying it can not work perfectly fine.
I'd rather just not take any chances with the storage system...

Cheers,
Robert van Leeuwen
___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


Re: [ceph-users] Ceph and Compute on same hardware?

2014-11-12 Thread Pieter Koorts
Hi,

Thanks for the replies. Likely will not choose this method but wanted to
make sure that it was a good technical reason rather than just a "best
practice". I did not quite think of "conntracker" at the time so this is a
good one to consider.

Thanks

Pieter

On 12 November 2014 14:30, Haomai Wang  wrote:

> Actually, our production cluster(up to ten) all are that ceph-osd ran
> on compute-node(KVM).
>
> The primary action is that you need to constrain the cpu and memory.
> For example, you can alloc a ceph cpu-set and memory group, let
> ceph-osd run with it within limited cores and memory.
>
> The another risk is the network. Because compute-node and ceph-osd
> shared the same kernel network stack, it exists some risks that VM may
> ran out of network resources such as conntracker in netfilter
> framework.
>
> On Wed, Nov 12, 2014 at 10:23 PM, Mark Nelson 
> wrote:
> > Technically there's no reason it shouldn't work, but it does complicate
> > things.  Probably the biggest worry would be that if something bad
> happens
> > on the compute side (say it goes nuts with network or memory transfers)
> it
> > could slow things down enough that OSDs start failing heartbeat checks
> > causing ceph to go into recovery and maybe cause a vicious cycle of
> > nastiness.
> >
> > You can mitigate some of this with cgroups and try to dedicate specific
> > sockets and memory banks to Ceph/Compute, but we haven't done a lot of
> > testing yet afaik.
> >
> > Mark
> >
> >
> > On 11/12/2014 07:45 AM, Pieter Koorts wrote:
> >>
> >> Hi,
> >>
> >> A while back on a blog I saw mentioned that Ceph should not be run on
> >> compute nodes and in the general sense should be on dedicated hardware.
> >> Does this really still apply?
> >>
> >> An example, if you have nodes comprised of
> >>
> >> 16+ cores
> >> 256GB+ RAM
> >> Dual 10GBE Network
> >> 2+8 OSD (SSD log + HDD store)
> >>
> >> I understand that Ceph can use a lot of IO and CPU in some cases but if
> >> the nodes are powerful enough does it not make it an option to run
> >> compute and storage on the same hardware to either increase density of
> >> compute or save money on additional hardware?
> >>
> >> What are the reasons for not running Ceph on the Compute nodes.
> >>
> >> Thanks
> >>
> >> Pieter
> >>
> >>
> >> ___
> >> ceph-users mailing list
> >> ceph-users@lists.ceph.com
> >> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
> >>
> >
> > ___
> > ceph-users mailing list
> > ceph-users@lists.ceph.com
> > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
>
>
> --
> Best Regards,
>
> Wheat
> ___
> ceph-users mailing list
> ceph-users@lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


Re: [ceph-users] Ceph and Compute on same hardware?

2014-11-12 Thread Andrey Korolyov
On Wed, Nov 12, 2014 at 5:30 PM, Haomai Wang  wrote:
> Actually, our production cluster(up to ten) all are that ceph-osd ran
> on compute-node(KVM).
>
> The primary action is that you need to constrain the cpu and memory.
> For example, you can alloc a ceph cpu-set and memory group, let
> ceph-osd run with it within limited cores and memory.
>
> The another risk is the network. Because compute-node and ceph-osd
> shared the same kernel network stack, it exists some risks that VM may
> ran out of network resources such as conntracker in netfilter
> framework.
>
> On Wed, Nov 12, 2014 at 10:23 PM, Mark Nelson  wrote:
>> Technically there's no reason it shouldn't work, but it does complicate
>> things.  Probably the biggest worry would be that if something bad happens
>> on the compute side (say it goes nuts with network or memory transfers) it
>> could slow things down enough that OSDs start failing heartbeat checks
>> causing ceph to go into recovery and maybe cause a vicious cycle of
>> nastiness.
>>
>> You can mitigate some of this with cgroups and try to dedicate specific
>> sockets and memory banks to Ceph/Compute, but we haven't done a lot of
>> testing yet afaik.
>>
>> Mark
>>
>>
>> On 11/12/2014 07:45 AM, Pieter Koorts wrote:
>>>
>>> Hi,
>>>
>>> A while back on a blog I saw mentioned that Ceph should not be run on
>>> compute nodes and in the general sense should be on dedicated hardware.
>>> Does this really still apply?
>>>
>>> An example, if you have nodes comprised of
>>>
>>> 16+ cores
>>> 256GB+ RAM
>>> Dual 10GBE Network
>>> 2+8 OSD (SSD log + HDD store)
>>>
>>> I understand that Ceph can use a lot of IO and CPU in some cases but if
>>> the nodes are powerful enough does it not make it an option to run
>>> compute and storage on the same hardware to either increase density of
>>> compute or save money on additional hardware?
>>>
>>> What are the reasons for not running Ceph on the Compute nodes.
>>>
>>> Thanks
>>>
>>> Pieter
>>>
>>>
>>> ___
>>> ceph-users mailing list
>>> ceph-users@lists.ceph.com
>>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>>>
>>
>> ___
>> ceph-users mailing list
>> ceph-users@lists.ceph.com
>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>
>
>
> --
> Best Regards,
>
> Wheat
> ___
> ceph-users mailing list
> ceph-users@lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


Yes, the essential part is a resource management, which can neither be
dynamic or static. In Flops we had implemented dynamic resource
control which allows to pack VMs and OSDs more densely than static
cg-based jails can allow (and it requires deep orchestration
modifications for every open source cloud orchestrator,
unfortunately). As long as you are able to manage strong traffic
isolation for storage and vm segment, there are absolutely no problem
(it can be static limits from linux-qos or tricky flow management for
OpenFlow, depends on what your orchestration allows). The possibility
of putting together compute and storage roles without significant
impact to performance characteristics was one of key features which
led our selection to Ceph as a storage backend three years ago.
___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


Re: [ceph-users] Ceph and Compute on same hardware?

2014-11-12 Thread Haomai Wang
Actually, our production cluster(up to ten) all are that ceph-osd ran
on compute-node(KVM).

The primary action is that you need to constrain the cpu and memory.
For example, you can alloc a ceph cpu-set and memory group, let
ceph-osd run with it within limited cores and memory.

The another risk is the network. Because compute-node and ceph-osd
shared the same kernel network stack, it exists some risks that VM may
ran out of network resources such as conntracker in netfilter
framework.

On Wed, Nov 12, 2014 at 10:23 PM, Mark Nelson  wrote:
> Technically there's no reason it shouldn't work, but it does complicate
> things.  Probably the biggest worry would be that if something bad happens
> on the compute side (say it goes nuts with network or memory transfers) it
> could slow things down enough that OSDs start failing heartbeat checks
> causing ceph to go into recovery and maybe cause a vicious cycle of
> nastiness.
>
> You can mitigate some of this with cgroups and try to dedicate specific
> sockets and memory banks to Ceph/Compute, but we haven't done a lot of
> testing yet afaik.
>
> Mark
>
>
> On 11/12/2014 07:45 AM, Pieter Koorts wrote:
>>
>> Hi,
>>
>> A while back on a blog I saw mentioned that Ceph should not be run on
>> compute nodes and in the general sense should be on dedicated hardware.
>> Does this really still apply?
>>
>> An example, if you have nodes comprised of
>>
>> 16+ cores
>> 256GB+ RAM
>> Dual 10GBE Network
>> 2+8 OSD (SSD log + HDD store)
>>
>> I understand that Ceph can use a lot of IO and CPU in some cases but if
>> the nodes are powerful enough does it not make it an option to run
>> compute and storage on the same hardware to either increase density of
>> compute or save money on additional hardware?
>>
>> What are the reasons for not running Ceph on the Compute nodes.
>>
>> Thanks
>>
>> Pieter
>>
>>
>> ___
>> ceph-users mailing list
>> ceph-users@lists.ceph.com
>> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com
>>
>
> ___
> ceph-users mailing list
> ceph-users@lists.ceph.com
> http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com



-- 
Best Regards,

Wheat
___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


Re: [ceph-users] Ceph and Compute on same hardware?

2014-11-12 Thread Mark Nelson
Technically there's no reason it shouldn't work, but it does complicate 
things.  Probably the biggest worry would be that if something bad 
happens on the compute side (say it goes nuts with network or memory 
transfers) it could slow things down enough that OSDs start failing 
heartbeat checks causing ceph to go into recovery and maybe cause a 
vicious cycle of nastiness.


You can mitigate some of this with cgroups and try to dedicate specific 
sockets and memory banks to Ceph/Compute, but we haven't done a lot of 
testing yet afaik.


Mark

On 11/12/2014 07:45 AM, Pieter Koorts wrote:

Hi,

A while back on a blog I saw mentioned that Ceph should not be run on
compute nodes and in the general sense should be on dedicated hardware.
Does this really still apply?

An example, if you have nodes comprised of

16+ cores
256GB+ RAM
Dual 10GBE Network
2+8 OSD (SSD log + HDD store)

I understand that Ceph can use a lot of IO and CPU in some cases but if
the nodes are powerful enough does it not make it an option to run
compute and storage on the same hardware to either increase density of
compute or save money on additional hardware?

What are the reasons for not running Ceph on the Compute nodes.

Thanks

Pieter


___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com



___
ceph-users mailing list
ceph-users@lists.ceph.com
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com