BLOG
요즘의 분석 워크로드는 일반적으로 하루 24시간, 일주일 내내 데이터 웨어하우스를 사용할 수 있어야 합니다. 하지만 빈번한 주기로 짧은 시간 동안만 Amazon Redshift 클러스터가 필요한 경우도 있으실 수 있습니다. 예를 들어 고객은 주기적인 ETL 작업을 실행, 테스트, 개발을 위해 클러스터를 사용하지만 쉬는 시간이나 주말에는 이를 사용하지 않을 수도 있습니다. 이 경우 고객은 데이터 웨어하우스를 일부만 쉽게 실행 할 수 있는 방법을 원할 수 있습니다. 이전에는 백업을 만들고 클러스터를 종료한 뒤, 스냅샷에서 클러스터를 복원하여 이 작업을 수행해야 했습니다. Amazon Redshift에서 일시 중지 또는 재시작 기능을 사용하면 훨씬 간단하게 빌링을 보류할 수 있습니다. 이 기능은 Amazon Redshift 클러스터를 몇 시간 동안 작동을 멈추길 원하시거나 정기적으로 예약된 시간에만 사용하길 원할 경우를 위해 설계되었습니다.
클러스터를 일시 중지하면 컴퓨터는 일시 중단되고 나중에 클러스터를 재개할 수 있도록 기본 데이터 구조와 데이터는 유지됩니다. 이 설정은 Amazon Redshift 콘솔이나 Amazon Redshift CLI를 사용하여 구성할 수 있습니다.
클러스터가 일시 중지되면 데이터 웨어하우스의 스토리지에 요금이 부과됩니다. 온디맨드 컴퓨팅 비용 청구는 초 단위로 중지 또는 재개됩니다. 일시 중지된 클러스터는 여전히 콘솔에 항목으로 나타날 수 있습니다. 또한 운영 요구 사항에 맞는 예약을 사용하여 일시 중지 및 재시작 작업을 자동화 할 수도 있습니다.
Amazon Redshift 콘솔에서 실행하기
Amazon Redshift 콘솔에서는 다음의 단계를 따라 일시 중지 및 재 시작을 진행합니다.
- Amazon Redshift 콘솔에서 Clusters를 선택합니다.
- 원하는 클러스터를 선택합니다.
- Actions 버튼을 클릭합니다.
- Pause 버튼을 클릭합니다.
- 클러스터를 중지할 시점은 다음과 같은 세가지 옵션이 있습니다. 이 옵션 중 원하는 항목을 선택합니다.
- 클러스터를 즉시 중지 하려면 Pause now버튼을 선택하십시오.
- 나중에 클러스터를 중지 하려면 Pause later 버튼을 선택하십시오.
- 스케줄에 따라 설정된 클러스터를 중지 후 재 시작 하려면 Pause and resume on schedule 버튼을 선택하십시오.
- 본 예제에서는 Pause now를 선택하겠습니다.
- Pause now 버튼을 클릭합니다.
클러스터가 수정 상태로 변경됩니다. 클러스터가 일시 중지되기 까지는 최대 몇 분 정도 걸릴 수 있으나 비용은 즉시 중단됩니다.
아래의 스크린 샷은 클러스터의 상태를 보여주는 화면입니다.
Amazon Redshift는 클러스터를 일시 중지 하기 전에 모든 처리되지 않은 쿼리를 처리합니다. 클러스터가 일시 중지된 후 Amazon Redshift 콘솔에서 클러스터 상태를 확인할 수 있으며 클러스터를 다시 시작할 수도 있습니다..
클러스터를 재 시작하려면 다음 단계를 따라줍니다.
- Amazon Redshift 콘솔에서 Clusters를 선택하십시오.
- 원하는 클러스터를 선택하십시오.
- Actions 버튼을 선택하십시오.
- Resume 버튼을 선택하십시오.
- 클러스터를 다시 시작할 시점을 선택하십시오. 이 옵션은 일시 중지에서의 옵션과 동일합니다.
- 본 예제에서는 Resume now를 선택하겠습니다.
- Resume now를 클릭하십시오.
클러스터가 수정 상태로 변경됩니다. 쿼리가 처리되기 전 클러스터 크기에 따라 재 시작하는데 몇 분 정도 걸릴 수 있습니다. 비용은 클러스터가 활성화된 경우에만 발생합니다.
아래의 스크린 샷은 클러스터 상태를 보여주는 화면입니다.
CLI에서 실행하기
다음 두 개의 명령어는 일시 중지와 재 시작 클러스터입니다.
- Pause-cluster
- Resume-cluster
클러스터를 일시 중지 하기 위해서는 다음 명령어를 사용하십시오.
aws redshift pause-cluster –cluster identifier <insert cluster identifier here>
일시 중지된 클러스터를 재 시작하려면 다음 명령어를 사용하십시오.
aws redshift resume-cluster –cluster identifier <insert cluster identifier here>
일시 중지 및 재 시작 작업 예약
작업 스케줄에 따라 클러스터를 일시 중지하고 재 시작 하도록 예약할 수 있습니다. 예를 들어 본 예제에서는 금요일 오후 8시에 일시 중지되고 월요일 오전 7시에 재 시작하도록 해보겠습니다. 이 설정은 Amazon Redshift 콘솔 또는 API를 통해 구성할 수 있습니다.
Amazon Redshift 콘솔을 사용하여 스케줄 예약
Amazon Redshift를 사용하여 일시 중지와 재 시작 클러스터 스케줄을 예약하려면 다음 단계를 수행하십시오:
- Amazon Redshift 콘솔에서 Clusters를 선택하십시오.
- 원하는 클러스터를 선택하십시오.
- Actions 버튼을 클릭하십시오.
- Pause 버튼을 클릭하십시오.
- Pause and resume on schedule을 선택하십시오.
- Schedule name을 선택 한 뒤 스케줄 이름을 선택하십시오.
- 필요한 경우 시작 및 종료할 날짜를 입력하십시오.
- Pause every와 Resume every를 선택한 뒤 원하는 날짜를 선택하십시오.
- Schedule recurring pause and resume을 선택하십시오.
Schedules 탭에서 아래의 화면처럼 일시 중지 및 재 시작 일정을 확인할 수 있습니다.
CLI를 사용하여 스케줄링 하기
다음 CLI 명령어를 사용하여 예약된 일시 중지 및 재 시작 작업을 생성 및 수정할 수 있습니다.
예약된 작업을 한 번 생성하려면 다음 코드를 입력하십시오:
aws redshift create-scheduled-action –scheduled-action-name test-resume –schedule “at(2020-02-21T02:00:00)” –target-action “{\”ResumeCluster\”:{\”ClusterIdentifier\”:\”redshift-cluster-1\”}}” –iam-role arn:aws:iam::<Account ID>:role/<Redshift Role>
반복 예약 작업을 생성하려면 다음 코드를 입력하십시오:
aws redshift create-scheduled-action –scheduled-action-name “scheduled-pause-repetitive” –target-action “{\”PauseCluster\”:{\”ClusterIdentifier\”:\”redshift-cluster-1\”}}” –schedule “cron(30 20 * * ? *)” –iam-role “arn:aws:iam::<Account ID>:role/<Redshift Role>”
본 예제에서 사용한 코드는 매일 오후 10시 30분에 클러스터를 일시 중지 합니다.
기존에 예약된 작업을 수정하려면 다음 코드를 입력하십시오:
aws redshift modify-scheduled-action –scheduled-action-name “scheduled-pause-repetitive” –schedule “cron(30 * * * ? *)”
방금 전에 사용한 코드는 매 시간마다 한 시간씩 실행되도록 예약되어 일시 중지를 반복합니다.
예약된 작업을 삭제하려면 다음 코드를 입력하십시오:
aws redshift delete-scheduled-action –scheduled-action-name “scheduled-pause-repetitive”
글을 마치며…
Amazon Redshift의 일시 중지 및 재 시작 기능은 항상 작동시켜 놓을 필요가 없는 클러스트에 적합합니다. 이 기능으로 클러스터를 바로 일시 중지하거나 특정 시간에 일시 중지 및 재 시작을 하기 위해 정기적으로 예약된 스케줄을 생성할 수 있습니다. 이렇게 간단한 방식으로 고객은 쉽고 편리하게 데이터를 유지 관리할 수 있습니다. 뿐만 아니라 유연한 온디맨드 가격과 초당 과금되는 비용으로 Redshift 컴퓨팅 클러스터 비용을 더욱 효과적으로 제어할 수 있고, 미리 정해진 양의 리소스를 구입하지 않고도 최저 비용으로 데이터 웨어하우스를 이용할 수 있습니다.
** 메가존 클라우드 TechBlog는 AWS BLOG 영문 게재 글 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 게재하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달해드리도록 하겠습니다.