일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 레디스
- vue
- 머신러닝
- gradle
- 자동
- redash
- Cluster
- 로그인
- 예제
- Kafka
- SpringBoot
- java
- 젠킨스
- login
- EMR
- Mac
- ec2
- 클러스터
- config
- 설정
- Docker
- 자바
- Redis
- Jenkins
- fastcampus
- spring
- 간단
- hive
- aws
- Zeppelin
- Today
- Total
코알못
[ Zeppelin] JDBC 인터프리터를 추가 해보자! 본문
우선 처음에 AWS EMR 로 zeppelin 서비스 설치시 jdbc 인터프리터 그룹이 없기에 원하는 인터프리터를 추가할 수 없다.
그렇기에 필요한 인터 프리터 그룹을 설치하도록 한다.
우선 해당 zeppelin 서버에 접속한뒤 아래와 같이 설치 한다.
$ sudo /usr/lib/zeppelin/bin/install-interpreter.sh -n jdbc
Install jdbc(org.apache.zeppelin:zeppelin-jdbc:0.9.0) to /usr/lib/zeppelin/interpreter/jdbc ...
Interpreter jdbc installed under /usr/lib/zeppelin/interpreter/jdbc.
1. Restart Zeppelin
2. Create interpreter setting in 'Interpreter' menu on Zeppelin GUI
3. Then you can bind the interpreter on your note
그다음 zeppelin 을 재기동한다.
$ sudo systemctl stop zeppelin
$ sudo systemctl start zeppelin
재기동 완료 후에 zeppelin 을 접속하여 인터프리터 관리 화면으로 이동 한다.
create 버튼을 누른다.
인터프리터 그룹을 보면 jdbc interpreter가 추가된 것을 확인 할 수 있다.
이제 접근하고자 하는 데이터베이스 정보를 넣는다.
아래 jdbc connector 의존성도 추가하여야 하는데 아래 저장소에서 원하는 버전으로 기재한다.
https://mvnrepository.com/artifact/mysql/mysql-connector-java
Save 버튼을 누르고 리스트를 확인하면 로딩바가 보이며 1분정도 대기한다.
로딩이 완료되면 아래와 같이 초록불이 표기되며 정상적으로 사용할 준비가 됐다는 것이다. (빨간불이면 문제가 있음을 의미)
이제 사용해보면 zeppelin 노트를 추가하여 테스트 해보면 아래와 같이 정상적으로 조회가 되는것을 볼 수 있다.
위 설정한 바와 같이 데이터베이스 별로 인터프리터 생성이 가능하며, 인터프리터별 권한 설정도 가능하다.
권한 설정 방법은 아래 게시글의 interpreter별 권한 설정 부분을 참고한다.
- https://co-de.tistory.com/96
인터프리터에 사용자명으로 접근 권한을 줄수 있고, 사용자를 그룹에 넣어 그룹명으로 권한을 줄 수 있다.
사용자명으로 권한을 줄수 있으나 사용자가 많을시 한눈에 보이지 않아 관리가 어려울것으로 보여 사용자에게 권한을 부여하고 권한명으로 인터프리터 권한을 부여하면 관리하기 용이해보인다.
따라서 접근하고자 하는 사용자에게 권한 관련 전자 결제를 받고 해당 사용자에게 권한을 주어 접근 하도록 하는것이 좋을것 같다.
테스트한 결과는 아래 참고하면 된다.
1. oozie 인터프리터에 role1, admin 권한을 가진 사용자에게만 접근 허용 (만약 set permission 에 체크 안하면 모두 접근 허용)
2. 권한이 있는 사용자(user3)가 접근시 정상적으로 조회 가능
3. 권한이 없는 사용자(user2)가 데이터 조회시 permission 오류 발생
'BIG DATA' 카테고리의 다른 글
[AWS] EMR(hadoop) - Step Function 이용해보자! (0) | 2022.04.27 |
---|---|
[AWS] 서비스 private 로 구성시 다른 서비스 연결 방법 (0) | 2022.04.27 |
[Redash] 권한별 DB 접근 제어를 해보자! (0) | 2022.04.18 |
[AWS] RedShift 이용해보자! (2) | 2022.03.28 |
[AWS] Kafka connector 분산 처리 (2) | 2022.03.09 |