Solución al error «Database Health Alarm» de VCSA

por | 9 octubre, 2019

Lo primero que tenemos que hacer es conectarnos por SSH con el usuario «root» al VCSA.

Una vez hecho esto, realizaremos los siguientes pasos en orden.

Command> shell

# service vmware-vpxd stop

Guardaremos el resultado del siguiente comando en un fichero de texto por si las moscas… (es la contraseña de la BBDD del VCSA)

# grep -i PASSWORD /etc/vmware-vpx/embedded_db.cfg

Nos conectamos a la base de datos:

/opt/vmware/vpostgres/current/bin/psql -d VCDB postgres

Una vez dentro de postgres ejecutamos la siguiente consulta:

VCDB=# SELECT nspname || ‘.’ || relname AS «relation», pg_size_pretty(pg_total_relation_size(C.oid)) AS «total_size» FROM pg_class C LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace) WHERE nspname NOT IN (‘pg_catalog’, ‘information_schema’) AND C.relkind <> ‘i’ AND nspname !~ ‘^pg_toast’ ORDER BY pg_total_relation_size(C.oid) DESC LIMIT 20;

A continuación, veremos las tablas con mayor ocupación ordenadas de forma descendente:

relation | total_size

——————————+————
vc.vpx_event_47 | 784 MB
vc.vpx_event_48 | 448 MB
vc.vpx_event_46 | 426 MB
vc.vpx_event_arg_55 | 312 MB
vc.vpx_proc_log | 90 MB
vc.vpx_event_55 | 74 MB
vc.vpx_event_arg_50 | 34 MB
vc.vpx_event_arg_54 | 28 MB
vc.vpx_host_vm_config_option | 13 MB
vc.vpx_event_50 | 9056 kB
vc.vpx_event_54 | 7704 kB
vc.vpx_event_arg_21 | 2872 kB
vc.vpx_topn_past_month | 2776 kB
vc.vpx_topn_past_week | 2704 kB
vc.vpx_task | 2352 kB
vc.vpx_topn_past_day | 2184 kB
vumdbc.vci_task_stats | 1840 kB
vc.vpx_event_21 | 1480 kB
vc.vpx_hist_stat3_18 | 1416 kB
vc.vpx_journal_entry | 1152 kB
(20 rows)

La consulta anterior nos devolverá las tablas con mayor ocupación. Con el comando de a continuación borraremos el contenido de las tablas que consideremos.

Estas tablas sólo guardan información de eventos, por lo que es información que se puede eliminar sin afectar al comportamiento del VCSA:

VCDB=# TRUNCATE TABLE vpx_event_arg_48 CASCADE;

Para salir de postgres:

VCDB=# \q

Salimos de la shell:

# exit

Iniciamos de nuevo el servicio de vmware-vpxd:

Command> service-control –start vmware-vpxd
Command> exit

Espero que os guste. Un saludo SysAdmins!! 🙂

About: Miguel Carretas Perulero

Miguel Carretas Perulero ha escrito 67 artículos en este blog.

Deja un comentario