일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 자바
- java
- ec2
- Redis
- vue
- config
- 클러스터
- 머신러닝
- SpringBoot
- redash
- fastcampus
- 젠킨스
- EMR
- Docker
- gradle
- 레디스
- 자동
- Cluster
- Kafka
- Mac
- 설정
- 간단
- Jenkins
- login
- 로그인
- spring
- 예제
- Zeppelin
- hive
- aws
- Today
- Total
코알못
[ Zeppelin] 스케쥴링 기능을 이용해보자! 본문
zepplelin 에서는 cron 기능을 활성화시 노트별로 스케쥴링 기능을 제공한다.
우선 cron 기능은 default 로 false 되어 있기에 true로 변경하고 재기동하는 작업이 필요하다.
zepplien ui 에 접속한뒤 아래와 같이 configuration 클릭시 설정 정보가 나오며
관련 설정인 'zeppelin.notebook.cron.enable' 검색해보면 false 로 되어 있다.
설정 변경은 zeppelin 서버에 접속(EMR 의 경우 마스터 노드에 설치되어 있으므로 마스터 인스턴스에 접속)하여 설정파일 경로로 간다.
$ ssh -i key.pem hadoop@ip
$ cd /etc/zeppelin/conf
설정파일 'zeppelin-site.xml' 에 가서 수정 한다.
- zeppelin.notebook.cron.enable : cron 활성화 여부
- zeppelin.notebook.cron.folders : cron 적용할 폴더 (/ 로 설정시 전체 노트에 설정 적용, 만약 특정 노트에 적용을 원할시 ',' 로 구분하여 특정 노트에 설정 가능)
$ sudo vi zeppelin-site.xml
<property>
<name>zeppelin.notebook.cron.enable</name>
<value>true</value>
<description>Notebook enable cron scheduler feature</description>
</property>
<property>
<name>zeppelin.notebook.cron.folders</name>
<value>/</value>
<description>Notebook cron folders</description>
</property>
:wq!
주의할 점은 해당 설정에 <!-- GitHub configurations --> 로 주석 처리 되어 있으니 꼭 제거하여 저장한다.
$ sudo systemctl --type=service | grep 'zeppelin'
zeppelin.service loaded active running Zeppelin
$ sudo systemctl stop zeppelin.service
$ sudo systemctl status zeppelin.service
● zeppelin.service - Zeppelin
Loaded: loaded (/etc/systemd/system/zeppelin.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since 월 2022-03-07 05:46:24 UTC; 20s ago
Main PID: 32582 (code=exited, status=143)
$ sudo systemctl start zeppelin.service
$ sudo systemctl status zeppelin.service
● zeppelin.service - Zeppelin
Loaded: loaded (/etc/systemd/system/zeppelin.service; enabled; vendor preset: disabled)
Active: active (running) since 월 2022-03-07 05:46:59 UTC; 6s ago
다시 zeppelin 설정 란에 가보면 정상적으로 변경 되어 있다.
노트를 하나 생성하여 스파크 SQL 을 작성하고
노트 상단을 보면 cron 활성화 전에 없었던 시계아이콘이 생성된 것을 볼 수 있다.
선택하여 1분 마다 실행 되도록 하며 저장 버튼은 따로 없으며 자동으로 저장 된다.
cron 형식으로 스케쥴링 할 수 있어 일별, 월별, 주별, 특정 시간대 등 원하는 대로 자유롭게 설정 가능하다.
스파크 히스토리 서버 로그를 보면 1분 마다 실행 된것을 볼 수 있다.
영구적으로 저장 되는건지 확인을 위해 브라우저를 닫고 몇분 뒤에 히스토리 서버 로그를 확인하면 정상적으로 스케쥴링 된 것을 확인할 수 있다. (영구적으로 저장됨)
끝!
'BIG DATA' 카테고리의 다른 글
[AWS] Kafka connector 분산 처리 (2) | 2022.03.09 |
---|---|
[ Zeppelin] 계정별로 권한을 설정해보자! (0) | 2022.03.07 |
[Zeppelin] 설치 하고 이용해보자! (0) | 2022.03.07 |
[Redash] 데이터 시각화 도구를 이용 해보자! - 다른 저장소 결과간 데이터 조인 (2) | 2022.02.27 |
[Redash] 사용자 초대 (0) | 2022.02.27 |