Thanks Steffen,

The memory capping from the global zone is why we decided to go with Nevada instead of Solaris 10... We are desperately waiting for dedicated memory, Jeff said this is not on the cards for 2007 though...

The problem we are finding with capping memory is that our clients and more importantly other software can see the total memory of the physical server.. ie I know a lot of enterprise software that defaults initial memory usage to a portion of physical memory, unless configured right.. eg my previous post on "java -version" taking 1/64 of the physical memory of the server...

Jason.

Steffen Weiberle wrote:
Hi Jason, coming late into this thread,

Jason Bradfield wrote:
Thanks Jeff.

FYI, These zones will be allocated to different clients each with root access to their zone and running their own software.

Whether you choose to provide root access to the non-global zone users
has no effect on the ability to set the limits via zonecfg in Nevada and
the next update of Solaris 10. They will not be able to increase the cap
from within the non-global zone. (This is not the case with S10 11/06 and
prior, where rcapd runs per zone. A user with sufficient privileges in the
zone could change the cap.)


What we really want and are waiting for is dedicated memory, not capping..

Your workload characteristics and service delivery constraints may be best
served with dedicated memory, and it is independent of whether the zones'
users have root access.

Steffen

Do you know when this will be coming, and will this also include prstat, df, swap etc only displaying the allocated Memory..


Jeff Victor wrote:

Jason Bradfield wrote:

Sorry if this comes through as a duplicate response but I responded from a different email account earlier...
Thanks Bob and Jeff...

Therefore here is my confusion..

 From Bob
* swap: the amount of disk space set aside to copy physical memory to when copying it out of RAM

 From Jeff
set swap= this is VM - the total address space available to the zone

Ok.. to solve my immediate problem 16GB Physical and 16GB disk = total of 32GB Virtual If I were to create 3 zones and wanted to evenly allocate memory to all 3 and the global zone, would this config be ok

zonecfg:host30> add capped-memory
zonecfg:host30:capped-memory> set physical=4G
zonecfg:host30:capped-memory> set swap=8G
zonecfg:host30:capped-memory> end


Memory capping isn't really intended to solve the 'problem' of allocating memory, because usually there isn't a problem. Memory capping is intended to prevent memory hogs (accidental or otherwise) from impacting proper operation of other workloads. This allows you to choose large caps, improving resource usage efficiency.

With some v12n solutions, allocating memory is required. This has the potential of wasting memory - if one virtual server is not using all of its memory, another cannot.

With zones, memory allocation (and its wastefulness) is not necessary. Further, choosing a physical memory cap that is too low will result in unnecessary paging activity, which will significantly reduce performance on that one zone, and also affect performance of other zones, to some extent.

However, if you want to ensure that one zone does not use too much and impact other zones, measure (or estimate) its normal memory usage, and choose a value larger than that. After the zone is running, "prstat -Z" can be used to measure memory usage, both physical and swap.

With all of that in mind, in your situation I would choose much larger numbers than the ones shown above. But without understanding the normal resource consumption of your workloads, I can't guess at good values.

Finally, it usually helps to know that those caps can be changed while the zone is running, using rcapadm from the global zone.


Thanks.

Bob Bownes wrote:


>> Can anyone, in lamens (ex linux) terms explain the differences between
>> virtual/swap/rss/size/physical etc or recomend a good
>> blog/article/document.
>
>I don't know Linux terms, so I'll define terms for this conversation:
>* physical memory: RAM, memory chips
>* VM (virtual memory): the total memory space available, both in RAM and
>   on disk
>


I'll add:

* swap: the amount of disk space set aside to copy physical memory to when copying it out of RAM * rss: Resident Set Size - the part of a process address space which is currently resident in RAM
* size: The total address space used by a process
* physical - various definitions, most common one i've seen is the total amount of RAM in the system. Also refered to as 'real' in some places

And a link I found that might be of some use:

http://www.memorymanagement.org/


>The terms in zonecfg are:
>* set physical=  this is what I am calling "physical memory"
>* set swap= this is VM - the total address space available to the zone
>
>So if you want to limit the zone's processes to 384MB of VM and 128MB of RAM, use:
>
>add capped-memory
>set physical=128m
>set swap=384m
>end

>If you already have added these, you must use "select capped-memory" instead
>of "add capped-memory".
>
>
>Does that help?




_______________________________________________
zones-discuss mailing list
zones-discuss@opensolaris.org

_______________________________________________
zones-discuss mailing list
zones-discuss@opensolaris.org

Reply via email to