메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 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으로 설정됨.

번호 제목 날짜 조회 수
441 [Kerberos]Kerberos authentication cache를 FILE로 지정해도 KCM으로 저장되는 경우 조치방법 2024.11.03 6
440 [CDP7.1.7]Hive Replication수행시 Target Cluster에서 Specified catalog.database.table does not exist 오류 2024.05.08 1220
439 [Impala] alter table구문수행시 "WARNINGS: Impala does not have READ_WRITE access to path 'hdfs://nameservice1/DATA/Temp/DB/source/table01_ccd'" 발생시 조치 2024.04.26 180
438 [CDP7.1.7] oozie sqoop action으로 import혹은 export수행시 발생한 오류에 대한 자세한 로그 확인 하는 방법 2024.04.19 201
437 [CDP7.1.7]Hive Replication수행중 Specified catalog.database.table does not exist : hive.db명.table명 오류 발생시 조치방법 2024.04.05 1224
» [Active Directory] AD Kerberos보안 설정 변경 방법 (Maximum lifetime for user ticket, Maximum lifetime for user ticket renewal) 2024.03.12 1122
435 [CDP7.1.7]BDR작업후 오류로 Diagnostic Data를 수집하는 동안 "No content to map due to end-of-input at [Source: (String)""; line: 1, column: 0]" 오류 발생시 조치 2024.02.20 1817
434 [CDP7.1.7, Replication]Encryption Zone내 HDFS파일을 비Encryption Zone으로 HDFS Replication시 User hdfs가 아닌 hadoop으로 수행하는 방법 2024.01.15 158
433 [CDP7.1.7]Oozie job에서 ERROR: Kudu error(s) reported, first error: Timed out: Failed to write batch of 774 ops to tablet 8003f9a064bf4be5890a178439b2ba91가 발생하면서 쿼리가 실패하는 경우 2024.01.05 1596
432 [CDP7.1.7][Replication]Table does not match version in getMetastore(). Table view original text mismatch 2024.01.02 1103
431 [CDP7.1.7, Hive Replication]Hive Replication진행중 "The following columns have types incompatible with the existing columns in their respective positions " 오류 2023.12.27 186
430 [CDP7.1.7]impala-shell을 이용하여 kudu table에 insert/update수행시 발생하는 오류(Transport endpoint is not connected (error 107)) 발생시 확인할 내용 2023.11.30 1810
429 [CDP7.1.7]impala-shell수행시 간헐적으로 "-k requires a valid kerberos ticket but no valid kerberos ticket found." 오류 2023.11.16 398
428 [CDP7.1.7]Encryption Zone내부/외부 간 데이터 이동(mv,cp)및 CTAS, INSERT SQL시 오류(can't be moved into an encryption zone, can't be moved from an encryption zone) 2023.11.14 1663
427 kudu table와 impala(hive) table정보가 틀어져서 테이블을 읽지 못하는 경우(Error Loading Metadata) 조치방법 2023.11.10 1241
426 임시 테이블에서 데이터를 읽어서 partitioned table에 입력하는 impala SQL문 예시 2023.11.10 1298
425 [EncryptionZone]User:hdfs not allowed to do 'DECRYPT_EEK on 'enc_key'오류 2023.11.02 1274
424 [Hadoop Encryption] Encryption Zone에 생성된 table에 Hue에서 insert 수행시 User:hdfs not allowed to do 'DECRYPT_EEK' ON 'testkey' 오류 2023.11.01 193
423 [보안/인증]javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target발생 원인/조치내용 2023.10.24 493
422 [CDP7.1.7]EncryptionZone에 table생성및 권한 테스트 2023.09.26 1546
위로