Cloud Director Appliance swapping observed
search cancel

Cloud Director Appliance swapping observed

book

Article ID: 391683

calendar_today

Updated On:

Products

VMware Cloud Director

Issue/Introduction

  • Cloud Director cell is swapping to disk.
  • Cloud Director cell keeps running out of swap space.
  • VCD cell uses swap space even though there is memory to use.

Environment

  • VMware Cloud Director 10.6
  • VMware Cloud Director 10.5.1.1

Cause

Swapping is not an issue but an expected element of OS memory utilization.

If the OS deems that there are stale pages consuming valuable memory, it will swap these out to disk to allow better utilization of existing memory.

Resolution

The only time swapping should be a concern would be 

  • All existing memory is consumed and we are relying on swap memory.
  • Performance degradation is observed.

If you observe swapping and observe either of the above, contact Broadcom Support and note this Article ID (391683) in the problem description.

For more information, see Creating and managing Broadcom support cases .

When opening the case, please include the following information:

  1. From the affected nodes at the time of the issue:
    1. vmstat 3 100 
    2. free -h
    3. free
    4. top

  2. SSH into the affected node.Connect to the database with 'sudo -u postgres psql vcloud;' and check for postgres related activities/processes:
    select pid,query,query_start, state, backend_start, now() - pg_stat_activity.query_start from pg_stat_activity WHERE backend_xmin IS NOT NULL OR backend_xid IS NOT NULL ORDER BY greatest(age(backend_xmin), age(backend_xid)) DESC LIMIT 20;

  3. Run the following queries once and share the output.
    SELECT pid, now() - pg_stat_activity.query_start AS duration," + "query, state "
    + "FROM pg_stat_activity "
    + "WHERE (now() - pg_stat_activity.query_start) > interval '5 minutes'

    SELECT pid, now() - pg_stat_activity.query_start AS duration," + "query, state "
    + "FROM pg_stat_activity "
    + "WHERE (now() - pg_stat_activity.query_start) > interval '2 minutes'"

    SELECT pid, now() - pg_stat_activity.query_start AS duration," + "query, state "
    + "FROM pg_stat_activity "
    + "WHERE (now() - pg_stat_activity.query_start) > interval '1 minutes'" 

  4. Collect the logs as per the article.