What would be the best way/easiest way to limit an amount of a 8core CPU to a
Can I do it in such a way to limit 2 of 8 cores, or does it have to be in a
Im assuming it would be done with zonecfg, any help is appreciated.
Some folks have already responded that you can use pools to do this.
There was also an response about duckhorn which is a project that
includes features that make setting up a pool for a zone very easy.
There are actually several different ways to accomplish this,
depending on what you want to do. Pools is one solution. For
your configuration you would carve out 2 cpus for the zone. One
drawback with pools is that those 2 cpus are no longer available
for other zones, bound to different pools, to use when the one
zone is idle.
Another solution is the fair share scheduler (FSS). You can assign
25 shares to the zone and 75 shares to the global zone (as an
example). FSS only kicks in when there is more work than cpu resources
so you can overprovision the system but still guarantee a minimum
equivalent to two cpus for the one zone and it guarantees the global
zone will get at least the equivalent of 6 cpus and maybe more if the
other zone is not so busy.
Finally, you could use cpu-caps to set a limit. You could set
the cpu-cap to 200 (equivalent to 2 cpus). This doesn't guarantee
a minimum. It sets a maximum but still allows all of the
work to run on all 8 cpus and you can still overprovision the
system if the one zone isn't always using two full cpus.
You can also combine these various solutions in useful ways.
The duckhorn project does try to make the configuration of these
features simpler and better integrated in zonecfg. You might
want to take a look at it or at the zones docs for all of this.
I have a blog about it here: http://blogs.sun.com/jerrysblog/
which might be a good starting point.
zones-discuss mailing list