본문으로 건너뛰기

Hadoop 클러스터 오토 스케일링 자동화

카카오클라우드 Monitoring Flow와 Hadoop Eco를 사용하여 Hadoop 클러스터의 오토 스케일링을 자동화하는 과정을 단계별로 설명합니다.

사전 작업

Monitoring Flow 환경 준비

Monitoring Flow를 사용하기 위해서는 VPC와 서브넷 생성이 선행되어야 합니다.

  1. 카카오클라우드 콘솔 > Beyond Networking Service > VPC > VPC 메뉴로 이동합니다.
  2. VPC 생성을 참고하여 VPC를 생성합니다.
  3. 서브넷 생성을 참고하여 서브넷을 생성합니다.

Monitoring Flow 시나리오 예제

Monitoring Flow를 활용하여 Hadoop 클러스터 사이즈를 조정할 수 있습니다.

시나리오 소개

이 시나리오에서는 API 스텝을 활용하여 다음의 주요 내용을 다룹니다.

  • 카카오클라우드 Hadoop Eco를 사용하여 Hadoop 클러스터를 생성합니다.
  • Monitoring Flow의 시나리오를 생성하여 Hadoop 클러스터 노드들에 대한 Scale in/out 스케줄을 생성합니다.
  • Alert Center 연동을 이용하여 시나리오 결과에 대한 응답을 확인합니다.
기본 정보

1. Hadoop Eco 클러스터 생성하기

이 실습은 Hadoop Eco를 사용하며, 활성화 상태의 클러스터를 사용합니다. 활성화 상태의 클러스터가 없다면, 클러스터 생성 문서를 참고하여 클러스터를 생성해 주세요.

  1. 카카오클라우드 콘솔 > Analytics > Hadoop Eco > Cluster 메뉴로 이동합니다.
  2. 활성화 상태의 클러스터에서 클러스터 ID 정보를 확인합니다.
    • 해당 예제에서 Monitoring Flow 스텝 구성 시 필요한 정보입니다.

      이미지 클러스터 상세

2. 액세스 키 발급

IAM 사용자 자격 증명인 액세스 키(Access Key)는 액세스 키 ID와 보안 액세스 키를 의미하며, API 인증 토큰 발급을 위해 필요한 정보입니다. 발급 시 선택한 프로젝트에서 맡은 IAM 역할에 따라 액세스 키의 권한이 주어집니다.

  1. 카카오클라우드 콘솔 > 사용자 설정 > 액세스 키 메뉴로 이동합니다.

  2. 액세스 키 생성 문서를 참고하여 액세스 키를 생성합니다.

  3. 생성 완료 후, 액세스 키 ID보안 엑세스 키를 복사합니다.
    - 해당 예제에서 Monitoring Flow 스텝 구성 시 필요한 정보입니다.

    이미지 액세스 키 생성

3. 시나리오 생성하기

시나리오를 생성하여 스케줄과 시나리오 스텝을 구성합니다.

  1. 카카오클라우드 콘솔 > Management > Monitoring Flow> 시나리오 메뉴로 이동합니다.

  2. [시나리오 생성] 버튼을 클릭합니다.

  3. 플로우 커넥션 선택 없이, 스케줄을 설정합니다.
    - 해당 예제에서 스케줄링 작업에는 서브넷간 통신이 필요하지 않기 때문에, 플로우 커넥션을 생성하지 않고 시나리오를 만들 수 있습니다.

    이미지 시나리오 생성

4. 시나리오 스텝 추가하기: API

