cert-manager is the standard tool in the Kubernetes ecosystem for automatically provisioning and managing TLS certificates. cert-manager has a pluggable architecture allowing users to write their own external issuers (i.e. controllers that reconcile and sign CertificateRequests) while integrating with the rest of the cert-manager certificate management lifecycle (e.g. renewals):
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: example
namespace: example
spec:
# Sign certificate using my external issuer
issuerRef:
group: example.com
kind: ExampleIssuer
name: example
secretName: example-tls
dnsNames:
- example.com
This capability is incredibly powerful in an enterprise environment where many exceptional (and often extraordinary) requirements may exist that cannot be handled by cert-manager’s built-in issuers.
[Read More]