빅데이터/Cloudera

[Cloudera] 클라우데라 설치하는 방법 - (Linux, Cloudera Manager)

쌍쌍바나나 2016. 10. 13. 21:33
반응형

들어가며

  Hadoop의 MapReduce와 HDFS 등 Hadoop Ecosystem을 설치하고, 설정을 하는게 매우 번거로운 작업이 많다. 그렇기 때문에 각종 Application을 패키지화 해서 개발자들에게 제공하는 회사들이 등장하기 시작한다. Cloudera와 Hortonworks가 바로 자신들만의 Manager를 통해서 각종 어플리케이션을 배포하고, 설정을 쉽고 빠르게 할 수 있도록 도움을 주고 있다. 그렇기 때문에 결과적으로 Hadoop, Spark, Hive, 그리고 Hue와 같은 기존에는 독립적으로 설치해서 사용했다면, 이제는 Cloudera에서 제공하는 Manager를 통해서 설치를 해보자.

Pre-Installation

  설치하기 전에는 호스트 등록과, ssh-keygen을 통해 ssh-key를 등록을 해야한다. 이 작업을 하는 이유는 추후에 Cloudera Manager를 통해 설치할 호스트의 ip와 hostname을 등록을 하고, ssh-key를 등록하므로써, 비밀번호 없이 ssh로 호스트에 접근이 가능해야, 배포를 어떠한 제약이 없이 가능하다. 

1. ssh-key 등록

[Linux] SSH key 생성 및 패스워드 없이 로그인하기 을 참고해서 등록을 하면된다. 

2. 호스트 등록하기

  호스트는 /etc/hosts의 경로에서 등록이 가능하다. 맨 아래에 자신이 추가하고자 하는 ip hostname을 등록하자
예)  123.123.123.123 banana.hostname.com
이렇게 등록을 하고 나서 확인을 해야할 사항은 아래 커맨드를 입력했을때 아무런 반응없이 호스트에 연결이 되면 된다.
$ ssh <account>@banana.hostname.com
만약에 입력을 했는데, 비밀번호를 물어보면 1. ssh-key등록을 다시 수행하고, unknown hostname의 에러가 발생하면, 2번을 제대로 수행했는지 확인하면 된다. 

Cloudera Manager 다운로드, 설치, 배포

  이제는 본격적으로 Cloudera Manager를 다운로드 받고 설치하면 된다. Cloudera Manager는 클러스터의 노드 중에서 호스트로 사용할 노드 1대에 설치하면 된다. 느낌은 Cloudera Manager를 설치하고, 설치된 서버에서 각 노드로 Hadoop, Spark, Hive를 설치 배포를 하는 개념이다. 이러한 작업을 하기 위해서 설치하기 전에 앞서 ssh-key와 호스트를 등록했다. 

1. 바이너리 다운로드 및 설치

$ wget https://archive.cloudera.com/cm5/installer/latest/cloudera-manager-installer.bin
$ sudo chmod u+x cloudera-manager-installer.bin
$ sudo ./cloudera-manager-installer.bin 

설치가 완료되면, http://localhost:7180/으로 접속이 가능한지 확인한다. Cloudera Manager의 웹 사이트가 보이면 설치는 완료됬다. 이제 배포만 하면된다.

2. 배포하기

  서버에 Cloudera Manager가 설치가 됬다면,  admin/admin으로 로그인해서 안내를 해주는 순서를 따라가면된다. 만약에 에러가 생기면 /var/log/cloudera-scm-agent/cloudera-scm-agent.log를 sudo권한으로 보면 된다. 

$ sudo tail -F /var/log/cloudera-scm-agent/cloudera-scm-agent.log

  배포를 하다가 에러가 생기면 거의 대부분이 hostname에 관련된 오류일 것이다. 그러면 hostname이 정확하게 지정이 되어있는지 확인한다. 나같은 경우에는 parcel을 설치하는 freezing이 되었다. 이런 난관에서도 무엇을 보면 되느냐... 바로 로그를 확인한다. 이미 지나간내용이라면 아래와 같이 진행되는 로그를 보기 위해서는 위 커맨드를 수행하면 된다. 

$ sudo more -T /var/log/cloudera-scm-agent/cloudera-scm-agent.log

  위에서 freezing된 문제를 확인해본 결과 문제점은 이것 또한...  hostname때문이 이였음… 왜 호스트 네임이 지멋대루여, 컴퓨터는 거짓말안하는데 거짓말하는거 같단 말이지요. 이렇게 배포가 완료되면, 각 설정파일을 자신의 하드웨어 스펙에 맞게 수정하면 된다. 이제 마음껏 분산에서 처리를 해보시길.

반응형