API 개요
Hadoop Eco API는 코드 기반의 프로그래밍 방식으로 자원들을 관리하기 위한 인터페이스입니다.
Hadoop Eco에서 제공하는 REST API를 통해 카카오클라우드 콘솔 이외의 다양한 방법으로 클러스터 생성 및 조회 등을 처리할 수 있습니다.
API 공통
- API 요청에 대한 응답은
JSON
형태로 제공합니다. - API 사용을 위해서는 액세스 키 정보(액세스 키 ID와 보안 액세스 키)가 필요합니다.
- 작업 클러스터 API의 경우, Hadoop Eco 클러스터의 Open API Key를 발급받아야 합니다.
API 사용 준비
Hadoop Eco에서 제공하는 API를 호출하기 위해서는 액세스 키 정보를 발급받아야 합니다. 자세한 설명은 액세스 키 발급 문서를 참고하시기 바랍니다.
Hadoop ECO API 구분
Hadoop Eco Open API
Hadoop Eco Open API는 신규 클러스터 생성, 클러스터 조회, 클러스터 삭제 및 증설 등의 일반적인 클러스터의 생성 및 관리를 수행합니다. Hadoop Eco Open API 사용 시, Open API Key의 발급은 필요하지 않습니다.
작업 클러스터 API
일반적으로 Hadoop Eco에서는 클러스터가 특정 작업을 완료하면 상태가 Terminated
로 변경되며, 이 상태에서는 클러스터를 더 이상 사용할 수 없습니다. 하지만 작업 클러스터 API를 사용하면 기존에 생성되어 Terminated
상태인 클러스터에서 작업 스케줄링을 반복해서 실행할 수 있습니다.
작업 클러스터 API는 클러스터의 재사용성을 높이고, 필요할 때마다 새로운 클러스터를 생성하지 않고도 기존 클러스터에서 반복적으로 작업을 수행하여 효율적으로 클러스터를 관리할 수 있도록 지원합니다.
💡 Open API Key 발급 조건
콘솔에서 Open API Key를 발급 시, 다음 조건을 모두 충족해야 합니다.
- 클러스터 유형이
Core Hadoop
인 경우 - 클러스터 생성 시, 작업 스케줄링 활성화 옵션을
Hive
또는Spark
로 설정한 경우 - Hadoop Eco 클러스터의 상태가
Terminated(User Command)
또는Terminated(User)
인 경우
- 클러스터를 생성하는 과정 중 '5단계: 서비스 연동 설정'에서 외부 메타 스토어를 연동하여 생성한 클러스터를 Open API로 사용할 경우, 반드시 외부 메타 스토어와 설정을 그대로 유지해야 합니다.
- 외부 메타 스토어가 삭제되거나 정보가 변경되는 경우, 클러스터가 제대로 동작하지 않을 수 있습니다.
- API Key를 삭제하지 않은 상태에서 보안 그룹을 삭제한 경우, API Key를 재발급받으면 보안 그룹이 다시 생성되어 Open API 클러스터를 사용하실 수 있습니다.
자세한 Open API Key 발급 방법은 Open API Key를 참고하시기 바랍니다.
API Model
Hadoop Eco의 API Model은 다음과 같습니다.
Model - 클러스터
Data | Type | 설명 |
---|---|---|
Credential-ID | String | 액세스 키 ID |
Credential-Secret | String | 보안 액세스 키 |
Hadoop-Eco-Api-Key | String | 콘솔에서 발급받은 Open API key |
request-id | String | 요청 ID |
workerCnt | Integer | Hadoop Eco 워커 노드 개수 - 개수: 1 ~ 1,000개 |
workerVolumeSize | Integer | Hadoop Eco 워커 노드 블록 스토리지 크기 - 크기: 50 ~ 5120GB |
configHdfsReplication | Integer | Hadoop Eco HDFS 복제 개수 - 개수: 1 ~ 500개 |
configHdfsBlockSize | Integer | Hadoop Eco HDFS 블록 크기 - 크기: 1 ~ 1024MB |
userTaskDeployMode | String | Hadoop Eco Spark Job Deploy 모드 - 모드: client , cluster |
userTaskExecOpts | String | Hadoop Eco Spark 또는 Hive Job 설정 파라미터 |
userTaskExecParams | String | Hadoop Eco Spark Application 파라미터 |