메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

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


Hadoop Cluster의 인증을 위해서 Windows Server의 Active Directory Kerberos를 사용하는 경우 Active Directory GPO(Goup Policy Object) 설정을 변경해야 하는 경우가 있는데 그 방법과 절차를 기술 한다. (AD Kerberos의 경우 Linux에 설정되어 있는 /etc/krb5.conf의 설정을 적용받지 않음)


1. 상황 : 약 30시간 이상 수행되는 HDFS Replication Job이 "ERROR distcp.DelegationTokenRenewer: Ticket Cache renewal failed", "kinit: Ticket expired while renewing credentials"가 발생하면서 HDFS Replication이 실패함.

2. 원인 파악 : hdfs계정으로 kinit을 하고 klist를 수행해보면 TGT Cache유효기간이 10H, Ticket Renewal lieftime이 10H으로 설정되어 있어 장기간(15H이상) 수행시 Ticket Cache renewal이 실패하면서 전체 Job이 실패하게됨(10H에 바로 fail되지 않은것은 Replication job의 내부 로직상 인증되어 처리가 시작된것은 약 15H까지는 처리를 수행하는것 같음, 15H이 넘어가면 불특정한 시간에 fail됨)

3. 조치 방법 : AD kerberos의 설정값중 다음을 추천값으로 변경해준다. 

 - Maximum lifetime for user ticket : 10H

 - Maximum lifetime for user ticket renewal : 7D

4. 변경방법 : Windows 관리 도구 -> "그룹 정책 관리" 바로가기 아이콘에서 shift+우클릭 후 "다른 사용자로 실행" -> Domain Admins권한이 있는 관리자 계정의 id/pw 를 입력하고 실행한다.

  -> "그룹 정책 개체"에서 Default Domain Policy 우클릭 하여 편집 클릭 

  -> 정책->Windows설정->보안설정->계정정책->Kerberos정책 부분의 값을 적절한 값으로 변경해준다. 

  -> 변경 정책 반영을 위해서 cmd에서 "gpupdate /force"를 반드시 수행해줘야 변경 사항이 반영된다. 

5. hdfs계정으로 kinit을 수행후 klist하여 유효 기간이 원하는 기간으로 설정되어 있는지 확인한다. 


*변경전(cache lifetime 10H, ticket renewal lifetime 10H)

[hadoop@node10:~]$sudo -u hdfs kinit -kt /run/cloudera-scm-agent/process/1546546453-hdfs-DATANODE/hdfs.keytab hdfs/node10.gooper.com@GOOPER.COM

[hadoop@node10:~]$sudo -u hdfs klist

Ticket cache: FILE:/tmp/krb5cc_39998

Default principal: hdfs/node10.gooper.com@GOOPER.COM


Valid starting Expires Service principal

02/27/2024 13:36:16 02/27/2024 23:36:16 krbtgt/GOOPER.COM@GOOPER.COM

renew until 02/27/2024 23:36:16

[hadoop@node10:~]$date

Tue Feb 27 13:36:40 KST 2024


* 변경후(cache lifetime 10H, ticket renewal lifetime 10H)

[hadoop@gooper01:~]$sudo -u hdfs kinit -kt /run/cloudera-scm-agent/process/1546391195-hdfs-DATANODE/hdfs.keytab hdfs/gooper01.gooper.com

[hadoop@gooper01:~]$sudo -u hdfs klist

Ticket cache: FILE:/tmp/krb5cc_39998

Default principal: hdfs/gooper01.gooper.com@GOOPER.COM


Valid starting       Expires              Service principal

03/12/2024 11:23:14  03/12/2024 21:23:14  krbtgt/GOOPER.COM@GOOPER.COM

        renew until 03/19/2024 11:23:14



*참고

 : Maximum lifetime for user ticket renewal이 설정안됨, Maximum lifetime for user ticket이면 kinit수행시 renewal/cache lifetime 10H으로 설정됨.

