cert-manager
Utilisez cert-manager pour émettre et renouveler les certificats TLS d’un déploiement Helm de RustFS.
Utilisez cert-manager pour émettre le certificat référencé par l’Ingress RustFS. Cela fournit le HTTPS du point de terminaison public de l’API S3 et de la Console, et permet à cert-manager de renouveler le certificat.
Prérequis
- cert-manager est installé et les pods de son contrôleur sont prêts.
- Un
Issuerou unClusterIssuerest prêt. - Le nom d’hôte RustFS se résout vers le contrôleur Ingress.
Vérifiez l’émetteur avant d’installer RustFS :
kubectl get clusterissuer letsencrypt-prod
kubectl -n cert-manager get podsConfigurer le TLS de l’Ingress
Ajoutez les réglages d’Ingress et de certificat à votre fichier de valeurs, en mode autonome ou distribué :
ingress:
enabled: true
className: nginx
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
hosts:
- host: s3.example.com
paths:
- path: /
pathType: Prefix
tls:
enabled: true
certManager:
enabled: true
existingSecret:
enabled: false
name: ""Remplacez la classe d’Ingress, l’émetteur et le nom d’hôte en fonction de votre cluster. Pour un Issuer limité à un espace de noms, utilisez plutôt l’annotation cert-manager.io/issuer.
Appliquer la configuration
helm upgrade rustfs ./helm/rustfs \
--namespace rustfs \
-f values.yamlL’Ingress référence le Secret rustfs-tls pour une release nommée rustfs. Le composant ingress-shim de cert-manager lit l’annotation de l’émetteur et crée un Certificate qui écrit dans ce Secret.
Vérifier le certificat
kubectl -n rustfs get ingress,certificate,certificaterequest
kubectl -n rustfs describe certificate rustfs-tls
kubectl -n rustfs get secret rustfs-tlsAttendez que le Certificate indique Ready=True, puis ouvrez https://s3.example.com.
Utiliser cert-manager avec mTLS
Le chart utilise aussi cert-manager pour émettre les certificats serveur et client lorsque mtls.enabled=true. Consultez mTLS pour utiliser l’autorité de certification gérée par le chart ou pour référencer un émetteur existant.