I would focus more on the swap/page rates. If you are swapping/paging because you have exhausted real memory, then you will start to feel the performance cost of swapping/paging. What output do you get from
vmstat? You might try it with time & count paramters such as
vmstat 10 5 giving you ten second intervals for a count of five, although the first is usually counted since last boot.
The columns you are looking for are under the
swap heading, probably the
si &
so sub-headings, although the columns are usually skewed.
- Swap in (si) is recalling from disk memory that was still needed, but least active.
- Swap out (so) is writing to disk memory that is still needed, but least active.
Does this reveal anything?
You don't say what the services are that are degraded. If you have a database, that will have a configuration file where you can adjust various parameters, including memory allocations. If set too low, these can cause performance problems within the database. If set too high, they can cause problems for the OS. Most people assume that larger is better, but it has to be within the confines of the server you have. One item in particular is often referred to as resident or pinned memory which cannot be swapped. This is for the performance of the database but if you set it too high there may be insufficient left for the OS to perform other normal work, which can leave your database degraded too, depending on what is happening.
If you are worrying about the VMWare host, have you over-provisioned the memory of your guests? (if that is even possible) It's the same consideration for a server with a database on it in a way.
I hope that this gives you something to work with.
Robin