Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.
Hadoop [Hadoop Encryption] Encryption Zone에 생성된 table에 Hue에서 insert 수행시 User:hdfs not allowed to do 'DECRYPT_EEK' ON 'testkey' 오류
Encryption Zone에 있는 HDFS파일을 이용하여 생성한 table에 Hue에서 hadoop계정으로 insert문을 수행시 "Failed to open HDFS file for writing hdfs://nameservice1/DATA/test_table/_impala_insert_staging/data.0.txt Error(255): Unknown error 255. Root cause: RemoteException: java.util.concurrent.ExecutionException: org.apache.hadoop.security.authorize.AuthorizationException: User:hdfs not allowed to do 'DECRYPT_EEK' ON 'testkey' at " 오류가 발생할 수 있는데 이는 hdfs가 HDFS내의 해당 파일에 접근하여 Encryption File을 생성할 수 없어서 발생한다.
이때는 Ranger에 keyadmin으로 로그인하여 cm_kms항목의 Policy Name이 all - keyname인 정책의 User에 hdfs를 추가하고 Permissions에 Get Metadata, Generate EEK, Decrypt EEK를 지정해주면 해
결된다.
* Hue에서 hadoop으로 로그인해서 insert문을 수행했는데도 내부적으로는 hdfs로 접근하는거 같음. 왜냐하면 "User:hdfs not allowed to do 'DECRYPT_EEK' ON 'testkey' at " 처럼 hdfs가 접근하는 User로 표시되기 때문이다.