메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.


Ranger KMS with KTS의 TLS를 enable하고 restart할때 아래와 같은 오류가 발생되면서 start에 실패하는 경우가 있는데 원인은 Ranger KMS with KTS가 내부적으로 Key Trustee Server와 TLS통신을 하는데 Ranger KMS with KTS서버의 truststore에 등록된 Key Trustee Server서버의 인증서 유효기간이 만료된 경우 일 수 있어 등록된 인증서의 유효기간을 확인해 보고  필요시 Key Trustee Server서버의 사설인증서를 발급해서 Ranger KMS with KTS서버로 복사후 truststore 에 import하여 준다. 

(특히, Ranger KMS with Key Trustee Server의 "Enable TLS/SSL for Ranger KMS server with KTS"가 비활성화 되어 있으면 Ranger에서 변경한 cm_kms의 변경사항이 Client에 전달되지 않아 반영되지 않는다)


* 조치방법(Key Trustee Server노드에서 인증서를 새로 발급하고 이를 Ranger KMS with KTS의 truststore파일에 등록해준다)

--- 인증서 정보 확인----

1. Key Trustee Server의 인증서 확인

  - sudo openssl x509 -in /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.pem -text -noout

2. truststore파일의 인증서 목록 확인

  - sudo keytool -keystore /opt/cloudera/security/certs/truststore -storepass changeit -list -v 


--------Key Trustee Server의 active, passive에서 각각 수행한다.

3.1. ssl-cert-keytrustee용 비밀키 생성및 CSR생성

  <active노드에서>

  - sudo openssl genrsa -out /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key 2048

  - sudo openssl req -new -key /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key -out /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.csr

 <passive노드에서>

  - sudo openssl genrsa -out /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key 2048

  - sudo openssl req -new -key /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key -out /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.csr


3.2 ssl-cert-keytrustee용 신규 인증서 생성

   <active노드에서>

  - sudo openssl x509 -req -days 3650 -in /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.csr -signkey /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key -out /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.pem

   <passive노드에서>

  - sudo openssl x509 -req -days 3650 -in /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.csr -signkey /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key -out /var/lib/keytruste


3.3. Cloudera Manager Console에서 Key Trustee Server(2곳, active, passive)의 설정을 아래와 같이 변경하고 각 서비스를 restart해준다. 

  - Active Key Trustee Server TLS/SSL Server Certificate File (PEM Format):

    /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee.pem -> /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.pem

  - Active Key Trustee Server TLS/SSL Server Private key File (PEM Format):

    /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk.pem -> /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key


  - Passive Key Trustee Server TLS/SSL Server Certificate File (PEM Format):

    /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee.pem -> /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.pem

  - Passive Key Trustee Server TLS/SSL Server Private key File (PEM Format):

    /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk.pem -> /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee-pk2.key


-------KTS의 인증서를 Ranger KMS with KTS로 복사및 Ranger KMS with KTS의 truststore파일에 import

4.1. KTS의 active노드에 있는 /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.pem를 cp로 active-ssl-cert-keytrustee2.pem로 만든 후 

   - Ranger KMS with KTS #1노드의 /home/hadoop에 복사 

   - Ranger KMS with KTS #2노드의 /home/hadoop에 복사 

4.2. KTS의 passive노드에 있는 /var/lib/keytrustee/.keytrustee/.ssl/ssl-cert-keytrustee2.pem를 cp로 passive-ssl-cert-keytrustee2.pem로 만든 후 

   - Ranger KMS with KTS #1노드의 /home/hadoop/에 복사 

   - Ranger KMS with KTS #2노드의 /home/hadoop/에 복사 

