클러스터 및 작업 유연성 및 효율성 극대화

이 페이지에서는 리전 Google Cloud 전반에서 리소스 확보 가능성을 극대화하고, 프로비저닝 지연 시간을 줄이며, 성능 및 비용 최적화를 활용하는 복원력 있는 Managed Service for Apache Spark 클러스터를 설계하는 데 도움이 되는 권장사항과 예약 전략을 제공합니다.

리소스 확보 가능성 개요

고정된 Managed Service for Apache Spark 클러스터에서 작업을 실행하면 단일 장애점이 생성되어 지역적 사용 불가능 또는 프로비저닝 지연으로 인해 작업 중단 및 클러스터와 작업 실패가 발생할 수 있습니다.

다음과 같은 고정된 안티패턴으로 구성된 클러스터의 경우 리소스 사용 불가능 위험이 높습니다.

  • 고정 영역 배치: Managed Service for Apache Spark AutoZone에서 클러스터를 최적 영역에 동적으로 배치하도록 허용하는 대신 zone 플래그 또는 필드를 사용하여 단일 영역을 하드코딩합니다. 이 안티패턴은 클러스터 생성이 인접 영역에서 사용 가능한 컴퓨팅 리소스를 사용하지 못하도록 합니다.
  • 노드 역할당 단일 머신 유형 또는 세대: 노드 역할을 단일 머신 세대 또는 유형으로 제한합니다. 이 안티패턴은 클러스터가 대체 옵션으로 대체되지 않도록 합니다.
  • 더 적은 수의 대형 VM을 사용한 수직 확장: 클러스터를 수직으로 확장하여 소수의 대형 VM 유형에 의존합니다. 이 안티패턴은 예약 유연성을 제한합니다.
  • 전체 또는 없음 클러스터 생성: 자동 확장과 함께 부분 클러스터 생성을 사용하는 대신 모든 작업자 노드를 동시에 프로비저닝해야 합니다. 이 안티패턴은 일시적인 리소스 사용 불가능으로 인해 워커 노드를 할당할 수 없는 경우 클러스터 생성이 실패하도록 합니다.
  • 최대 사용 시간 예약 급증: 최대 사용 시간 중에 대규모 일괄 파이프라인을 트리거하여 리전 경합을 증가시킵니다.

리소스 확보 가능성은 하드웨어 유연성, 멀티 영역, 확장 가능하도록 작업을 설계하는 관행입니다. 클러스터를 고정된 구성에서 분리하고 멀티 머신 계열 대체를 사용 설정하면 생성 성공률을 높이고, 시작 지연 시간을 최소화하며, SLA를 일관되게 달성할 수 있습니다.

리소스 확보 가능성 권장사항

다음 최적화를 채택하여 리소스 가용성 및 작업 안정성을 개선하세요.

가변형 VM 사용

가변형 VM 기능을 사용하면 마스터, 기본, 보조 작업자 노드의 VM 유형 순위 목록을 지정할 수 있습니다. 이렇게 하면 나열된 VM 유형을 평가하고 사용 가능한 용량이 있는 영역을 자동으로 선택하여 생성 성공률이 높아집니다.

권장사항: 디스크 재정의가 있는 가변형 VM을 사용합니다. 이를 통해 동일한 클러스터 정책에서 다양한 후보 머신 계열에 대해 하이퍼디스크 및 영구 디스크와 같은 다양한 디스크 유형을 지정할 수 있습니다. 단일 정책 내에서 2세대 및 4세대 머신 계열을 혼합하여 더 넓은 풀에서 작업을 확장하고 용량 한도를 우회할 수도 있습니다.

