Messages in this thread | | | Date | Mon, 14 Jul 2008 10:44:43 -0400 | From | David Collier-Brown <> | Subject | Re: [RFC] How to handle the rules engine for cgroups |
| |
Vivek Goyal wrote: > If admin has decided to group applications and has written the rules for > it then applications should not know anything about grouping. So I think > application writing an script for being placed into the right group should > be out of question. Now how does an admin write a wrapper around existing > application without breaking anything else.
In the Solaris world, processes are placed into cgroups (projects) by one of two mechanisms:
1) inheritance, with everything I create in my existing project. To get this started, there is a mechanism under login/getty/whatever reading the /etc/projects file and, for example, tossing user davecb into a "user.davecb" project.
2) explicit placement with newtask, which starts a program or moves a process into a project/cgroup
I have a "bg" project which I use for limiting resource consumption of background jobs, and a background command which either starts or moves jobs, thusly:
case "$1" in [0-9]*) # It's a pid newtask -p bg -c $1 ;; *) # It's a command-line newtask -p bg "$@" & ;; esac
A rules engine would be more useful for managing workloads once they're assigned, as IBM does on the mainframe with WLM and goal-directed resource management. (They're brilliant in this area, by the way, so I'd be inclined to steal ideas from them (;-))
--dave -- David Collier-Brown | Always do right. This will gratify Sun Microsystems, Toronto | some people and astonish the rest davecb@sun.com | -- Mark Twain (905) 943-1983, cell: (647) 833-9377, (800) 555-9786 x56583 bridge: (877) 385-4099 code: 506 9191#
| |