요즘, 회사 생활을 하다보니 과연 내가 회사 소속이 아닐경우, 세팅된 환경이 아닌경우에도 데이터를 분석할 수 있을까??? 라는 질문에 절대 확신하지 못했기 때문에 데이터 파이프라인을 만드는 엔지니어링 부분도 관심을 가지고 있다. 그 중 데이터 파이프라인을 연결하는데 사용하는 Apache NiFi(아파치 나이파이)를 설치해 보았다. 이후 다음 포스팅에서는 똑같은 역할을 하는 Airflow(에어플로우)를 다루어 볼 생각이다.
먼저 저는 AWS의 인스턴스를 받아서 진행을 해보았습니다.
임시로 nifi_start라는 이름으로 설정해 주었고, ubuntu를 선택해 주었습니다.
그리고 사전에 putty gen을 통하여 만들어준 key를 선택합니다.(putty와 putty gen에 대한 설명도 올릴예정입니다.)
인스턴스 유형은 프리티어를 사용해도 되지만, 가격이 싼 t2.small을 사용하였습니다.
그리고 HoseName에 만든 인스턴스 "퍼블릭 IPv4 DNS"을 넣어줍니다.
그리고, 개인적으로 putty가 많이 끊겨서 해결방법으로 Connection -> Seconds between keepalives에 0에서 5로 변경해 줍니다.
그리고 창을 열면 다음과 같은 화면이 나타납니다. 여기서 ubuntu를 치고 엔터를 치면 준비가 완료됩니다.
curl https://archive.apache.org/dist/nifi/1.12.1/nifi-1.12.1-bin.tar.gz --output nifi.tar.gz
tar xvzf nifi.tar.gz
sudo apt update
sudo apt install -y openjdk-11-jre-headless
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
source .bashrc
# 1. 경로 이동
cd ~~~
# 2. NiFi실행
bin/nifi.sh start
아래와 같이 Java와 NiFi가 둘다 잘 잡힌다면 성공한것입니다.
인스턴스로 돌아가서 [보안]을 눌러줍니다.
이후 보안그룹에 있는 주소로 들어간후 아래에 있는 인바운드 규칙편집을 들어가 줍니다.
규칙추가 후 nifi포트번호(8080)를 입력하시고 저장하시면 완성입니다.
이후, [자신의 인스턴스 퍼블릭 ip주소]:8080 으로 접속하면 빌드하실 수 있습니다
안녕하세요, 혹시 nifi.properties 에 ip와 port 셋팅은 별도로 안하신걸까요?