Kurztipp: Überfüllte vCenter Server Appliance 5.5-Datenbank verhindert Logins

Neulich stieß ich auf das Problem, dass eine vCenter Server Appliance  (vCSA) 5.5-Installation keine Logins mehr zuließ. Nach einem Blick auf die Festplattenauslastung erkannte ich, dass zwei Partitionen schlichtweg vollgeschrieben wurden:

1# df -h /storage/{core,db}
2Filesystem      Size  Used Avail Use% Mounted on
3/dev/sdb1        20G   20G     0 100% /storage/core
4/dev/sdb3        60G   56G   90M 100% /storage/db

In der Knowledge Base von VMware findet sich ein Artikel über dieses Phänomen. Es handelt sich hierbei um einen bekannten Bug in vCenter Server 5.5U2. Die verwendete vPostgres-Datenbank erzeugt unzählige Einträge nach dem folgenden Muster:

1WARNING: there is already a transaction in progress

Als Workaround wird empfohlen, das Log-Level zu verringern. Dazu müssen vCenter und Datenbank gestoppt und die vPostgres-Konfigurationsdatei angepasst werden. Anschließend empfiehlt es sich, alle Logdateien außer der aktuellen zu entfernen:

 1# service vmware-vpxd stop
 2# service vmware-vpostgres stop
 3# cd /storage/db/vpostgres
 4# cp postgresql.conf postgresql.conf.orig
 5# vi postgresql.conf
 6...
 7312gg
 8...
 9#log_min_messages = warning
10log_min_messages = error
11
12ESC ZZ
13
14# find . -type f -ctime +1 -exec rm {}

Ein Verzeichnis wurde aufgeräumt - in meinem Fall fanden sich noch zahlreiche alte Coredumps im /storage/core-Verzeichnis. Diese können bedenkenlos entfernt werden:

1# cd /storage/core
2# ls -lhs
3...
42.1G -rw------- 1 root      root      2.6G Aug 18 08:46 core.vpxd-worker.25327
59.6G -rw------- 1 root      root       12G Aug 18 06:39 core.vpxd-worker.4489
6# rm core.vpxd-worker.*

Nach einem Start der Datenbank und des vCenters sollten Logins wieder möglich sein:

1# service vmware-vpostgres start
2# service vmware-vpxd start

Übersetzungen: