@Justin Take a look at this answer
https://stackoverflow.com/a/22762558/1387612 we are using similar approach
to change CPU/MEM seen by JVM running in a container.

wt., 7.11.2017, 17:06 użytkownik Justin Lee <[email protected]> napisał:

> It may also depend on the version of Java you're using - depending on the
> version of Java that you're using, they may or may not properly pick up the
> cgroup settings vs. the total number of cores available.
>
> I don't know which version(s) of Java work, but I think the later versions
> have better support.
>
> Thanks,
> Justin Lee
>
> On Tue, Nov 7, 2017 at 10:18 AM, deadbrain <[email protected]>
> wrote:
>
>> Thanks Thodoris for you help I will need to check with people managing
>> the infrastructure to see what parameters are passed to our agents...
>>
>> Thanks again for the tips
>>
>> Regards
>>
>>
>>
>> On 11/07/2017 04:10 PM, Thodoris Zois wrote:
>>
>>> Hello,
>>>
>>> I don't really know if i can help you but i used Docker containers in
>>> Mesos with isolation and everything was perfect. So are you using Mesos
>>> containerizer? Did you enable cgroups/mem, cgroups/cpu on each agent? As it
>>> concerns CPU, cgroups do not limit the anount of CPU if its the only
>>> running application. In order to limit exactly CPU you need to enable cfs
>>> on each agent.
>>>
>>> Thodoris
>>>
>>> On 7 Nov 2017, at 15:28, deadbrain <[email protected]> wrote:
>>>>
>>>> Hi all,
>>>>
>>>> I expect to be at the right place for my question...
>>>>
>>>> We are hosting Java micro services exposed as docker containers (Spring
>>>> Boot applications inside) inside Mesos....
>>>>
>>>> We face 2 major problems:
>>>>
>>>> - hardware isolation (number of cores seen by Java Virtual Machines)
>>>> makes our applications go crazy because JVM sees all cores and not the only
>>>> ones given in the Mesos config parameters as a consequence GC heuristics
>>>> are wrong and  some config values in some libraries are false too (Undertow
>>>> web server spawns 8*number of cores as workers thread pool)...
>>>>
>>>> In Linux since the 2.4.19 kernel we have the per process namespace
>>>> option to limit the hardware vision of any container... What would  be the
>>>> solution on Mesos ?
>>>>
>>>>
>>>> - CPU starvation : some micro services do not seem to have the required
>>>> CPU time to work, what kind of advices could you give me to have a better
>>>> understanding regarding this problem....
>>>>
>>>> Statement: we can see very long partial GC times (about 4 seconds) ,
>>>> standard times would be about 50ms....
>>>>
>>>>
>>>> Thanks for your help
>>>>
>>>> Kind regards
>>>>
>>>> Jerome
>>>>
>>>>
>>
>

Reply via email to