6.2.3. 로컬 암호화에서 KMS 암호화로 마이그레이션
로컬 etcd 암호화에서 외부 KMS 암호화로 마이그레이션하여 키 관리를 중앙 집중화하고 규정 준수를 개선할 수 있습니다.
사전 요구 사항
-
cluster-admin역할의 사용자로 클러스터에 액세스할 수 있어야 합니다. -
KMSEncryption기능 게이트를 사용하도록TechPreviewNoUpgrade기능 세트를 활성화했습니다. -
클러스터에서 현재
aescbc또는aesgcm암호화를 사용하고 있습니다. - 모든 컨트롤 플레인 노드에 KMS 플러그인을 배포했습니다.
- 컨트롤 플레인 노드는 KMS 공급자에 대한 네트워크 액세스 권한이 있습니다.
중요
마이그레이션 전에 etcd 백업을 만듭니다.
프로세스
다음 명령을 입력하여 현재 etcd 암호화 구성을 백업합니다.
$ oc get apiserver cluster -o yaml > apiserver-backup.yaml다음 명령을 입력하여 APIServer 사용자 정의 리소스를 편집합니다.
$ oc edit apiserver clusteraescbc또는aesgcm에서 암호화 유형을KMS로 변경합니다.apiVersion: config.openshift.io/v1 kind: APIServer metadata: name: cluster spec: encryption: type: KMS저장 및 종료합니다.
마이그레이션이 자동으로 시작되고 일반적으로 몇 분 정도 걸립니다.
다음 명령을 실행하여 모든 API 서버에 대한 마이그레이션 완료를 확인합니다.
$ oc get openshiftapiserver -o=jsonpath='{range .items[0].status.conditions[?(@.type=="Encrypted")]}{.reason}{"\n"}{end}'$ oc get kubeapiserver -o=jsonpath='{range .items[0].status.conditions[?(@.type=="Encrypted")]}{.reason}{"\n"}{end}'$ oc get authentication.operator.openshift.io -o=jsonpath='{range .items[0].status.conditions[?(@.type=="Encrypted")]}{.reason}{"\n"}{end}'모든 출력에
EncryptionCompleted가 표시되어야 합니다.