Once upon a time, Markus Schaufler <markus.schauf...@digit-all.at> said: > I've changed the cert to an official cert using the howto at > https://www.ovirt.org/documentation/admin-guide/appe-oVirt_and_SSL.html
Based on that page and trial & error, I use the following Ansible playbook to deploy a Let's Encrypt cert to an oVirt engine. I'm managing certs from a central VM that uses DNS auth rather than web, and my ansible-playbook call sets certpath to $RENEWED_LINEAGE. ************************************************************************ # Configure oVirt for a third-party cert and deploy a Let's Encrypt cert - hosts: all handlers: - name: restart httpd service: name: httpd.service state: restarted - name: update java trust command: /usr/bin/update-ca-trust - name: restart ovirt engine service service: name: ovirt-engine.service state: restarted - name: restart ovirt websocket proxy service: name: ovirt-websocket-proxy.service state: restarted - name: restart ovirt imageio proxy service: name: ovirt-imageio-proxy.service state: restarted - name: restart ovirt ovn provider service: name: ovirt-provider-ovn.service state: restarted tasks: ######################################################################## # Configure various oVirt things to use our installed cert rather than # the engine-CA-signed cert - name: configure ovirt trust copy: content: "ENGINE_HTTPS_PKI_TRUST_STORE=\"/etc/pki/java/cacerts\"\nENGINE_HTTPS_PKI_TRUST_STORE_PASSWORD=\"\"\n" dest: /etc/ovirt-engine/engine.conf.d/99-custom-truststore.conf notify: - restart ovirt engine service - name: configure ovirt websocket proxy copy: content: "SSL_CERTIFICATE=/etc/pki/ovirt-engine/certs/apache.cer\nSSL_KEY=/etc/pki/ovirt-engine/keys/apache.key.nopass\n" dest: /etc/ovirt-engine/ovirt-websocket-proxy.conf.d/99-custom-cert.conf notify: - restart ovirt websocket proxy - name: configure ovirt imageio proxy key replace: path: /etc/ovirt-imageio-proxy/ovirt-imageio-proxy.conf backup: yes regexp: '^(ssl_key_file = /etc/pki/ovirt-engine/keys/)imageio-proxy.key.nopass' replace: '\1apache.key.nopass' notify: - restart ovirt imageio proxy - name: configure ovirt imageio proxy cert replace: path: /etc/ovirt-imageio-proxy/ovirt-imageio-proxy.conf regexp: '^(ssl_cert_file = /etc/pki/ovirt-engine/certs/)imageio-proxy.cer' replace: '\1apache.cer' notify: - restart ovirt imageio proxy - name: configure ovirt ovn provider CA copy: content: "[OVIRT]\novirt-ca-file=/etc/pki/tls/certs/ca-bundle.crt\n" dest: /etc/ovirt-provider-ovn/conf.d/99-system-ca.conf notify: - restart ovirt ovn provider ######################################################################## # Install updated CA/cert/key - name: add lets-encrypt ca to java trust copy: src: "{{ certpath }}/chain.pem" dest: /etc/pki/ca-trust/source/anchors/letsencrypt-ca.pem notify: - update java trust - restart ovirt engine service - name: update ovirt engine ca chain copy: src: "{{ certpath }}/chain.pem" dest: /etc/pki/ovirt-engine/apache-ca.pem backup: yes notify: - restart httpd - restart ovirt engine service - name: update ovirt engine key copy: src: "{{ certpath }}/privkey.pem" dest: /etc/pki/ovirt-engine/keys/apache.key.nopass backup: yes mode: 0440 group: ovirt notify: - restart httpd - restart ovirt websocket proxy - restart ovirt imageio proxy - name: update ovirt engine cert copy: src: "{{ certpath }}/cert.pem" dest: /etc/pki/ovirt-engine/certs/apache.cer backup: yes notify: - restart httpd - restart ovirt websocket proxy - restart ovirt imageio proxy - name: find old ansible backups find: age: '91d' paths: /etc/pki/ovirt-engine recurse: yes patterns: - apache-ca.pem.[1-9]*~ - apache.key.nopass.[1-9]*~ - apache.cer.[1-9]*~ register: backups - name: delete backups file: path: '{{ item.path }}' state: absent loop: '{{ backups.files|flatten(levels=1) }}' ************************************************************************ -- Chris Adams <c...@cmadams.net> _______________________________________________ Users mailing list -- users@ovirt.org To unsubscribe send an email to users-le...@ovirt.org Privacy Statement: https://www.ovirt.org/site/privacy-policy/ oVirt Code of Conduct: https://www.ovirt.org/community/about/community-guidelines/ List Archives: https://lists.ovirt.org/archives/list/users@ovirt.org/message/KR6SX7XU3RA3KM7AKOWEL2SX76WPV3JG/