Although the next release of Solaris 10 (mid-year 2007) will have the
wonderful new features that Jerry mentions, until then, here is an example of
commands to use. They create two pools and associate one zone with each pool.
lloy0076 wrote:
Howdy,
* http://docs.sun.com/app/docs/doc/817-1592/6mhahuoli?a=view#gdoqj
On a system that has zones enabled, a non-global zone can be associated
with one resource pool, although the pool need not be exclusively
assigned to a particular zone. Moreover, you cannot bind individual
processes in non-global zones to a different pool by using the poolbind
command from the global zone. To associate a non-global zone with a
pool, see Configuring, Verifying, and Committing a Zone.
---
Ths implies that if you know how to limit/configure a resource pool,
you've probably answered the question you're asking.
If I understand it, you'd:
* configure a resource pool
> * set what limits (or lack of limits) you want it
global# svcadm enable pools pools/dynamic
global# pooladm -s
Create a file "poolfile" which specifies the two processor sets and pools,
and tells Solaris to try to keep both pools <80%, but give priority to
apppset. More specifically, if CPU utilization of apppset is >80%, try to
bring it under 80% by shifting a CPU from webpset to apppset, within the
limits of minimum and maximum CPUs specified. It also tells Solaris that if
the webpset CPU utilization is >80%, *and* apppset CPU utilization is <80%, it
should shift a CPU from apppset to webpset, again within the CPU limits specified.
=================
create pool webpool
create pool apppool
create pset webpset (uint pset.min=1; uint pset.max=2)
create pset appset (uint pset.min=2; uint pset.max=3)
associate pool webpool (pset webset)
associate pool apppool (pset appset)
modify pset webpset (string pset.pool.objectives="utilization<80")
modify pool webpool (int pset.pool.importance=1)
modify pset apppset (string pset.pool.objectives="utilization<80")
modify pool apppool (int pset.pool.importance=2)
modify system default (string system.pool.objectives="wt=load")
=================
Use that file:
global# poolcfg -f poolfile
Verify the config:
global# poolcfg -c info
Save the now-active config for next boot:
global# pooladm -c
* associate it with a zone [or project or task etc]
global# zonecfg -z webzone
set zone.pool=webpool
exit
global# zonecfg -z appzone
set zone.pool=apppool
exit
Now... wasn't Jerry's 'duckhorn' method easier? ;-)
--------------------------------------------------------------------------
Jeff VICTOR Sun Microsystems jeff.victor @ sun.com
OS Ambassador Sr. Technical Specialist
Solaris 10 Zones FAQ: http://www.opensolaris.org/os/community/zones/faq
--------------------------------------------------------------------------
_______________________________________________
zones-discuss mailing list
[email protected]