메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


일반적으로 Replication]Encryption Zone내 HDFS파일을 비Encryption Zone으로 혹은 비Encryption Zone에서 비Encryption Zone으로 HDFS Replication 수행시 User hdfs를 사용하게 된다.

그래야 권한등을 보존하여 Replication을 수행할 수 있다.

(참고적으로 Hive External Table Replication은 User hdfs로 수행해도 정상 수행되며 HDFS Replication만 문제가 발생한다)

하지만 Replication]Encryption Zone내 HDFS파일을 비Encryption Zone으로 HDFS Replication을 수행시 User hdfs가 Ranger KMS with Key Trustee Server의 Hadoop KMS Blacklist Decrypt EEK(hadoop.kms.blacklist.DECRYPT_EEK)항목에 등록되어 있어 Replication과정에서 User:hdfs not allowed to do "DECRYPT_EEK' on 'enc_key'라는 오류가 발생하면서 실패한다. 

Hadoop KMS Blacklist Decrypt EEK(hadoop.kms.blacklist.DECRYPT_EEK)에서 hdfs를 지우면 되겠지만 이는 보안에 취약하게 만들 수 있다. 

그래서 User hdfs대신 hadoop으로 동일한 작업을 수행할 수 있으나 Replication Policy에서 다음과 같이 설정해줘야 한다. 

(다른 설정은 일반적인 설정과 같음)


General -> Run As Username : hadoop

General -> Run on Peer as Username : 빈칸

Advanced -> Error Handling -> Skip Checksum Checks : uncheck

Advanced -> Error Handling -> Skip Listing Checksum Checks : uncheck


와 같이 설정하고 HDFS Replication을 다시 수행하면 정상적으로 수행된다. 

다만, 권한을 유지 하지 못하고 User등이 hadoop으로 변경되어 checksum을 보장할 수 없다는 단정이 있다. 


A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로