vRA 7.6 IaaS Zertifikat abgelaufen, oder doch nicht?

Mai 11 2023

Und wieder mal in die Zertifikats-Falle getappt! Natürlich kann VMware hier intern keine Infos per Mail senden....

Lieder kann man das neue Zertifikat nicht einfach so über das VAMI aktualiseren bzw. passiert nichts.

Erst ein Blick in die Logs (/var/log/messages) der vRA Appliance hat mich auf die richtige Spur gebracht

2023-05-11T11:32:14.688348+02:00 hostname [vra-command-agent][4041]: Error executing DB statement: creating transaction: x509: certificate has expired or is not yet valid. Retrying in 500ms 
2023-05-11T11:32:16.219641+02:00 hostname [vra-command-agent][4041]: last message repeated 2 times
2023-05-11T11:32:16.219564+02:00 hostname [vra-command-agent][4041]: Database connection failed: installing fixtures: creating transaction: x509: certificate has expired or is not yet valid, retrying in 52s

Diese Fehlermeldung kannte ich schon von der Testumgebung und dann guter Doku hab ich dann den KB von VMware wieder gefunden 

vRA 7.x APIs return error 500 when connecting to Postgres DB (85904)

Mit den folgenden Befehlen das Posgres Zertifikat erneuert und die Services durchgestartet

service psql-manager stop; service vcac-server stop; service horizon-workspace stop; service vco-server stop; service vco-configurator stop




. /usr/lib/vmware-bootstrap-vrva-base/certificates.inc


certificate_generate --key "/tmp/server.key" --cert "/tmp/server.crt"


cp /storage/db/pgdata/server.crt /tmp/server.crt.bak
cp /storage/db/pgdata/server.key /tmp/server.key.bak


cp /tmp/server.crt /storage/db/pgdata/server.crt
cp /tmp/server.key /storage/db/pgdata/server.key


chown postgres:users /storage/db/pgdata/server.key /storage/db/pgdata/server.crt
chmod 600 /storage/db/pgdata/server.key
chmod 644 /storage/db/pgdata/server.crt
ln -f /storage/db/pgdata/server.crt /storage/db/root.crt
chmod 644 /storage/db/root.crt

service vpostgres stop; service vpostgres start
service psql-manager start
service horizon-workspace start && \
base64 -d <<< "IyEvYmluL2Jhc2gKZWNobyAnV2FpdGluZyBmb3IgaG9yaXpvbiBzZXJ2aWNlIHRvIHN0YXJ0Li4uJwpmb3IgaSBpbiB7MS4uMTIwfQpkbwogICBzdGF0dXNfY29kZT1gY3VybCAtLW1heC10aW1lIDMwIC1vIC9kZXYvbnVsbCAtcyAtdyAiJXtodHRwX2NvZGV9XG4iICdodHRwOi8vbG9jYWxob3N0OjgwODAvU0FBUy9BUEkvMS4wL1JFU1Qvc3lzdGVtL2hlYWx0aCdgCiAgIFtbICIke3N0YXR1c19jb2RlfSIgPT0gIjIiKiBdXSAmJiBicmVhawogICBlY2hvICJIb3Jpem9uIGlzIHN0aWxsIHN0YXJ0aW5nLi4uIgogICBzbGVlcCA1CmRvbmUKCmlmIFtbICIke3N0YXR1c19jb2RlfSIgPT0gIjIiKiBdXTsKdGhlbgogICBlY2hvICdIb3Jpem9uIHNlcnZpY2Ugc3RhcnRlZCBzdWNjZXNzZnVsbHkhJwplbHNlCiAgIGVjaG8gJ0hvcml6b24gc2VydmljZSBkaWQgbm90IHN0YXJ0IHdpdGhpbiB0aGUgZXhwZWN0ZWQgcGVyaW9kLiBDaGVjayBzdGF0dXMgb2YgaG9yaXpvbi13b3Jrc3BhY2Ugc2VydmljZSBhbmQgbG9ncyBpbiAvdmFyL2xvZy92bXdhcmUvaG9yaXpvbi8gZm9yIG1vcmUgZGV0YWlscy4nCiAgIGV4aXQgMQpmaQo=" | sh - && \
service vco-server start && \
service vco-configurator start && \
service vcac-server start

Danach habe ich das neue IaaS Zertifikat noch in den Orchestrator importiert und siehe da, alles läuft wieder. :)