11.4. 이 시크릿을 사용할 애플리케이션 생성
다음 명령을 실행하여 OpenShift 프로젝트를 생성합니다.
$ oc new-project my-application
다음 명령을 실행하여 STS 역할을 사용하도록 기본 서비스 계정에 주석을 답니다.
$ oc annotate -n my-application serviceaccount default \ eks.amazonaws.com/role-arn=$ROLE_ARN
다음 명령을 실행하여 시크릿에 액세스할 시크릿 공급자 클래스를 생성합니다.
$ cat << EOF | oc apply -f - apiVersion: secrets-store.csi.x-k8s.io/v1 kind: SecretProviderClass metadata: name: my-application-aws-secrets spec: provider: aws parameters: objects: | - objectName: "MySecret" objectType: "secretsmanager" EOF
다음 명령에서 시크릿을 사용하여 배포를 생성합니다.
$ cat << EOF | oc apply -f - apiVersion: v1 kind: Pod metadata: name: my-application labels: app: my-application spec: volumes: - name: secrets-store-inline csi: driver: secrets-store.csi.k8s.io readOnly: true volumeAttributes: secretProviderClass: "my-application-aws-secrets" containers: - name: my-application-deployment image: k8s.gcr.io/e2e-test-images/busybox:1.29 command: - "/bin/sleep" - "10000" volumeMounts: - name: secrets-store-inline mountPath: "/mnt/secrets-store" readOnly: true EOF
다음 명령을 실행하여 Pod에 보안이 마운트되었는지 확인합니다.
$ oc exec -it my-application -- cat /mnt/secrets-store/MySecret