Cert-Manager
L'addon Cert-Manager gestisce automaticamente i certificati SSL/TLS del cluster: emissione, rinnovo e archiviazione in Secret Kubernetes. Supporta Let's Encrypt (ACME) e le autorità private.
Nella console
- Alla creazione, passaggio Addons, Cert-Manager è selezionato per impostazione predefinita.
- Su un cluster esistente: Edit > Extensions & Addons, selezioni o deselezioni Cert-Manager, quindi Save.
La pagina di dettaglio del cluster mostra Cert-Manager nella sezione Extensions quando è attivo.
Sovrascrivere la configurazione
Una volta selezionato l'addon, compare il campo Helm Configuration (YAML) — optional. Il valore viene trasmesso al chart Helm di Cert-Manager, sotto la chiave cert-manager. Ad esempio, per regolare le risorse:
cert-manager:
resources:
requests:
cpu: 10m
memory: 32Mi
limits:
cpu: 100m
memory: 128Mi
Le opzioni disponibili sono descritte nel chart Helm di Cert-Manager.
Utilizzo nel cluster
L'addon non crea alcun emittente: dichiari il suo ClusterIssuer (o Issuer) nel cluster, quindi lo referenzi nei suoi Ingress.
apiVersion: cert-manager.io/v1
kind: ClusterIssuer
metadata:
name: letsencrypt-prod
spec:
acme:
server: https://acme-v02.api.letsencrypt.org/directory
email: admin@example.com
privateKeySecretRef:
name: letsencrypt-prod-account-key
solvers:
- http01:
ingress:
ingressClassName: nginx
kubectl apply -f cluster-issuer.yaml
# Seguire i certificati
kubectl get certificates -A
kubectl describe certificate <nome> -n <namespace>
Il percorso completo è descritto in Come distribuire un Ingress con TLS.
Buone pratiche
- Mantenga Cert-Manager attivato non appena espone applicazioni in HTTPS.
- Esegua i test con il server di staging di Let's Encrypt prima di utilizzare il server di produzione.
- Verifichi regolarmente lo stato
READYdei suoi certificati per prevenire i mancati rinnovi.