CA 풀을 사용하여 인증서 생성 처리량 늘리기

이 페이지에서는 인증 기관(CA) 풀을 통해 인증서 생성 속도를 높이는 방법을 설명합니다. CA 풀에 대한 자세한 내용은 CA 풀 개요를 참조하세요.

개요

인증서 생성 처리량은 초당 쿼리 수(QPS)로 측정됩니다. 서비스 메시에서 인증서 생성 처리량은 다음 수식을 사용하여 근사값을 구할 수 있습니다.

처리량 = (ACTIVE_WORKLOADS × ROTATION_FREQUENCY) + NEW_WORKLOADS_PER_SECOND

다음을 바꿉니다.

  • ACTIVE_WORKLOADS: 특정 시간에 실행 중인 총 워크로드 수
  • ROTATION_FREQUENCY: 초당 인증서 순환 빈도
  • NEW_WORKLOADS_PER_SECOND: 새 워크로드가 생성되는 속도

Google Cloud 콘솔의 Google Kubernetes Engine 대시보드에서 ACTIVE_WORKLOADSNEW_WORKLOADS_PER_SECOND의 값을 찾을 수 있습니다. 서비스 메시의 ROTATION_FREQUENCY를 확인하려면 서비스 메시 제품 문서를 참조해야 합니다. Anthos Service Mesh의 ROTATION_FREQUENCY는 12시간마다 한 번으로 설정되며, 초당 순환 빈도로 변환되면 1/(12×60×60) 또는 1/43200입니다.

예시

장기 워크로드와 임시 워크로드가 거의 없는 비교적 안정적인 클러스터의 예시를 살펴보겠습니다.

변수 이름 설명
ACTIVE_WORKLOADS 10000 언제든지 워크로드 10,000개를 실행할 수 있습니다.
NEW_WORKLOADS_PER_SECOND 1 1초마다 새 워크로드 1개가 생성됩니다.
ROTATION_FREQUENCY 1/43200 인증서는 12시간마다 순환됩니다.

인증서 생성 속도를 계산하기 위한 수식에서 이러한 값을 대체하면 QPS 값이 1.23으로 설정됩니다.

처리량 = (10,000/43,200) + 1 = 1.23 QPS

임시 워크로드가 많고 기간이 짧은 다른 클러스터는 NEW_WORKLOADS_PER_SECOND의 값이 더 높을 수 있습니다. ROTATION_FREQUENCY 값이 높으면 (ACTIVE_WORKLOADS / ROTATION_FREQUENCY) 비율 값이 상당히 작아지므로 NEW_WORKLOADS_PER_SECOND가 수식에서 가장 중요한 변수가 됩니다.

시작하기 전에

필요한 위치에 CA 풀을 설정합니다. 전체 위치 목록은 위치를 참조하세요.

지속적으로 높은 처리량으로 인증서를 발급할 것으로 예상되는 경우 DevOps 등급에서 CA 풀을 만들면 성능을 개선하고 비용을 줄일 수 있습니다. CA 풀 내에서 개별 CA에 대한 최대 처리량이 있으며 특정 프로젝트에 달성할 수 있는 최대 처리량이 있습니다. 예를 들어 DevOps 등급의 최대 처리량이 CA의 경우 25QPS이고 프로젝트의 경우 100QPS인 경우, 총 유효 처리량을 최대 100QPS까지 도달하기 위해 CA 풀 내에 4개의 CA를 만들어야 합니다. 특정 QPS 수 및 할당량에 대한 자세한 내용은 할당량 및 한도를 참조하세요.

절차

  1. 필요한 QPS를 달성하기 위해 CA 풀 내에서 충분한 CA를 만듭니다. 필요한 CA 수는 DevOps 등급의 CA 풀에 4개, 엔터프라이즈 등급의 CA 풀에 15개입니다. 다음 DevOps 등급의 CA 풀에 대한 안내입니다.

    1. CA 풀에 root-1이라는 루트 CA를 만들려면 다음 gcloud 명령어를 사용합니다.

       gcloud privateca roots create root-1 --pool POOL_NAME --subject="CN=root-1,O=google"
      

      이 단계에서 CA 풀의 총 유효 QPS는 25QPS입니다. CA 풀의 총 유효 QPS를 100QPS로 늘리려면 CA 풀에 3개의 CA를 더 만들어야 합니다.

    2. root-2라는 루트 CA를 만들려면 다음 gcloud 명령어를 사용합니다.

        gcloud privateca roots create root-2 --pool POOL_NAME --subject="CN=root-2,O=google"
      
    3. root-3이라는 루트 CA를 만들려면 다음 gcloud 명령어를 사용합니다.

        gcloud privateca roots create root-3 --pool POOL_NAME --subject="CN=root-3,O=google"
      
    4. root-4라는 루트 CA를 만들려면 다음 gcloud 명령어를 사용합니다.

        gcloud privateca roots create root-4 --pool POOL_NAME --subject="CN=root-4,O=google"
      

      이 단계에서 CA 풀의 총 유효 QPS는 100QPS입니다.

  2. CA가 STAGED 상태일 때 인증서를 만들고 테스트합니다. 완료되면 CA를 사용 설정합니다. CA 사용 설정에 대한 자세한 내용은 CA 사용 설정을 참조하세요. CA 테스트에 대한 자세한 내용은 CA 테스트를 참조하세요.

  3. CA 간 부하 분산에 대한 감사 보고서를 가져와 CA 풀의 상태를 확인합니다. 이상적으로는 각 CA에서 발급한 인증서 수에 균일성이 있어야 합니다.

    Cloud Monitoring을 사용하여 지정된 기간 동안 CA별로 발급된 인증서 수와 같은 CA 풀의 부하 분산 측정항목을 모니터링할 수 있습니다. 자세한 내용은 Cloud Monitoring을 사용하여 리소스 모니터링을 참조하세요.

다음 단계