N2 및 N2D 머신을 사용하는 작업의 경우 다음 순위를 고려하세요.

  • 순위 0: N2, N2D
  • 순위 1: N4, N4D (하이퍼디스크 균형 포함)
  • 순위 2: C4, C4D, C3, C3D (하이퍼디스크 균형 포함). 로컬 SSD는 C4 및 C4D와 함께 사용할 수 있지만 일반적으로 8개 또는 16개 코어는 1~2개의 로컬 SSD만 지원합니다.
  • 순위 3: E2 (성능 저하, 필요한 경우에만 사용)

예를 들어 n2d-standard-16을 사용하는 작업의 순위는 다음과 같습니다.

  • 순위 0: n2d-standard-16, n2-standard-16
  • 순위 1: n4-standard-16, n4d-standard-16
  • 순위 2: c4-standard-16, c4d-standard-16, c3-standard-22, c3d-standard-16
  • 순위 3: e2-standard-16

가변형 VM을 사용할 때는 다음 요소를 고려하세요.

  • 혼합 디스크 유형 지원: 3세대 및 4세대 머신 유형은 하이퍼디스크 디스크 유형만 지원하며 영구 디스크 유형은 지원하지 않습니다. 2세대와 4세대를 혼합할 때는 instanceFlexibilityPolicy에서 각 인스턴스 선택에 대해 diskConfig를 지정합니다. 자세한 내용은 디스크 재정의를 참조하세요.

  • 리소스 할당량: 대체 유형으로 가변형 VM 정책을 정의하면 Compute Engine은 리전의 모든 후보 유형 및 디스크의 할당량을 확인합니다. 프로젝트에 구성된 모든 항목에 할당된 컴퓨팅 및 디스크 할당량이 충분한지 확인합니다.

  • Compute Engine 할인: 유연한 약정 사용 할인 (CUD) 을 활용하여 여러 VM 계열 및 리전에 지출 기반 절감액을 적용합니다.

  • 가격 책정: Google Cloud 가격 계산기 를 사용하여 정책의 각 순위 비용을 비교합니다.

구성 템플릿 및 배포 예시는 다음을 참조하세요.

자동 영역 배치 사용

AutoZone 배치를 사용하여 Managed Service for Apache Spark에서 리소스를 프로비저닝할 최적의 영역을 선택하도록 합니다. 커스텀 가상 프라이빗 클라우드 (VPC) 네트워크를 사용하는 경우 서브넷에 모든 리전 영역에서 충분한 IP 주소가 있는지 확인합니다.

더 작은 머신 유형 사용

더 큰 VM으로 수직 확장하는 대신 더 작은 머신 유형 (4, 8 또는 16개 코어)으로 수평 확장하도록 작업을 설계합니다. VM 크기가 작을수록 영역 전반에서 가용성이 높아져 생성 지연을 방지하는 데 도움이 됩니다.

  • 드라이버 노드에 대형 머신 유형을 사용하는 작업을 검토하고 재설계합니다.
  • 작업자 노드 없이 드라이버 노드만 실행하는 작업을 검토합니다 (단일 노드 클러스터). 단일 노드 클러스터에서 실행되는 작업은 동적으로 수직 확장할 수 없으며 실행을 단일 물리적 호스트에 바인딩할 수 없습니다.

클러스터 자동 확장 사용

충분한 최대 인스턴스 수를 사용하여 클러스터 자동 확장을 사용하여 리소스 변동성 (급증)이 있는 작업의 용량을 관리합니다.

자동 확장을 사용하여 부분 클러스터 생성 사용

자동 확장을 사용하여 기본 작업자의 최소 수를 지정할 수 있는 부분 클러스터 생성을 사용합니다. 클러스터가 요청된 작업자 수보다 적은 작업자로 시작되면 리소스가 사용 가능해지면 자동 확장이 더 많은 작업자를 동적으로 추가할 수 있습니다.

바쁘지 않은 시간에 작업 예약

바쁘지 않은 시간(예: 정오 및 주말)에 작업을 예약합니다. 예약 급증을 방지하려면 표준 시간이 아닌 시간에 예약합니다(예: 10:00 대신 10:07).

다음 단계