Chapitre 11. Tutoriel: Utiliser AWS Secrets Manager CSI sur ROSA avec STS
AWS Secrets and Configuration Provider (ASCP) offre un moyen d’exposer AWS Secrets en tant que volumes de stockage Kubernetes. Avec l’ASCP, vous pouvez stocker et gérer vos secrets dans Secrets Manager, puis les récupérer via vos charges de travail fonctionnant sur Red Hat OpenShift Service sur AWS (ROSA).
11.1. Conditions préalables Copier lienLien copié sur presse-papiers!
Assurez-vous que vous disposez des ressources et des outils suivants avant de commencer ce processus:
- Cluster ROSA déployé avec STS
- Barre 3
- AWS CLI
- CLI d’OCC
- JQ CLI
Exigences supplémentaires en matière d’environnement
Connectez-vous à votre cluster ROSA en exécutant la commande suivante:
oc login --token=<your-token> --server=<your-server-url>
$ oc login --token=<your-token> --server=<your-server-url>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Il est possible de trouver votre jeton de connexion en accédant à votre cluster en pull secret depuis Red Hat OpenShift Cluster Manager.
Validez que votre cluster a STS en exécutant la commande suivante:
oc get authentication.config.openshift.io cluster -o json \ | jq .spec.serviceAccountIssuer
$ oc get authentication.config.openshift.io cluster -o json \ | jq .spec.serviceAccountIssuer
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
"https://xxxxx.cloudfront.net/xxxxx"
"https://xxxxx.cloudfront.net/xxxxx"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Lorsque votre sortie est différente, ne procédez pas. Consultez la documentation Red Hat sur la création d’un cluster STS avant de poursuivre ce processus.
Définissez l’autorisation SecurityContextConstraints pour permettre au pilote CSI d’exécuter la commande suivante:
oc new-project csi-secrets-store oc adm policy add-scc-to-user privileged \ system:serviceaccount:csi-secrets-store:secrets-store-csi-driver oc adm policy add-scc-to-user privileged \ system:serviceaccount:csi-secrets-store:csi-secrets-store-provider-aws
$ oc new-project csi-secrets-store $ oc adm policy add-scc-to-user privileged \ system:serviceaccount:csi-secrets-store:secrets-store-csi-driver $ oc adm policy add-scc-to-user privileged \ system:serviceaccount:csi-secrets-store:csi-secrets-store-provider-aws
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Créez des variables d’environnement à utiliser plus tard dans ce processus en exécutant la commande suivante:
export REGION=$(oc get infrastructure cluster -o=jsonpath="{.status.platformStatus.aws.region}") export OIDC_ENDPOINT=$(oc get authentication.config.openshift.io cluster \ -o jsonpath='{.spec.serviceAccountIssuer}' | sed 's|^https://||') export AWS_ACCOUNT_ID=`aws sts get-caller-identity --query Account --output text` export AWS_PAGER=""
$ export REGION=$(oc get infrastructure cluster -o=jsonpath="{.status.platformStatus.aws.region}") $ export OIDC_ENDPOINT=$(oc get authentication.config.openshift.io cluster \ -o jsonpath='{.spec.serviceAccountIssuer}' | sed 's|^https://||') $ export AWS_ACCOUNT_ID=`aws sts get-caller-identity --query Account --output text` $ export AWS_PAGER=""
Copy to Clipboard Copied! Toggle word wrap Toggle overflow