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. :)