Voor de CHP omgeving hebben we een extra controller draaien die automatisch routes van LetsEncrypt certificaten voorziet. Dit kan gedaan worden door in de yaml configuratie van de route onder metadata → annotations de volgende annotations toe te voegen:
cert-manager.io/issuer-kind=ClusterIssuer cert-manager.io/issuer-name=letsencrypt-production
Vereisten om hier gebruik van te maken is dat het DNS record al naar de CHP omgeving staat.
Om dit voor een route aan te zetten dien je eerst de naam van de route op te zoeken, dit kan onder andere via de commandline:
$ oc get -n <project> routes NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD route-name subdomain.example.com nginx 8080-tcp None
Vervolgens kun je gewapend met de route name de route labelen voor LetsEncrypt via het volgende commando:
$ oc annotate route -n <project> <route-name> cert-manager.io/issuer-kind=ClusterIssuer cert-manager.io/issuer-name=letsencrypt-production
Na het labelen van de route kun je, na ~30 seconden, via de commandline zien dat de route voorzien is van certificaten onder het 'TERMINATION' kopje:
$ oc get -n <project> routes NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD route-name subdomain.example.com nginx 8080-tcp edge/Redirect None
Ga in de webconsole naar je project en selecteer linksboven de Administrator view:
Selecteer vervolgens Networking en daarna Routes:
Selecteer vervolgens de Route die je wilt voorzien van een LetsEncrypt certificaat:
Klik in het venster op annotations:
Vul nu bij Key en Value de onderstaande waardes in:
Klik nu op Save, na ~30 seconden zal het certificaat gereed zijn.