시나리오를 구성하는 스텝들을 조합하여 하나의 시나리오를 완성합니다. 아래의 예시를 확인 후 값을 입력해 주세요.

  1. 카카오클라우드 콘솔 > Management > Monitoring Flow > 시나리오 메뉴로 이동합니다.

  2. 시나리오 메뉴에서 이름을 클릭합니다.

  3. 세부 정보 탭에서 우측 상단의 [시나리오 스텝 추가] 버튼을 클릭합니다.

  4. 다음 테이블을 참고하여 항목을 설정합니다. 3가지 예시를 모두 입력하여 Headers 값을 저장합니다.

    항목예시 1예시 2예시 3설명
    유형APIAPI 선택
    스텝 이름API-1스텝에 설정할 이름
    Expected code200입력한 URL의 예상 Status Code를 입력
    - 미입력 시 200으로 자동 설정
    MethodPOSTAPI 요청 방법 선택
    URL예시 확인
    - /scale-out 또는
    /scale-in을 입력
    접근하는 API의 URL 입력 - 예시: https://hadoop-eco.kr-central-2.kakaocloud.com/v2/hadoop-eco/clusters/{Cluster-ID}/scale-out
    - Analytics > Hadoop Eco > Cluster에서 클러스터 ID 확인 가능
    Header의 KeyContent-typecredential-idcredential-secretHeaders Key 입력
    - Hadoop 클러스터 생성 Request 참고
    Header의 Valueapplication/json액세스 키 ID보안 액세스 키Headers Value 입력
    - Hadoop 클러스터 생성 Request 참고
    Body{"scaleCnt": 1 }Body 값 입력
    - 변수 입력 가능

    이미지 Scale Out

5. 시나리오 테스트하기

시나리오 스텝을 추가하여 정상적으로 동작하는 테스트할 수 있습니다.

  1. 시나리오 스텝의 필수 항목을 모두 입력한 후에 우측 상단의 테스트를 클릭합니다.

  2. 테스트 실행 결과를 확인합니다.

    이미지 테스트 성공 결과

  3. 오류 항목이 있는 경우, 우측 패널 하단에서 오류 상세를 확인해 주세요.

    안내

    비활성화 상태의 클러스터에 접근 시, 호출 실패 오류가 확인됩니다. 올바른 IP 주소를 입력해 주세요.

  4. 테스트 결과 확인 후, 우측 상단의 [닫기] 버튼을 누르면 시나리오 스텝 편집 화면으로 이동합니다.

  5. 시나리오 스텝 편집 화면의 우측 상단의 저장 버튼을 클릭하여 생성한 시나리오를 저장합니다. 저장된 시나리오는 설정한 스케줄에 맞춰 실행됩니다.

  6. 실행 결과는, 아래의 6.실행 결과 확인 하기를 참고하세요.

6. 실행 결과 확인하기

실행이 완료된 시나리오의 실행 결과와 실행 시간을 확인할 수 있습니다.

  1. 카카오클라우드 콘솔Management > Monitoring Flow > 시나리오 메뉴를 선택합니다.

  2. 시나리오 메뉴에서 정보를 확인할 시나리오를 선택합니다.

  3. 시나리오의 상세 화면에서 실행 결과 탭을 클릭합니다.

    이미지 시나리오 실행 결과 목록

  4. 실행 결과 목록에서 이벤트를 클릭하여 상세 결과를 확인합니다.

    이미지 시나리오 실행 결과 상세

7. Alert Center 알림 정책 만들기

Alert Center 알림 정책 설정을 통해, Monitoring Flow의 실행 결과(성공/실패)에 대한 응답을 받을 수 있습니다.

  1. 카카오클라우드 콘솔Management > Alert Center> 알림 정책 메뉴를 선택합니다. 알림 정책 생성 문서를 참고하시기 바랍니다.

  2. 다음 테이블을 참고하여 항목을 설정합니다. 조건 추가를 클릭 시 여러 개의 알림을 만들 수 있습니다.

    항목설정 내용
    조건 유형메트릭
    서비스Monitoring Flow
    조건 설정메트릭 항목으로 성공/실패 알림을 받을 수 있음
    - Scenario Success Count와 Scenario Fail Count를 시나리오에 각각 설정 시, 모든 메트릭 알림을 받을 수 있음
    - 실패 시에만 알림을 받으려면 Scenario Fail Count만 설정
    자원 항목알람을 받으려는 대상의 시나리오 선택
    임계치1 count 이상
    지속 시간1 분
  3. 하단의 [다음] 버튼을 클릭하여 알림 정책 만들기를 완료합니다.

    이미지 알림 정책 생성

  4. 설정한 알림 정책으로 Monitoring Flow 시나리오 실행 결과(성공 또는 실패) 알림이 수신되는지 확인합니다.