8.5. Configurer le proxy egress pour l'opérateur cert-manager pour Red Hat OpenShift
Si un proxy egress à l'échelle du cluster est configuré dans OpenShift Container Platform, Operator Lifecycle Manager (OLM) configure automatiquement les opérateurs qu'il gère avec le proxy à l'échelle du cluster. OLM met automatiquement à jour tous les déploiements de l'opérateur avec les variables d'environnement HTTP_PROXY, HTTPS_PROXY, NO_PROXY.
Vous pouvez injecter tous les certificats CA requis pour les connexions HTTPS par proxy dans l'opérateur cert-manager pour Red Hat OpenShift.
8.5.1. Injecter un certificat CA personnalisé pour l'opérateur cert-manager de Red Hat OpenShift Copier lienLien copié sur presse-papiers!
Si votre cluster OpenShift Container Platform a activé le proxy à l'échelle du cluster, vous pouvez injecter tous les certificats CA qui sont requis pour les connexions HTTPS par proxy dans l'opérateur cert-manager pour Red Hat OpenShift.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin. - Vous avez activé le proxy pour OpenShift Container Platform.
Procédure
Créez une carte de configuration dans l'espace de noms
cert-manageren exécutant la commande suivante :oc create configmap trusted-ca -n cert-manager
$ oc create configmap trusted-ca -n cert-managerCopy to Clipboard Copied! Toggle word wrap Toggle overflow Injectez le bundle CA qui est approuvé par OpenShift Container Platform dans la carte de configuration en exécutant la commande suivante :
oc label cm trusted-ca config.openshift.io/inject-trusted-cabundle=true -n cert-manager
$ oc label cm trusted-ca config.openshift.io/inject-trusted-cabundle=true -n cert-managerCopy to Clipboard Copied! Toggle word wrap Toggle overflow Mettez à jour le déploiement de l'opérateur cert-manager pour Red Hat OpenShift afin d'utiliser la carte de configuration en exécutant la commande suivante :
oc -n cert-manager-operator patch subscription cert-manager-operator --type='merge' -p '{"spec":{"config":{"env":[{"name":"TRUSTED_CA_CONFIGMAP_NAME","value":"trusted-ca"}]}}}'$ oc -n cert-manager-operator patch subscription cert-manager-operator --type='merge' -p '{"spec":{"config":{"env":[{"name":"TRUSTED_CA_CONFIGMAP_NAME","value":"trusted-ca"}]}}}'Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Vérification
Vérifiez que les déploiements sont terminés en exécutant la commande suivante :
oc rollout status deployment/cert-manager-operator-controller-manager -n cert-manager-operator && \ oc rollout status deployment/cert-manager -n cert-manager && \ oc rollout status deployment/cert-manager-webhook -n cert-manager && \ oc rollout status deployment/cert-manager-cainjector -n cert-manager
$ oc rollout status deployment/cert-manager-operator-controller-manager -n cert-manager-operator && \ oc rollout status deployment/cert-manager -n cert-manager && \ oc rollout status deployment/cert-manager-webhook -n cert-manager && \ oc rollout status deployment/cert-manager-cainjector -n cert-managerCopy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
deployment "cert-manager-operator-controller-manager" successfully rolled out deployment "cert-manager" successfully rolled out deployment "cert-manager-webhook" successfully rolled out deployment "cert-manager-cainjector" successfully rolled out
deployment "cert-manager-operator-controller-manager" successfully rolled out deployment "cert-manager" successfully rolled out deployment "cert-manager-webhook" successfully rolled out deployment "cert-manager-cainjector" successfully rolled outCopy to Clipboard Copied! Toggle word wrap Toggle overflow Vérifiez que le paquet CA a été monté en tant que volume en exécutant la commande suivante :
oc get deployment cert-manager -n cert-manager -o=jsonpath={.spec.template.spec.'containers[0].volumeMounts'}$ oc get deployment cert-manager -n cert-manager -o=jsonpath={.spec.template.spec.'containers[0].volumeMounts'}Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
[{"mountPath":"/etc/pki/tls/certs/cert-manager-tls-ca-bundle.crt","name":"trusted-ca","subPath":"ca-bundle.crt"}][{"mountPath":"/etc/pki/tls/certs/cert-manager-tls-ca-bundle.crt","name":"trusted-ca","subPath":"ca-bundle.crt"}]Copy to Clipboard Copied! Toggle word wrap Toggle overflow Vérifiez que la source du bundle CA est la carte de configuration
trusted-caen exécutant la commande suivante :oc get deployment cert-manager -n cert-manager -o=jsonpath={.spec.template.spec.volumes}$ oc get deployment cert-manager -n cert-manager -o=jsonpath={.spec.template.spec.volumes}Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
[{"configMap":{"defaultMode":420,"name":"trusted-ca"},"name":"trusted-ca"}][{"configMap":{"defaultMode":420,"name":"trusted-ca"},"name":"trusted-ca"}]Copy to Clipboard Copied! Toggle word wrap Toggle overflow