Databricks GCP 노드 할당 설정 점검

Databricks GCP 클러스터의 선점형 노드 사용과 대체 용량을 작업의 복구 요구에 맞추세요.

설명

Databricks GCP 클러스터의 선점형 인스턴스는 회수될 수 있어 작업이 중단되거나 재처리가 필요할 수 있습니다. 비용 절감과 함께 작업의 중단 허용 범위, 온디맨드 노드와 fallback 전략을 고려해야 합니다.

잠재적 영향

  • 선점형 인스턴스 회수로 작업이 중단될 수 있습니다.
  • 클러스터 복구와 재처리 비용이 늘어날 수 있습니다.
  • 운영용 분석 작업의 완료 시간이 달라질 수 있습니다.

해결 방법

작업 요구에 따라 PREEMPTIBLE_WITH_FALLBACK_GCP 또는 ON_DEMAND_GCP를 선택하세요. 지원되는 provider 버전에서 first_on_demand로 필요한 온디맨드 노드를 지정하고, 자원 회수 후 복구와 비용을 시험하세요. fallback이나 자동 종료 설정만으로 무중단 실행을 보장할 수는 없습니다.

예시

다음은 데이터 소스 정의를 생략한 Databricks provider v1.133.0 구성 발췌입니다. 변경 전에는 PREEMPTIBLE_GCP를 사용하고 온디맨드 노드 수를 별도로 지정하지 않습니다.

변경 전

hcl
resource "databricks_cluster" "example" {
  cluster_name            = "data"
  spark_version           = data.databricks_spark_version.latest.id
  node_type_id            = data.databricks_node_type.smallest.id
  autotermination_minutes = 20

  autoscale {
    min_workers = 1
    max_workers = 50
  }

  gcp_attributes {
    availability = "PREEMPTIBLE_GCP"
    zone_id      = "AUTO"
  }
}

변경 후

hcl
resource "databricks_cluster" "example" {
  cluster_name            = "Shared Autoscaling"
  spark_version           = data.databricks_spark_version.latest.id
  node_type_id            = data.databricks_node_type.smallest.id
  autotermination_minutes = 20

  autoscale {
    min_workers = 1
    max_workers = 50
  }

  gcp_attributes {
    availability           = "PREEMPTIBLE_WITH_FALLBACK_GCP"
    zone_id                = "AUTO"
    first_on_demand        = 1
  }
}

변경 후에는 first_on_demand = 1로 드라이버를 온디맨드에 배치하고, 선점형 용량을 확보하지 못할 때 나머지 노드를 온디맨드로 대체할 수 있습니다. zone_id = "AUTO"는 하나의 가용 영역을 자동 선택하며 여러 영역에 노드를 분산하는 설정은 아닙니다.

참조