Cloudera quickstart, Zeppelin
(제플린) 설치하기
포스팅을 시작하겠습니다.
Cloudera quickstart, Zepplelin 설치 과정
l Step 1 : Cloudera Quickstart 다운로드
l Step 2 : VirtualBox 시스템 가져오기
l Step 3 : Cloudera Manager 설치
l Step 4 : Zeppelin 다운로드
l Step 5 : Zeppelin 환경설정
l Step 6 : Zeppelin 실행
Step 1 : Cloudera Quickstart 다운로드
l https://www.cloudera.com/downloads/quickstart_vms/5-10.html
l Cloudera Manager quickstart VirtualBox 버전 다운로드
Step 2 : VirtualBox 시스템 가져오기
l VirtualBox 실행
가상 시스템 가져오기
다운로드 받은 Cloudera quickstart 이미지 선택
그냥 다음 다 누르면 된다.
설치
설치가 완료되면 실행을 누르고
맨 처음 화면이 뜨고 나면 테스트를 진행보자
터미널창을 열어 textfile.txt을 생성 후 hdfs 에 파일을 넣어보자
실행 후 파이어폭스 실행 후 즐겨찾기에 있는 Hue 를 선택 후
오른쪽 위에있는 파일브라우저를 선택해 확인해 보자
이단계를 건너 뛰어도 된다.
Step 3 : Cloudera Manager 설치
Cloudera Manager를 설치하기 전에!
Cloudera Express : 최소 8GB RAM, 최소 2 Virtual CPUs
Cloudera Enterprise 최소 10GM RAM, 최소 2 Virtual CPUs
가상머신의 설정을 변경해주어야한다.
VirtualBox 에서
가상 시스템 설정에서 시스템에서 변경을 해줄 수 있다.
램이 딸린다면 Cloudera Manager 설치를 건너 띄어야 한다.
바탕화면에 있는 CM 아이콘이 있는 것을 설치
터미널 창이 뜨고 실행된다.
안된다면 뜬 명령어를 관리자 권한으로 실행 하면 된다.
초기 아이디와 비밀번호
아이디 : cloudera
비밀번호 : cloudera
에코들을 재부팅 하게 되면 정상적으로 작동한다.
Step 4 : Zepplin 파일 다운로드
l Zeppelin 파일 다운로드
l https://zeppelin.apache.org/download.html
l 압축해제
l Tar zxvf zeppelin-0.7.2-bin-all.tgz
Step 5 : 환경설정
l $ cd ~(위치)/zeppelin-0.7.2-bin-all/conf
l $ cp zeppelin-site.xml.template zeppelin-site.xml
l $ cp zeppelin-env.sh.template zeppelin-env.sh
l $ cp shiro.ini.tenplate shiro.ini
l $ vi zeppelin-env.sh
n export SPARK_HOME=/usr/lib/spark
n export PYTHONPATH=/usr/lib/spark/python
n export PYSPARK_PYTHON=/usr/lib/spark/python
l $ vi zeppelin-site.xml => 호스트IP와 포트변경
Step 6 : 실행
l $ bin/zeppelin-daemon.sh
Create notebook 를 선택해서 아무거나 만들어 주자
제플린 안녕?
그럼 이제 테스트를 해봅시다.
l 다운로드 http://archive.ics.uci.edu/ml/datasets/Bank+Marketing
l Download : Data Folder 에서 bank.zip 파일 다운로드
- 압축해제 후 bank-full.csv 파일 활용
l hdfs dfs -put bank-full.csv (해당파일 위치에서)
l csv 파일 저장 후 sql 쿼리 실행
hdfs 에서 파일 확인
hue에서 확인할 수 있다.
val bankText = sc.textFile("hdfs:///user/cloudera/bank-full.csv")
case class Bank(age:Integer, job:String,
marital:String, education:String, balance:Integer)
val bank = bankText.map(s=>s.split(";")).filter(s=>s(0)
!= "\"age\"").map(
s=>Bank(s(0).toInt, s(1),
s(2), s(3), s(5).toInt))
bank.toDF().registerTempTable("bank")
%sql
select age, count(1) as total from bank where
age < 45 group by age
order by age
테스트 끝
이것으로
Cloudera quickstart(클라우데라), Zeppelin (제플린) 설치하기 및 예제
포스팅을 마치겠습니다.