클러스터 예약 삭제

비활성 클러스터에 대해 Google Cloud 요금이 발생하지 않도록 하려면 클러스터를 만들 때 Dataproc의 클러스터 예약 삭제 기능을 사용합니다. 이 기능은 다음 시점에 클러스터를 삭제하는 옵션을 제공합니다.

  • 지정된 클러스터 유휴 기간 후에
  • 지정된 향후 시점에
  • 클러스터 만들기 요청을 제출한 시점부터 시작된 지정된 기간 후에

클러스터 유휴 시간 계산

dataproc:dataproc.cluster-ttl.consider-yarn-activity 클러스터 속성은 다음과 같이 클러스터 유휴 시간 계산에 영향을 미칩니다.

  • 이 속성은 기본적으로 사용 설정 (true로 설정됨) 됩니다.
  • 이 속성이 사용 설정된 경우 클러스터 유휴 시간 계산을 시작하고 계속 늘리려면 YARN 및 Dataproc Jobs API 활동이 모두 유휴 상태여야 합니다.
    • YARN 활동에는 보류 중인 YARN 애플리케이션 및 실행 중인 YARN 애플리케이션이 포함됩니다.
    • Dataproc Jobs API 작업에는 Dataproc Jobs API에 제출된 대기 중인 작업과 실행 중인 작업이 포함됩니다.
  • 이 속성을 false로 설정한 경우 Dataproc Jobs API 활동은 클러스터 유휴 시간 계산을 시작하고 계속 늘리려면 유휴 상태여야 합니다.

클러스터 예약 삭제 사용

gcloud 명령어

클러스터 예약 삭제 기능을 사용해 다음 예약된 삭제 플래그를 gcloud dataproc clusters create 명령어에 전달하여 클러스터를 만들 수 있습니다.

플래그설명최소 단위최소값최댓값
--max-idle1클러스터가 유휴 상태에 들어가는 시점부터 클러스터 삭제가 시작되는 시점까지의 기간입니다. 기간은 IntegerUnit 형식으로 제공합니다. 여기서 단위로는 's, m, h, d'(각각 초, 분, 시, 일)를 사용할 수 있습니다. 예시: '30m' 또는 '1d'(클러스터가 유휴 상태가 된 후 30분 또는 1일)1초5분14일
--expiration-time2클러스터 삭제가 시작되는 시간으로 ISO 8601 datetime 형식입니다. 올바른 형식으로 datetime을 생성하는 쉬운 방법은 Timestamp Generator를 사용하는 것입니다. 예를 들어 '2017-08-22T13:31:48-08:00'은 만료 시간을 UTC -8:00 시간대의 13:21:48로 지정합니다.1초현재 시간부터 10분 현재 시간부터 14일
--max-age2클러스터 만들기 요청을 제출하는 시점부터 클러스터 삭제가 시작되는 시점까지의 기간입니다. 기간은 IntegerUnit 형식으로 제공합니다. 여기서 단위로는 's, m, h, d'(각각 초, 분, 시, 일)를 사용할 수 있습니다. 예시: '30m'(지금부터 30분) 또는 '1d'(지금부터 1일)1초10분14일
gcloud dataproc clusters create cluster-name \
    --region=region \
    --max-idle=duration \
    --expiration-time=time \
    ... other flags ...

다음 예약된 삭제 플래그를 gcloud dataproc clusters update 명령어에 전달하여 예약된 삭제 설정을 변경하거나 삭제하는 방식으로, 예약된 삭제 기능으로 생성된 클러스터를 업데이트할 수 있습니다(다른 클러스터 업데이트 플래그는 예약된 삭제 플래그와 함께 결합할 수 없음).

플래그설명최소 단위최소값최댓값
--max-idle1클러스터가 유휴 상태에 들어가는 시점부터 클러스터 삭제가 시작되는 시점까지의 기간입니다. 기간은 IntegerUnit 형식으로 제공합니다. 여기서 단위로는 's, m, h, d'(각각 초, 분, 시, 일)를 사용할 수 있습니다. 예시: '30m' 또는 '1d'(클러스터가 유휴 상태가 된 후 30분 또는 1일)1초5분14일
--no-max-idle이전에 max-idle 플래그를 통해 설정된 클러스터 유휴 기간을 기준으로 하는 클러스터 자동 삭제를 취소합니다.해당 없음해당 없음해당 없음
--expiration-time2클러스터 삭제가 시작되는 시간으로 ISO 8601 datetime 형식입니다. 올바른 형식으로 datetime을 생성하는 쉬운 방법은 Timestamp Generator를 사용하는 것입니다. 예를 들어 '2017-08-22T13:31:48-08:00'은 만료 시간을 UTC -8:00 시간대의 13:21:48로 지정합니다.1초현재 시간부터 10분. 새로운 시간은 이전에 설정된 시간 이후여야 합니다.현재 시간부터 14일
--max-age2클러스터 업데이트 요청을 제출하는 시점부터 클러스터 삭제가 시작되는 시점까지의 기간입니다. 기간은 IntegerUnit 형식으로 제공합니다. 여기서 단위로는 's, m, h, d'(각각 초, 분, 시, 일)를 사용할 수 있습니다. 예시: '30m'(지금부터 30분) 또는 '1d'(지금부터 1일)1초10분. 업데이트된 예약 삭제 시간(업데이트 시간 + 새 최대 기간)은 이전에 설정된 클러스터 삭제 시간 이후여야 합니다.14일
--no-max-age이전에 max-age 또는 expiration-time 플래그를 통해 설정된 최대 클러스터 기간을 기준으로 하는 클러스터 자동 삭제를 취소합니다.해당 없음해당 없음해당 없음
gcloud dataproc clusters update cluster-name \
    --region=region \
    --max-idle=duration \
    --no-max-age \
    ... other flags

