Apache Storm을 셋팅하기 위해서 필요한 것은?
1. Open Jdk
2. Zookeeper
3. Apache Storm
4. Python
Jdk와 Python은 서버에 맞게 잘 찾아서 셋팅 해준다. :)
이 포스팅에서는 pass~
이제! 이 포스팅에서 다룰 주키퍼와 아파치 스톰! 셋팅을 시작해보자~
Zookeeper Setting
- download : wget http://mirror.apache-kr.org/zookeeper/zookeeper-3.5.8/apache-zookeeper-3.5.8-bin.tar.gz
- 압축해제 : tar xvfz apache-zookeeper-3.5.8-bin.tar.gz
- 심볼릭 링크 센스 : ln -s apache-zookeeper-3.5.8-bin zookeeper
- ~/zookeeper/conf 설정
- zoo_sample.cfg를 zoo.cfg로 복사 -> cp zoo_sample.cfg zoo.cfg
- zoo.cfg 열어서 수정! -> vi zoo.cfg
- 아래처럼 dataDir, server.1~3 등을 채워넣으면 된다.
단, bif-dev-1등의 호스트명을 사용하려면 각 서버별로 아래와 같이 설정 해야 한다.
sudo vi /etc/hosts 오픈 후 아래와 같이 설정!
해당 아이피 호스트명
10.111.xx.aaa bif-dev-1
10.111.xx.bbb bif-dev-2
10.111.xx.ccc bif-dev-3
위와 같이 설정하지 않으려면 ip로 설정하면 되겠쥬?
그리고! 위에서 설정한 dataDir 아래에 아래와 같이 서버별로 myid라는것을 만들자!
echo 1 > ../logs/zookeeper/myid
해당 설정이 없으면 아래와 같은 오류를 맛보게 될 것이다!
$ ./zkServer.sh start
/home/deploy/util/jdk8u252-b09/bin/java
ZooKeeper JMX enabled by default
Using config: /home/deploy/util/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... FAILED TO START
설정 후에 다시 주키퍼를 스타트 시키면!
- bif-dev-1 서버 : echo 1 > ../logs/zookeeper/myid
- bif-dev-2 서버 : echo 2 > ../logs/zookeeper/myid
- bif-dev-3서버 : echo 3 > ../logs/zookeeper/myid
$ ./zkServer.sh start
/home/deploy/util/jdk8u252-b09/bin/java
ZooKeeper JMX enabled by default
Using config: /home/deploy/util/zookeeper/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
ZooKeeper 띄우기 성공!
Apache Storm Setting
- download : http://storm.apache.org/downloads.html
- 다운로드 페이지에서 원하는 버전을 가져다가 사용하면 된다.
- 하지만 이번 포스팅은 현재 업무버전에 맞게 동일한 버전으로 하려고 한다.
- 버전은 바로 1.0.1 ~!! 두둥탁~
- wget https://archive.apache.org/dist/storm/apache-storm-1.0.1/apache-storm-1.0.1.tar.gz
- 압축해제 : tar xvfz apache-storm-1.0.1.tar.gz 로 압축을 해제한 뒤
- 센스있게 심볼릭 링크를 걸어준다.
- ln -s apache-storm-1.0.1.tar.gz storm
아래와 같이 된다.
- storm에 설정을 해주자!
- ~/conf 에 storm.yaml을 열어준다.
- 참고 사이트 : https://github.com/apache/storm/blob/v1.0.2/conf/defaults.yaml
storm.zookeeper.servers:
- "bif-game-dev-1"
- "bif-game-dev-2"
- "bif-game-dev-3"
storm.local.dir: "/home/deploy/logs/storm/data"
nimbus.seeds: ["bif-game-dev-1"]
ui.host: 0.0.0.0
ui.port: 8081
설정 후!
동작을 시켜보자~
- nimbus
- 한 서버에만 올려보자.
- bin]$ ./storm nimbus
- 한 서버에만 올려보자.
- supervisor
- 서버 3대 각각 돌려보자!
- bin]$ ./storm supervisor
- 서버 3대 각각 돌려보자!
- ui
- 서버 한대에서 돌려보자.
- bin]$ ./storm ui
- 서버 한대에서 돌려보자.
ip or host:포트 를 통해 접근할 수 있다.
ex) aa.bb.xx.21:8081
그리고 위에서 nimbus, supervisor는 뭘까?
nimbus : 마스터 노드에서 실행하는 데몬!
supervisor : 워커 노드에서 실행하는 데몬!
ui : 스톰 ui를 기동!
이제 간단한 코딩을 해보자~
다음편에 계속!..
좋은 사이트 :
http://www.corejavaguru.com/bigdata/zookeeper/getting-started-with-zookeeper
'OpenSource > Apache Storm' 카테고리의 다른 글
Zookeeper 상태 확인 (0) | 2021.11.22 |
---|---|
Docker에 apache storm 셋팅 및 띄워보기!(feat. Zookeeper) (0) | 2021.10.14 |
초 간단 Apache Storm 맛보기(코딩) (0) | 2020.05.25 |