Kerberos가 적용된 Apache Hadoop을 딥 스토리지로 사용하도록 Apache Druid 구성하기
Kerberos가 적용된 Apache Hadoop을 딥 스토리지로 사용하도록 Apache Druid 구성하기 (Configure Apache Druid to use Kerberized Apache Hadoop as deep storage)
Kerberos 인증이 적용된(Kerberized) Apache Hadoop(HDFS)을 Druid의 딥 스토리지(deep storage)로 사용하도록 구성하는 방법을 안내해 드릴게요. 복사해야 할 설정 파일들과 HDFS 폴더·권한 준비, 그리고 Druid 설정 변경을 순서대로 다뤄요.
출처: 문서
본문
설정 (Setup)
Druid conf 폴더에 복사해야 하는 설정 파일들은 다음과 같아요:
hdfs-site.xmlcore-site.xml
HDFS 폴더와 권한 (HDFS Folders and permissions)
- druid 딥 스토리지용 폴더 이름을 정해 주세요. 예를 들어
'druid'. - 필요한 상위 폴더 아래에 hdfs에서 폴더를 만들어 주세요. 예:
hdfs dfs -mkdir /druid또는hdfs dfs -mkdir /apps/druid - druid 프로세스가 이 폴더에 접근할 수 있도록 적절한 권한을 druid 프로세스에 부여해 주세요. 그래야 druid가 HDFS에서
data나indexing_log같은 필요한 폴더를 만들 수 있어요. 예를 들어 druid 프로세스가root사용자로 실행된다면,hdfs dfs -chown root:root /apps/druid또는hdfs dfs -chmod 777 /apps/druid를 실행해 주세요.
Druid는 이 새로 만든 폴더 아래에 데이터와 인덱스를 저장하는 데 필요한 하위 폴더를 만들어요.
Druid 설정 (Druid Setup)
HDFS 속성을 포함하도록 conf/druid/_common/common.runtime.properties 를 편집해 주세요. 위치에 사용되는 폴더는 위 예시에서 사용한 것과 동일해요.
common.runtime.properties
# Deep storage
## For HDFS:
druid.storage.type=hdfs
druid.storage.storageDirectory=/druid/segments
# OR
# druid.storage.storageDirectory=/apps/druid/segments
참고: 파일에서 Local storage와 S3 Storage 파라미터는 주석 처리해 주세요.
또한 conf/druid/_common/common.runtime.properties 에 hdfs-storage 핵심 확장 프로그램(core extension)을 포함해 주세요:
## Extensions
#druid.extensions.directory=dist/druid/extensions
druid.extensions.loadList=["mysql-metadata-storage", "druid-hdfs-storage", "druid-kerberos"]
Kerberos 설정 (Kerberos setup)
druid 데이터에 접근할 수 있는 헤드리스 키탭(headless keytab)을 만들어 주세요.
conf/druid/_common/common.runtime.properties 를 편집하고 다음 속성을 추가해 주세요:
druid.hadoop.security.kerberos.principal
druid.hadoop.security.kerberos.keytab
예를 들면:
[email protected]
druid.hadoop.security.kerberos.keytab=/etc/security/keytabs/hdfs.headless.keytab
Druid 서비스 재시작 (Restart Druid Services)
위 변경 사항을 적용한 뒤 Druid를 재시작해 주세요. 이렇게 하면 Druid가 Kerberos가 적용된 Hadoop과 함께 동작하게 돼요.
더 알아보기 (Learn more)
- 딥 스토리지 (Deep storage) — 지원되는 딥 스토리지 옵션 개요.
- 추가 의존성 (Hadoop) — Druid의 Hadoop 지원에 대한 문서.