REST API

cluster.create 또는 cluster.patch API 요청에서 다음 ClusterLifecycleConfig 필드를 설정하여 클러스터 예약 삭제 기능으로 클러스터를 만들 수 있습니다.

플래그 설명 최소 단위 최소값 최댓값
idleDeleteTtl1 클러스터가 유휴 상태에 들어가는 시점부터 클러스터 삭제가 시작되는 시점까지의 기간입니다. 초 단위 시간을 소수점 아래 9자리까지 지정할 수 있으며 's'로 끝냅니다. 예: '3.5s' 1초 클러스터를 만들거나 업데이트하는 시점부터 5분. 클러스터를 업데이트할 때 새 값은 이전에 설정된 값보다 커야 합니다. 기간이 비어 있는 cluster.patch 요청을 제출하면 이전에 설정된 idleDeleteTtl 값을 취소합니다. 14일
autoDeleteTime2 클러스터 삭제가 시작되는 시간입니다. RFC3339 UTC 'Zulu' 형식의 타임스탬프로, 정밀도는 나노초 수준입니다. 예: '2014-10-02T15:01:23.045123456Z' 1초 현재 시간부터 10분. 클러스터를 업데이트할 때 새 시간은 이전에 설정된 시간 이후여야 합니다. 현재 시간부터 14일
autoDeleteTtl2 클러스터 만들기 또는 업데이트 요청을 제출하는 시점부터 클러스터 삭제가 시작되는 시점까지의 기간입니다. 초 단위 시간을 소수점 아래 9자리까지 지정할 수 있으며 's'로 끝냅니다. 예: '3.5s' 1초 10분. 클러스터를 업데이트할 때 새 예약 삭제 시간(업데이트 시간 + 새 최대 기간)은 이전에 설정된 클러스터 삭제 시간 이후여야 합니다. 기간이 비어 있는 cluster.patch 요청을 제출하면 이전에 설정된 autoDeleteTtl 값을 취소합니다. 14일

콘솔

  • Dataproc 클러스터 만들기 페이지를 연 후 클러스터 맞춤설정 패널을 선택합니다. 예약된 삭제 섹션으로 스크롤한 후 클러스터에 적용할 옵션을 선택합니다.

예약된 삭제 클러스터 설정 보기

gcloud 명령어

gcloud dataproc clusters list 명령어를 사용하여 클러스터에 예약된 삭제가 사용 설정되었는지 확인할 수 있습니다.

 gcloud dataproc clusters list \
     --region=region
...
NAME         WORKER_COUNT ... SCHEDULED_DELETE
cluster-id   number       ... enabled
...

gcloud dataproc clusters describe 명령어를 사용하여 클러스터의 LifecycleConfig 예약된 삭제 설정을 확인할 수 있습니다.

gcloud dataproc clusters describe cluster-name \
    --region=region
...
lifecycleConfig:
  autoDeleteTime: '2018-11-28T19:33:48.146Z'
  idleDeleteTtl: 1800s
  idleStartTime: '2018-11-28T18:33:48.146Z'
...

autoDeleteTimeidleDeleteTtl은 클러스터에 사용자가 이전에 설정한 예약된 삭제 구성 값입니다. Dataproc는 최신 클러스터 유휴 시작 시간인 idleStartTime 값을 생성합니다. Dataproc는 클러스터가 idleStartTime + idleDeleteTtl에 유휴 상태로 유지되면 클러스터를 삭제합니다.

REST API

clusters.list 요청을 수행하여 클러스터에 예약된 삭제가 사용 설정되었는지 확인할 수 있습니다.

콘솔

Google Cloud 콘솔의 Dataproc 클러스터 페이지에서 클러스터 이름을 선택하여 클러스터의 예약된 삭제 설정을 볼 수 있습니다. 클러스터 세부정보 페이지에서 구성 탭을 선택합니다. 클러스터 구성 목록 아래로 스크롤하여 에약된 삭제 설정을 봅니다.