[jboss-jira] [JBoss JIRA] (WFCORE-200) Ability to launch server instances under different Linux cgroups

Brian Stansberry (JIRA) issues at jboss.org
Tue Dec 22 17:25:00 EST 2015


    [ https://issues.jboss.org/browse/WFCORE-200?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13143850#comment-13143850 ] 

Brian Stansberry commented on WFCORE-200:
-----------------------------------------

I'm not too keen on platform specific stuff as it puts us in the mode of having to deal with the fact that things provided by external parties over which we have no control may no longer work. For example, recently I've had to waste a fair amount of time dealing with the fact that "permgen" is no longer a useful concept in the server VM configuration.

Granted, the same situation applies for any project we integrate via a subsystem, but typically before shipping a subsystem as part of WildFly, and even more so for EAP, we have a decent sense that we'll be able to compatibly manage that subsystem.

> Ability to launch server instances under different Linux cgroups
> ----------------------------------------------------------------
>
>                 Key: WFCORE-200
>                 URL: https://issues.jboss.org/browse/WFCORE-200
>             Project: WildFly Core
>          Issue Type: Feature Request
>          Components: Server
>         Environment: Linux specific
>            Reporter: James Livingston
>            Assignee: Jason Greene
>
> Linux supports 'cgroups' which allows certain limitations to be applied to a group of processes, such as binding to specific CPU cores or apply CPU usage limits. It would be nice to be able to have a server group or specific server to be launched under a different cgroup so that more fine grained limits can be applied than to the whole host. Obviously this would be Linux specific.
> If the cgexec command is available, using "cgexec -g cpu:groupname java ..." rather than "java ..." allows the running of the process under a different cpu cgroup.  It should be possible to do this now by pointing it to a shell script rather than the actual java executable, and having the script identify the server from arguments, and then invoking the real java executable via cgexec.
> The 'cgexec' tool uses the native code cglib, but I believe that if we just need to put processes under a control group, it is very simple -
> just write the process ID to /sys/fs/cgroup/HIERARCHY/GROUPNAME/tasks  (where HIERARCHY is 'cpu', 'cpu,cpuacct' or other appropriate thing).



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jboss-jira mailing list