번호 제목 글쓴이 날짜 조회 수
420 [Impala jdbc]CDP7.1.7환경에서 java프로그램을 이용하여 kerberized impala cluster에 접근하여 SQL을 수행하는 방법 gooper 2023.08.22 58
419 [Hue metadata]Oracle에 있는 Hue 메타정보 테이블을 이용하여 coordinator와 workflow관계 목록을 추출하는 방법 gooper 2023.08.22 15
418 [Hue admin]Add/Sync LDAP user, Sync LDAP users/groups 버튼 기능 설명 gooper 2023.08.09 15
417 oozie의 sqoop action수행시 ooize:launcher의 applicationId를 이용하여 oozie:action의 applicationId및 관련 로그를 찾는 방법 gooper 2023.07.26 10
416 [CDP7.1.6,HDFS]HDFS파일을 삭제하고 Trash비움이 완료된후에도 HDFS 공간을 차지하고 있는 경우 확인/조치 방법 gooper 2023.07.17 15
415 [Encryption Zone]Encryption Zone에 생성된 table을 select할때 HDFS /tmp/zone1에 대한 권한이 없는 경우 gooper 2023.06.29 12
414 [EncryptionZone]User:testuser not allowed to do "DECRYPT_EEK" on 'testkey' gooper 2023.06.29 11
413 [HDFS]Encryption Zone에 생성된 테이블 조회시 Failed to open HDFS file hdfs://nameservice1/tmp/zone1/sec_test_file.txt Error(255): Unknown error 255 Root cause: AuthorizationException: User:impala not allowd to do 'DECRYPT_EEK' on 'testkey' gooper 2023.06.29 52
412 [Hadoop Encryption] Encryption Zone 생성/설정시 User:hadoop not allowed to do 'DECRYPT_EEK' ON 'testkey' 오류 발생 조치 사항 gooper 2023.06.28 18
411 [KTS Cluster의 Key Trustee Server]self-signed 인증서 발급및 설정 방법 gooper 2023.06.27 29
410 [Ranger]RangerAdminRESTClient Error gertting pplicies; Received NULL response!!, secureMode=true, user=rangerkms/node01.gooper.com@ GOOPER.COM (auth:KERBEROS), serviceName=cm_kms gooper 2023.06.27 24
409 [CDP7.1.3]Ranger WebUI에서 Error! Connection refused: Please check the KMS provider URL and whether the Ranager KMS is running발생시 조치 방법 gooper 2023.06.07 19
408 [impala]insert into db명.table명 select a, b from db명.table명 쿼리 수행시 "Memory limit exceeded: Failed to allocate memory for Parquet page index"오류 조치 방법 gooper 2023.05.31 22
407 Impala Admission Control 설정시 쿼리가 사용하는 메모리 사용량 판단 방법 gooper 2023.05.19 93
406 [Atlas Server]org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient permissions (user=atlas/node01.gooper.com@GOOPER.COM, scope=default:atlas_janus, params=[table=default:atlas_janus,], action-CREATE)] gooper 2023.05.15 66
405 [Ranger]계정에 admin권한(grant, create등)의 권한 부여 방법 gooper 2023.04.18 47
404 [DataNode]org.apache.hadoop.security.KerberosAuthException: failure to login: for principal: hdfs/datanode03@GOOPER.COM from keytab hdfs.keytab오류 gooper 2023.04.18 3984
403 [KUDU] kudu tablet server여러가지 원인에 의해서 corrupted상태가 된 경우 복구방법 gooper 2023.03.28 37
402 Hadoop Clsuter에 이미 포함된 host의 hostname변경시 처리 절차 gooper 2023.03.24 14
401 [Kudu]ERROR: Unable to advance iterator for node with id '2' for Kudu table 'impala::core.pm0_abdasubjct': Network error: recv error from unknown peer: Transport endpoint is not connected (error 107) gooper 2023.03.16 536

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.

위로