Google Distributed Cloud는 인증서 및 비공개 키를 사용하여 클러스터의 시스템 구성요소 간 연결을 인증하고 암호화합니다. 클러스터 인증 기관(CA)은 이러한 인증서 및 키를 관리합니다. bmctl update credentials certificate-authorities rotate
명령어를 실행하면 Google Distributed Cloud가 다음 작업을 수행합니다.
클러스터 CA, etcd CA, 프런트 프록시 CA의 새 클러스터 인증 기관(CA)을 만들어 관리자 클러스터의 사용자 클러스터 네임스페이스에 업로드합니다.
관리자 클러스터 컨트롤러는 사용자 클러스터 인증 기관을 새로 생성된 인증 기관으로 바꿉니다.
관리자 클러스터 컨트롤러는 새로운 공개 CA 인증서 및 리프 인증서 키 쌍을 사용자 클러스터 시스템 구성요소에 배포합니다.
보안 클러스터 통신을 유지하려면 주기적으로 사용자 클러스터 CA를 순환하고 보안 침해가 발생할 가능성이 있을 때마다 순환합니다.
시작하기 전에
클러스터의 인증 기관을 순환하기 전에 다음 조건과 영향을 고려하여 계획을 수립하세요.
CA 순환을 시작하기 전에 관리자 및 사용자 클러스터 버전이 1.9.0 이상인지 확인합니다.
CA 순환은 점진적으로 이루어지므로 순환 중에도 시스템 구성요소가 서로 통신할 수 있습니다.
CA 순환 프로세스는 API 서버, 제어 영역 프로세스, 사용자 클러스터의 포드를 다시 시작합니다.
CA 순환 중 워크로드가 다시 시작되고 다시 예약됩니다.
고가용성 클러스터 구성이 아닌 경우 CA 순환 중 제어 영역 다운타임이 잠시 있을 것으로 예상됩니다.
클러스터 관리 작업은 CA 순환 중에 허용되지 않습니다.
CA 순환 기간은 클러스터 크기에 따라 달라집니다. 예를 들어 제어 영역이 1개 있고 워커 노드가 50개인 클러스터의 경우 CA 순환이 완료되는 데 2시간까지 걸릴 수 있습니다.
제한사항
인증 기관 순환 기능에는 다음 제한이 포함됩니다.
CA 순환은 클러스터 CA가 인증서를 서명하더라도 관리자가 수동으로 발급한 인증서를 업데이트하지 않습니다. 사용자 클러스터 CA 순환이 완료된 후 수동으로 발급된 인증서를 업데이트하고 다시 배포합니다.
CA 순환은 시작된 후 일시 중지되거나 롤백될 수 없습니다.
클러스터 CA 순환 시작
다음 명령어를 사용하여 CA 순환 프로세스를 시작합니다.
bmctl update credentials certificate-authorities rotate --cluster CLUSTER_NAME \
--kubeconfig KUBECONFIG
다음을 바꿉니다.
CLUSTER_NAME
: CA를 순환하려는 클러스터의 이름입니다.KUBECONFIG
: 관리자 클러스터 kubeconfig 파일의 경로입니다. 자체 관리 클러스터의 경우 이 파일은 클러스터의 kubeconfig 파일입니다.
CA가 성공적으로 순환되고 새로운 kubeconfig 파일이 생성된 후 bmctl
명령어가 종료됩니다. kubeconfig 파일의 표준 경로는 bmctl-workspace/CLUSTER_NAME/CLUSTER_NAME-kubeconfig
입니다.
클러스터 CA 순환 문제 해결
bmctl update credentials
명령어는 CA 순환의 진행 상태를 표시합니다.
연결된 update-credentials.log
파일은 다음과 같이 타임스탬프가 표시된 디렉터리에 저장됩니다.
bmctl-workspace/CLUSTER_NAME/log/update-credentials-TIMESTAMP