본문 바로가기
프로그래밍

<NiFi> CentOS 7에 NiFi 1.7.1 설치 및 login 기능 적용

by A&co 2019. 4. 16.

1. 시스템 업그레이드 및 NiFi 설치

언제나 그렇듯이 먼저해야 할 일은 시스템을 업데이트하는 것입니다.

:~# yum -y update

이제 NiFi 다운로드 받고 압축을 풀어 줍니다.

:~# wget https://archive.apache.org/dist/nifi/1.7.1/nifi-1.7.1-bin.tar.gz

:~# tar zxfv nifi-1.7.1-bin.tar.gz

2. NiFi 실행 전 JAVA_HOME 설정

Apache NiFi가 성공적으로 실행 하려면 JAVA 가 필요합니다 .

jdk는 1.8 버전 이상이여야 문제 없지 작동합니다.

jdk 다운 방법은 검색해보면 많이 나오기 때문에 따로 다루지는 않겠습니다.

다운로드 경로 : https://www.oracle.com/technetwork/java/javase/downloads/index.html

 

Java SE - Downloads | Oracle Technology Network | Oracle

Overview Downloads Documentation Community Technologies Training Java SE Downloads Java Platform (JDK) 12 Java Platform, Standard Edition Java SE 12 Java SE 12 is the latest release for the Java SE Platform Learn more Installation Instructions Release Notes Oracle JDK License Java SE Licensing Infor...

www.oracle.com

다음은 NiFi에 JAVA_HOME 경로를 설정 해야 합니다.

:~# vi nifi-1.7.1/bin/nifi-env.sh

아래 사진에 표시된 부분의 주석(#)을 제거 하고, jdk의 경로로 변경 해줍니다.

(/root/Downloads/jdk1.8.0_192/)

2. NiFi 실행

다음 명령어를 통해 NiFi를 실행 합니다.

:~# ./nifi-1.7.1/bin/nifi.sh start

nifi 로그를 검사하여 응용 프로그램이 실제로 시작되고 있는지 확인합니다.

웹 UI는 " JettyServer http://127.0.0.1:8080/nifi "가 표시되면 사용할 수 있습니다 .

:~# tail -f nifi-1.7.1/logs/nifi-app.log

브라우저를 통해 http://127.0.0.1:8080/nifi 로 접속하면 NiFi의 UI 화면을 확인 할수 있습니다.


LDAP을 사용하는 HTTPS / SSL 구성

<선행 작업>

<NiFi> CentOS 7에 OpenLDAP를 설치하는 방법

1. login 기능 적용

기본 설치가 완료되었으므로 Apache NiFi를 HTTPS로 구성 할 차례입니다.

또한 nifi.propertieslogin-identity-providers 파일 내에 구성된 내용에 따라 자동으로 NiFi에서 사용자 인증을 수행 할 수 있습니다.

Apache NiFi 툴킷으로 만든 자체 서명 인증서를 사용하여 구성을보다 쉽게 ​​할 것입니다.

NiFi 툴킷 다운로드 및 압출 풀기를 합니다.

:~# wget https://archive.apache.org/dist/nifi/1.7.1/nifi-toolkit-1.7.1-bin.tar.gz

:~# tar zxfv nifi-toolkit-1.7.1-bin.tar.gz

tls-toolkit.sh 스크립트를 통해 self-signed certificate, keystore, truststore를 생성한다.

작성된 인증서를 생성한 툴킷 디렉토리로 복사한 후 nifi 구성 디렉토리로 옮긴다.

:~# cd nifi-toolkit-1.7.1/bin

:~# ./tls-toolkit.sh standalone -n '*.my.com'

:~# mv *.my.com star.my.com

:~# cp -r nifi-* star.my.com/

:~# cp -r star.my.com/* ../../nifi-1.7.1/conf/

시스템이 호스트 이름을 인식 할 수 있도록 내부 IP를 / etc / hosts 파일에 추가 한다.

IP 및 원하는 호스트 이름 에 따라 새 행을 추가한다.

:~# nano /ect/hosts

127.0.0.1 nifi.my.com

2. NiFi 구성 파일 편집

원하는 텍스트 편집기를 사용하여 nifi.properties 편집

:~# cd ../..

:~# vi nifi-1.7.1/conf/nifi.properties

파일 안의 # web properties # 찾는다. HTTPS 구성이 시작되는 곳이다.

nifi.web.https.host 를 이전에 만든 인증서와 동일한 도메인으로 변경한다.

# web properties # 아래에 보안키 저장소, 로그인 인증 방법에 대한 세부 정보를 설정할수 있다.

NiFi-Toolkit으로 필요한 인증서를 생성 했으므로 nifi.properties 파일이 이미 구성되어 있으며. 다음과 같으 내용을 추가 한다.

nifi.security.user.login.identity.provider=ldap-provider

원하는 텍스트 편집기를 사용하여 login-identity-providers.xml 편집

:~# cd ../..

:~# vi nifi-1.7.1/conf/login-identity-providers.xml

ldap-provider 위치를 찾아 아래와 같이 수정 한다.

먼저 ldap-provider의 주석을 해제 한다.(<!--로 시작하는 부분과 --> 끝나는 부분을 지운다.)

그런 다음 LDAP 설정에 따라 파일을 편집한다.

원하는 텍스트 편집기를 사용하여 authorizers.xml 편집

:~# cd ../..

:~# vi nifi-1.7.1/conf/authorizers.xml

해당 파일의 마지막 부분 file-provider 로 이동하여 아래와 같이 수정한다.

먼저 주석을 해제 한다.(<!--로 시작하는 부분과 --> 끝나는 부분을 지운다.)

그런 다음 LDAP 설정에 따라 파일을 편집한다.

(NiFi 관리자가 될 LDAP 사용자이다.)

3. HTTPS로 NiFi 시작

이것으로 이제 HTTPS를 사용하기 위한 모든 것을 갖추게 되었다.

Apache NiFi를 재시작 하기만 하면 된다.

:~# ./nifi-1.7.1/bin/nifi.sh restart

:~# tail -f ./nifi-1.7.1/logs/nifi-app.log