- 인쇄
- PDF
Cloud Hadoop 개요
- 인쇄
- PDF
Cloud Hadoop은 Apache Hadoop, HBase, Spark, Hive, Presto 등의 오픈소스 기반 프레임워크를 사용자가 자유롭게 사용하여 빅데이터를 쉽고 빠르게 처리할 수 있는 완전 관리형 클라우드 분석 서비스입니다. 터미널을 통한 서버 직접 접속을 허용하고, Ambari를 통해서 제공되는 편리한 클러스터 관리 기능을 통해 사용자가 직접 관리할 수 있습니다.
네이버 클라우드 플랫폼의 Cloud Hadoop 서비스로 초기 인프라를 손쉽게 구성할 수 있으며, 두 개의 마스터 노드 제공 및 필요 시 언제든지 가능한 노드 확장/축소를 통해 서비스와 작업의 안정성 및 유연한 확장성과 가용성을 확보할 수 있습니다. 또한 다양한 프레임워크와 서버 타입 지원으로 대용량의 데이터를 분석할 수 있으며, Web UI를 통해 관리 및 모니터링하여 클러스터를 제어할 수 있습니다.
Cloud Hadoop이 제공하는 다양한 기능
사용 편의성
- Cloud Hadoop은 자동으로 클러스터 생성을 지원하여 인프라 관리 작업에 대한 부담을 덜 수 있습니다.
- 여러 오픈소스 프레임워크 설치 및 구성, 최적화 과정을 통해 언제든 분석 가능한 시스템을 확보할 수 있습니다.
비용 효율성
- 클러스터가 시작된 시점부터 종료될 때까지 사용자가 사용한 만큼만 지불하는 효율적인 서비스입니다.
- 데이터 저장소로 네이버클라우드의 Object Storage를 사용하여 저렴한 비용으로 대량 데이터를 저장합니다.
유연한 확장성 및 안정성
- 사용자 원하는 시간에 데이터 분석에 필요한 인스턴스의 수를 손쉽게 줄이거나 늘릴 수 있습니다.
- 두 개의 마스터 노드를 제공함으로써 서비스와 작업의 안정성과 가용성을 높일 수 있습니다.
다양한 프레임워크 지원
- Hadoop: 간단한 프로그래밍 모델을 사용하여 컴퓨터 클러스터 전체에 대규모 데이터 세트를 분산 처리할 수 있는 프레임워크
- HBase: 분산되고 확장 가능한 대용량 데이터 저장소
- Spark: 대규모 데이터 처리를 위한 통합 분석 엔진
- Hive: SQL을 사용하여 분산 스토리지에 있는 대규모 데이터 세트의 읽기, 쓰기 및 관리할 수 있는 데이터웨어 하우스 소프트웨어
- Presto: 빅데이터용 분산 SQL 쿼리 엔진
관리 및 모니터링을 위한 Web UI 제공
- Cloud Hadoop 클러스터에 대한 정보 및 상태를 관리할 수 있는 UI를 제공합니다.
- 클러스터에 대한 루트 접근 권한을 제공하므로 클러스터를 완벽하게 제어할 수 있으며, 프레임워크의 설정값을 확인하거나 수정할 수 있습니다.
Cloud Hadoop 사용 가이드 안내
- Cloud Hadoop 개요: Cloud Hadoop의 소개 및 강점 안내, Cloud Hadoop 이용에 도움이 되는 가이드, 연관 리소스, 자주 하는 질문과 답변 안내
- Cloud Hadoop 이용 시나리오: Cloud Hadoop에 대한 전체 이용 시나리오 안내
- Cloud Hadoop 사용 준비: Cloud Hadoop을 이용하기 위한 지원 사양 안내
- Cloud Hadoop 시작: 네이버 클라우드 플랫폼 콘솔에서 Cloud Hadoop을 생성하는 방법 안내
- Cloud Hadoop 사용: Cloud Hadoop 사용 방법 안내
- Cloud Hadoop ecosystem 활용: Cloud Hadoop 제공 애플리케이션 활용 방법 안내
- Cloud Hadoop 연동: Cloud Hadoop과 외부 시스템 연동 방법 안내
- Cloud Hadoop 리소스 관리: Cloud Hadoop 리소스 정보 확인
- Cloud Hadoop 권한 관리: Cloud Hadoop 권한 관리 방법 및 정책 안내
- Cloud Hadoop 릴리스 노트: Cloud Hadoop 버전 및 가이드 업데이트 이력
Cloud Hadoop 연관 리소스
네이버 클라우드 플랫폼에서는 Cloud Hadoop에 대한 고객의 이해를 돕기 위해 가이드 외에도 다양한 연관 리소스를 제공하고 있습니다. Cloud Hadoop을 회사에 도입하기 위해 고민 중이거나 데이터 관련 정책을 수립하면서 자세한 정보가 필요한 개발자, 마케터 등은 다음 리소스를 적극 활용해 보십시오.
- API 가이드: Developers 사용을 위한 지침
- CLI 가이드: Developers 사용을 위한 지침
- Sub Account 사용 가이드: Cloud Hadoop을 관리하는 다양한 권한 레벨의 관리자 계정이 필요한 경우 이용할 수 있는 Sub Account 가이드
- 요금 소개, 특징, 상세 기능
- 서비스 최신 소식: Cloud Hadoop 관련 최신 소식
- 자주 하는 질문: Cloud Hadoop 사용자들이 자주 하는 질문
- 문의하기: 사용 가이드를 통해서도 궁금증이 해결되지 않는 경우 직접 문의
자주 하는 질문을 먼저 확인해 보십시오.
Q. Cloud Hadoop 클러스터 노드 타입에는 어떤 것이 있나요?
A. Cloud Hadoop 클러스터는 데이터를 분산 저장하고 분석할 목적으로 구성된 클러스터, 노드의 집합이라고 할 수 있습니다. 클러스터 내부 노드는 목적에 따라서 아래와 같이 세 가지 타입이 존재합니다.
- 엣지 노드: 외부 접속을 위한 게이트웨이(Gateway)용 노드
- 마스터 노드: 작업자 노드를 모니터링하는 관리자 노드. 고가용성 지원으로 2대의 마스터 노드가 생성되며 개수 변경은 불가
- 작업자 노드: 마스터 노드의 명령을 받아 실제 데이터 분석 등의 작업을 수행하는 노드. 최초 생성은 최소 2개, 최대 8개까지 가능하며, 그 이후에는 동적으로 노드 추가/삭제가 가능
Q. Cloud Hadoop 서비스는 어떻게 구성되나요?
A. Cloud Hadoop은 Hadoop 클러스터를 쉽고 간편하게 구축하고 관리할 수 있는 서비스입니다. Hadoop, HBase, Spark, Presto 등의 구성 요소를 만들어 대용량 데이터 처리를 위한 시스템을 구축하고 운영할 수 있습니다. 클러스터에는 대량의 데이터를 처리할 수 있는 오픈소스 프레임워크인 Apache Hadoop, HBase, Hive, Spark를 설치할 수 있습니다. Cloud Hadoop 서비스의 구성은 다음의 구성도(아키텍처)를 참고해 주십시오.
Q. putty에서 SSH 접속 과정에서 network error: connection timed out
가 발생합니다.
A. ACG에서 ssh 접속(22번 포트)를 허용하였으나, ssh 접속 에러가 발생하는 경우, Network ACL (NACL)에서 ssh 접속(22번 포트)이 차단된 것일 수 있습니다. NACL에서 ssh 접속(22번 포트)을 허용하십시오.
Q. NCP 서버의 Bandwidth는 어느 정도인가요?
A. NCP 서버의 기본 Bandwidth는 약 1Gbps(1Gbits/sec) 입니다.
Q. NCP 서버 사용 중 데이터를 읽는 과정에서 전체적으로 트래픽이 많이 발생합니다. 네트워크 트래픽 사용량이 많을 때는 어떻게 사용하는 게 좋을까요?
A.
- 여러 대의 작업자 노드를 추가해 데이터와 트래픽을 분산시킬 수 있습니다.
- Storage 리소스와 Computing 리소스를 분리하여 Object Storage에 데이터를 저장하고, Cloud Hadoop의 Computing 자원을 이용하여 Object Storage의 데이터를 읽고 저장하면 네트워크 트래픽 사용량을 줄일 수 있습니다.
Q. Cloud Hadoop Ambari Metric 서비스에서 일반적으로 동작 중인 상태와 maintenance mode로 동작 중인 상태에서 기능에 어떠한 차이가 있나요?
A. Ambari WebUI에서 제공하는 Maintenance Mode 기능은 서비스 또는 호스트 단위로 설정이 가능하도록 되어 있습니다.
- Maintenance mode 설정하게 되면, 알람 발송이 되지 않습니다.
- 호스트(서버) 단위로 Maintenance Mode를 설정한 경우, 서비스 재시작 작업 등과 같은 일괄 작업을 수행 시 일괄 작업에서 제외 처리됩니다.
Q. Hue에서 show tables를 수행 시 Hive 인터프리터에 View 테이블 목록이 나타나지 않습니다.
A. show tables
수행 시 일반 테이블 목록만 노출되게 됩니다. show views
수행하여 View 테이블 목록을 확인하실 수 있습니다.
Q. hive가 아닌 계정으로 Hive에 접속 후 hive query를 실행하는 경우에 Permission denied
오류가 발생합니다.
A. 두 가지 해결 방안이 있습니다.
- 해당 계정을 Yarn Queue ACL에 추가하는 방안이 있습니다. Ambari WebUI 로그인 > Yarn Queue Manager 선택 > default (yarn queue) 선택 후 Administer Queue의 Users 와 Submit Applications 의 Users에 해당 계정을 추가하십시오.
- hive 계정을 이용하시면 별도의 계정 추가 없이 사용 가능합니다.
Q. hadoop fsck /
를 실행하여 파일시스템 체크 시 오류가 발생합니다.
A. hdfs의 fsck 는 hdfs 계정으로 수행가능합니다. sshuser로 로그인 후 sudo su - hdfs
로 계정을 전환한 후 수행하십시오.
Q. Hive 를 통해서 Object Storage(S3) 연동하는 과정에서 S3 와 통신 오류가 발생합니다.
A. Cloud Hadoop 리전별 object storage 주소를 확인해 주십시오. Public Subnet 내 서버라도 공인IP 할당이 되지 않은 마스터 서버에서는 Object Storage 사설 도메인으로만 통신이 가능합니다.
Object Storage 도메인 주소
- Private Endpoint: kr.object.private.fin-ncloudstorage.com
- Public Endpoint: kr.object.fin-ncloudstorage.com
Q. Object Storage 버킷을 이용해서 데이터 마이그레이션을 진행하려고 합니다. 하나의 Object Storage 버킷에 여러개의 Hadoop Cluster을 연결할 수 있나요?
A. Cloud Hadoop 생성 시 지정한 Object Storage 버킷은 다른 Cloud Hadoop 생성 시 선택할 수 없습니다. 마이그레이션을 하시기 위해서는 아래와 같은 방법을 사용하실 수 있습니다.
- Object Storage에 신규 버킷을 생성하고, 데이터 업로드를 진행하십시오.
- 신규 Cloud Hadoop 생성 시 데이터를 업로드한 신규 버킷을 선택하고 진행하십시오.
Q. 현재 사용 중인 Cloud Hadoop 클러스터는 삭제한 후, 해당 데이터는 그대로 사용하고 싶다면 어떻게 해야 하나요?
A. 아래 방법을 통해 Cloud Hadoop 클러스터는 삭제하더라도 데이터는 그대로 사용할 수 있습니다.
- 분석이 필요한 데이터는 Object Storage 저장하시고, 이를 Cloud Hadoop의 Hive에서 External table로 연동해서 사용하시면 재사용 가능합니다.
Q. 클러스터 생성 시 클러스터 add-on (HBASE, Impala, Nifi 등)을 선택하지 않아도 추후 설치를 통해 이용할 수 있나요?
A. 클러스터를 생성할 때 add-on을 선택하지 않더라도 Ambari Web UI에서 [Add Service] 버튼을 클릭하여 서비스를 추가할 수 있습니다.
Q. Apache Ambari에서 Hive View를 접속할 수 없습니다.
A. Ambari 2.7.0부터는 Hive View를 지원하지 않습니다. 이용을 원하실 경우 Hue를 이용하여 Hive에 접속하십시오.
Q. Cloud Hadoop 클러스터 1.9 버전을 사용할 경우 Presto 0.240 버전이 내장되어 있는데, Presto를 최신 버전으로 마이그레이션 할 수 있나요?
A. Presto(Trino)에 대한 버전 업그레이드는 지원하지 않습니다. Cloud Hadoop 2.0 이상의 버전은 Presto 0.240의 상위 버전인 Trino 377을 지원하고 있으니 참고해주십시오.
Cloud Hadoop에서 지원하는 버전에 대한 자세한 내용은 클러스터 버전별 지원 애플리케이션에서 확인하실 수 있습니다.
Q. Ambari Infra Solr 서비스가 중지된 후 재시작이 불가합니다.
A. 로그 데이터가 많이 누적되어 Full GC로 인해 Infra Solr 서비스 가동이 중지될 수 있습니다.
- Infra Solr은 로그를 저장하는 서비스이므로 장기간에 걸쳐 저장된 로그 양에 따라 Full GC 등으로 인해 서비스 가동이 어려울 수 있습니다.
- 서비스 가동이 어려운 경우에는 아래와 같이 조치해 주십시오.
- 서비스 가동을 위해 Infra Solr의 Heap 사이즈를 늘립니다. Heap 사이즈는 Ambari Web UI > Infra Solr > Configs에서 조정할 수 있습니다.
- 서비스가 정상적으로 가동되면 Infra Solr의
hadoop_logs
에서 일정 기간 이전의 로그 데이터를 삭제합니다.# 한 달 이전의 데이터 삭제 예시 curl "http://{INFRA-SOLR-HOSTNAME}:8886/solr/hadoop_logs/update?commit=true" -H "Content-Type: text/xml" --data-binary "<delete><query>evtTime:[* TO NOW-1MONTHS]</query></delete>"
Q. Hive 쿼리 실행 시 System times on machines may be out of sync
에러가 발생합니다.
A. System time과 Hardware time 간 동기화가 필요합니다. Cloud Hadoop 내 모든 서버에서 아래의 작업을 수행해 주십시오.
- 시간 확인
- System time 확인:
date
- Hardware time 확인:
hwclock
- System time 확인:
- 시간 동기화
- Hardware time을 System time에 반영:
hwclock --hctosys
- Hardware time을 System time에 반영:
Q. ntpstat
수행 시 unsynchronised
가 발생합니다.
A. 시간 동기화 설정 점검을 참조해 Cloud Hadoop 서버 시간을 동기화해 주십시오.
Q. Trino 쿼리 로그의 보관 주기를 설정할 수 있나요?
A. 오픈소스인 Trino에서는 로그 보관 주기 설정 기능을 제공하고 있지 않습니다. 대신 Trino에서 제공하는 프로퍼티를 활용해 쿼리 기록을 관리하실 수 있습니다.
query.max-history
: 최대 저장 가능한 쿼리 개수 설정query.min-expire-age
: 기록 만료에 걸리는 최소 시간 설정
Trino에서 쿼리 기록은 In-Memory에 저장되므로 query.max-history를 너무 큰 값으로 설정하면 성능에 영향이 있을 수 있습니다.
Q. Trino 쿼리 이력을 파일로 저장할 수 있나요?
A. 오픈소스인 Trino에서는 쿼리 기록을 파일로 저장하는 기능을 제공하고 있지 않습니다. 대신 Trino API(http://<TRONO_FQDN>:8285/ui/api/query
)를 활용해 메모리에 있는 쿼리 기록을 JSON 형태로 받아 활용하실 수 있습니다.
Q. Hive 서비스에서 신규 계정을 추가하고 싶습니다.
A. Apache Hive는 운영체제의 로컬 계정을 사용하므로, 클러스터 내에서 신규 계정을 생성하시면 됩니다 아래의 작업을 수행해 주십시오.
- Cloud Hadoop 모든 서버에 신규 로컬 계정 생성
useradd -u {uid} {new_user} -g hadoop
- uid는 모든 서버에서 동일한 값으로 통일 권장
- HDFS 상에 신규 계정을 위한 디렉터리 생성
hdfs dfs -mkdir /user/{new_user}
hdfs dfs -chown {new_user}:hadoop /user/{new_user}
Q. Impala 포트는 어디서 확인할 수 있나요?
A. Impala 포트는 Ambari Web UI > Impala > Configs > Advanced impala-port > Hive Server2 port에서 확인하실 수 있습니다. Impala 포트는 기본적으로 21050으로 설정되어 있습니다.
Q. 엣지 노드의 SSL 인증서를 가져오려면 어떻게 해야 하나요?
A. scp 명령어를 사용해 엣지 노드의 인증서를 현재 작업 중인 서버로 복사해 가져오실 수 있습니다.
또는 웹 브라우저에서 인증서를 다운로드 받는 방법도 있습니다. Application Web UI에 접속해 인증서 뷰어 > 세부정보 > 내보내기를 클릭해 인증서를 가져오실 수 있습니다.
Q. Application Web UI에 접속이 되지 않습니다.
A. 클러스터의 ACG 룰에서 접근 소스 및 허용 포트가 알맞게 설정되었는지 확인해 주십시오. 만약, SSL VPN을 사용하시고 계신 경우 Routing Table에 0.0.0.0/0 값을 목적지 주소로 사용하지 않도록 주의가 필요합니다. 자세한 내용은 Web UI 접속을 위한 사전 작업에서 확인해 주십시오.