티스토리 뷰
반응형
하둡바이너리 파일과 hdfs, yarn 관련 xml 을 모두 복사후 yarn application 을 확인하기위해 다음과 같이 실행했더니, 다음과 같은 오류가 발생했다. 참고로 커버로스 인증을 통해야 했고, 커버로스 인증은 kinit 으로 성공했다.
그리고 client 환경이 아니라 하둡이 설치된 서버에 직접 접속해서 테스트하면 이런 오류가 발생되지 않았고, 별도로 설치한 client 환경에서만 이런문제가 발생했다.
$ kinit -k -t /user/gildong/gildong.keytab gildong@MYHOME.COM
$ yarn application -list
2022-09-07 18:29:34,077 INFO impl.TimelineReaderClientImpl: Initialized TimelineReader URI=http://hadoop006.my-infra.com:8198/ws/v2/timeline/, clusterId=yarn-cluster
2022-09-07 18:29:34,634 INFO client.AHSProxy: Connecting to Application History server at hadoop007.my-infra.com/10.0.0.7:10200
2022-09-07 18:29:34,764 INFO client.ConfiguredRMFailoverProxyProvider: Failing over to rm2
2022-09-07 18:29:34,819 INFO retry.RetryInvocationHandler: java.io.IOException: DestHost:destPort hadoop002.my-infra.com:8031 , LocalHost:localPort etl003.my-infra.com/10.0.0.3:0. Failed on local exception: java.io.IOException: Couldn't set up IO streams: java.lang.IllegalArgumentException: Server has invalid Kerberos principal: rm/hadoop002.my-infra.com@MYHOST.COM, expecting: rm/10.0.0.2@MYHOST.COM, while invoking ApplicationClientProtocolPBClientImpl.getApplications over rm2 after 1 failover attempts. Trying to failover after sleeping for 26939ms.
해결방법
회사내 서버에서 DNS를 따로 운영하지 않아 연결시 영향을 받은 케이스였다. 첫번째는 /etc/hosts 파일에 리소스메니저 ip 와 도메인을 직접 추가하는것도 방법이지만, xml 설정에 다음 설정을 추가하는것으로도 해결이 가능하다.
apache 에서 바이너리를 받았다면, $HADOOP_HOME/etc/hadoop 폴더안에 core-site.xml, yarn-site.xml 파일 존재할텐데 여기에 해당 내용을 추가해주면 된다. (당연하지만 서버에 있는 하둡설정은 복사후 각자 수정해야한다)
- core-site.xml
<!-- core-site.xml -->
<property>
<name>hadoop.security.token.service.use_ip</name>
<value>false</value>
</property>
- yarn-site.xml
<!-- yarn-site.xml -->
<property>
<name>yarn.resourcemanager.principal.pattern</name>
<value>*</value>
</property>
<property>
<name>yarn.timeline-service.principal.pattern</name>
<value>*</value>
</property>
위와 같이 설정후 다시 시도해보면? 오류없이 잘 동작하게 된다.
반응형
'데이터처리 > Hadoop' 카테고리의 다른 글
[하둡] Server asks us to fall back to SIMPLE auth, but this client is configured to only allow secure connections 문제 해결하기 (0) | 2022.10.04 |
---|---|
[YARN] cannot be cast to com.google.protobuf.Message 오류 (0) | 2022.09.20 |
hadoop client 설치와 HADOOP_CLASSPATH 잡기 (0) | 2022.09.06 |
[하둡] 커버로스 인증시 GSS initiate failed 오류문제 (0) | 2022.07.20 |
[HADOOP] Kerberos 인증 적용된 하둡 접근하기 (0) | 2022.07.18 |
댓글