4.3.. Ranger KMS with KTS노드의 각각에서 아래 명령문을 수행하여 active및 passive인증서를 모두 import해준다.
  <<Ranger KMS with KTS #1 노드에서>>

  - sudo keytool -importcert -keystore /opt/cloudera/security/certs/truststore -file /home/hadoop/active-ssl-cert-keytrustee2.pem -alias activektca

  - sudo keytool -importcert -keystore /opt/cloudera/security/certs/truststore -file /home/hadoop/passive-ssl-cert-keytrustee2.pem -alias passivektca

  <<Ranger KMS with KTS #2 노드에서>>

  - sudo keytool -importcert -keystore /opt/cloudera/security/certs/truststore -file /home/hadoop/active-ssl-cert-keytrustee2.pem -alias activektca

  - sudo keytool -importcert -keystore /opt/cloudera/security/certs/truststore -file /home/hadoop/passive-ssl-cert-keytrustee2.pem -alias passivektca


4.4.Cloudera Manager Console에서 Ranger KMS with KTS의 TLS를 "Enable TLS/SSL for Ranger KMS Server with KTS"를 enable시키고 노드 2곳 모두 restart해준다



*오류 내용

ERROR TrusteeKeyProviderConfiguration FingerPrint lookup on a KTS server: sunsecurity.validator.ValidatorException: PKIX apth buildingfaile: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

번호 제목 날짜 조회 수
750 엑셀에서 K ,M, G ,T 단위를 숫자로 변환 하는 수식 2025.04.09 169
749 [Shellscript]Impala view의 실제 참조 테이블 추출용 shellscript파일 2025.03.22 165
748 Failed to resolve 'acme-v02.api.letsencrypt.org' ([Errno -3] Temporary failure in name resolution)" 2024.11.27 810
747 Apache Kudu에서 동일한 이름의 테이블을 반복적으로 DROP → CREATE → INSERT하는 로직을 2분 간격으로 10회 수행할 때 발생할 수 있는 주요 이슈 2025.01.26 1172
746 운영계 하둡클러스터에 노드 4대를 EdgeNode로 추가하는 방법/절차 2025.01.12 1142
745 Oracle 10g 혹은 12c 를 19c로 Upgrade시 Cloudera Cluster작업에 필요한 작업 2025.01.12 1254
744 beeline을 이용한 impala JDBC 테스트 방법(Kerberos 설정된 상태임) 2024.11.29 833
743 외부에서 ImpalaJDBC42.jar를 통해서 Impala에 접속시 sessions정보 2024.11.26 690
742 [Kerberos]Kerberos authentication cache를 FILE로 지정해도 KCM으로 저장되는 경우 조치방법 2024.11.03 1488
741 How to Install Magento 2.4.7 on Ubuntu 24.04 2024.09.04 3302
740 [CDP7.1.7]Hive Replication수행시 Target Cluster에서 Specified catalog.database.table does not exist 오류 2024.05.08 3223
739 [Impala] alter table구문수행시 "WARNINGS: Impala does not have READ_WRITE access to path 'hdfs://nameservice1/DATA/Temp/DB/source/table01_ccd'" 발생시 조치 2024.04.26 1634
738 [CDP7.1.7] oozie sqoop action으로 import혹은 export수행시 발생한 오류에 대한 자세한 로그 확인 하는 방법 2024.04.19 1847
737 [CDP7.1.7]Hive Replication수행중 Specified catalog.database.table does not exist : hive.db명.table명 오류 발생시 조치방법 2024.04.05 3209
736 [Active Directory] AD Kerberos보안 설정 변경 방법 (Maximum lifetime for user ticket, Maximum lifetime for user ticket renewal) 2024.03.12 3142
735 [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 3657
734 [CDP7.1.7, Replication]Encryption Zone내 HDFS파일을 비Encryption Zone으로 HDFS Replication시 User hdfs가 아닌 hadoop으로 수행하는 방법 2024.01.15 1489
733 [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 3481
732 [CDP7.1.7][Replication]Table does not match version in getMetastore(). Table view original text mismatch 2024.01.02 3160
731 [CDP7.1.7, Hive Replication]Hive Replication진행중 "The following columns have types incompatible with the existing columns in their respective positions " 오류 2023.12.27 3147
위로