Solved

How can I track memory utilisation on a Solaris10 server

Posted on 2008-10-09
5
894 Views
Last Modified: 2013-12-27
I have a Solaris10 server running two non-global zones. OVPA is running on the global zone and tells me that the memory utilisation is climbing day on day. However when I do a 'ps -elfZ' over a period of time the SZ column does not show the same increase. In fact day on day it is broadly the same. The increase may well be the buffer cache as 'ps' will not be counting this, so how might I be able to prove this.
What will happen when memory utilisation (according to OVPA) reaches 100%.
Oracle is running on one of the zones.
0
Comment
Question by:wasfg01
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
5 Comments
 
LVL 5

Expert Comment

by:awa2008
ID: 22676778
Hello,

You can use : prstat -Z

you see details by zone  like this example

but on this system you have no non global zone only global zone zoneid 0

but in your case you must see other line by zone

   PID USERNAME  SIZE   RSS STATE  PRI NICE      TIME  CPU PROCESS/NLWP
  1253 http       16M   13M sleep   59    0   0:04:19 0.0% httpd/29
 27204 root     3608K 3600K cpu0    59    0   0:00:00 0.0% prstat/1
  1238 root     5920K 3440K sleep   59    0   0:01:31 0.0% rotatelogs/1
  1252 http       16M   13M sleep   59    0   0:04:26 0.0% httpd/29
  1251 http       16M   13M sleep   59    0   0:04:33 0.0% httpd/29
  1313 noaccess  178M  102M sleep   59    0   0:31:15 0.0% java/39
 27200 root     3168K 2768K sleep   59    0   0:00:00 0.0% bash/1
  1361 root       16M   14M sleep   59    0   0:11:51 0.0% ovcd/28
   121 daemon   4664K 3664K sleep   59    0   0:00:03 0.0% kcfd/5
   291 root     2088K 1232K sleep   59    0   0:00:00 0.0% smcboot/1
 26450 root     2568K 2168K sleep   59    0   0:00:00 0.0% ttymon/1
   270 root     2512K 2008K sleep   59    0   0:00:00 0.0% ttymon/1
   258 root     2176K 1672K sleep   59    0   0:00:00 0.0% sac/1
  1231 root     9248K 6064K sleep   59    0   0:01:17 0.0% httpd/1
   292 root     2088K 1232K sleep   59    0   0:00:00 0.0% smcboot/1
   254 root     7024K 5392K sleep   59    0   0:00:17 0.0% inetd/4
   142 root     6144K 5584K sleep   59    0   0:01:17 0.0% nscd/31
   377 root     5152K 1848K sleep   59    0   0:00:00 0.0% automountd/2
   252 daemon   2464K 2080K sleep   60  -20   0:00:00 0.0% lockd/2
   248 daemon   2872K 2544K sleep   59    0   0:00:00 0.0% statd/1
   132 root     4712K 4128K sleep   59    0   0:00:01 0.0% picld/6
   241 daemon   2872K 2360K sleep   59    0   0:00:00 0.0% rpcbind/1
   212 root     1440K 1032K sleep   59    0   0:00:00 0.0% efdaemon/1
   120 root     3592K 2912K sleep   59    0   0:00:00 0.0% devfsadm/7
ZONEID    NPROC  SWAP   RSS MEMORY      TIME  CPU ZONE
     0       81  300M  423M   2.6%   1:35:56 0.2% global



You can use dtrace too some scripts you can use for your probleme  :

http://prefetch.net/articles/solaris.dtracetopten.html

http://prefetch.net/articles/dtracecookbook.html


http://www.brendangregg.com/dtrace.html#DTraceToolkit





I hope that help you

Regards
0
 

Author Comment

by:wasfg01
ID: 22677186
prstat -Z is giving me similar numbers to ps -elfZ. I am worried that when memory util (according to OVPS) reaches 100% we will see lots of bad paging going on, annonymous and executables, which will slow things down considerably.
I doubt I will get authority to run 3rd party scripts on this box unfortunately, which I have to say look very useful.
Can I be sure that it is the filesystem buffer cache that is getting bigger and therefore doing what it is supposed to do?
0
 
LVL 5

Assisted Solution

by:awa2008
awa2008 earned 60 total points
ID: 22677266
hello ,

dtrace is a standard tools of solaris10

it is just script you copy and paste

about solaris filesystem cache you can found maybe info at this url :

http://www.solarisinternals.com/si/reading/sunworldonline/swol-07-1999/swol-07-filesystem3.html

but you should look at your appli oracle for see what is the root cause of probleme

maybe some process oracle go to infinte loop


Regards
0
 
LVL 4

Accepted Solution

by:
urgoll earned 65 total points
ID: 22678348
Regarding your concern:
    The increase may well be the buffer cache as 'ps' will not be counting this, so how might I be able to prove this.

The tool you need is mdb. Look at snippet for a sample output for a server with 8GB of memory, where the kernel uses 3355MB, the page cache (your buffer cache) uses 153MB and there is 1939MB of free memory.

Also note that if you are using ZFS in Solaris 10, the ZFS buffer is accounted as kernel memory, not page cache (hence the very large 3355MB of kernel memory in the sample output). To get more insight into the ZFS ARC (as the ZFS buffer is called), there's a handy script at:
http://cuddletech.com/arc_summary.html

Note however that 'free' memory is effectively wasted, as it is not working for you (in the same way that money in your pocket is not generating interests). Solaris tries to minimize free memory (up to a point) by caching block device access so as to speed-up future disk access. Such buffers can be freed very easily should an application request more memory, so it is not a problem.

Hope this helps,
Christophe
# mdb -k
Loading modules: [ unix krtld genunix specfs dtrace cpu.AuthenticAMD.15 ufs md ip sctp usba fcp 
fctl lofs zfs random nfs crypto fcip cpc logindmux ptm ipc ]
> ::memstat
Page Summary                Pages                MB  %Tot
------------     ----------------  ----------------  ----
Kernel                     859062              3355   41%
Anon                       675625              2639   32%
Exec and libs                7994                31    0%
Page cache                  39319               153    2%
Free (cachelist)           110881               433    5%
Free (freelist)            385592              1506   19%
 
Total                     2078473              8119
Physical                  2049122              8004

Open in new window

0
 

Author Closing Comment

by:wasfg01
ID: 31504579
Thanks guys. This turned out to be more complex than I first thought. Appreciate your time.
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Attention: This article will no longer be maintained. If you have any questions, please feel free to mail me. jgh@FreeBSD.org Please see http://www.freebsd.org/doc/en_US.ISO8859-1/articles/freebsd-update-server/ for the updated article. It is avail…
I promised to write further about my project, and here I am.  First, I needed to setup the Primary Server.  You can read how in this article: Setup FreeBSD Server with full HDD encryption (http://www.experts-exchange.com/OS/Unix/BSD/FreeBSD/A_3660-S…
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question