[ 
https://issues.apache.org/jira/browse/FLINK-13516?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16923044#comment-16923044
 ] 

Haibo Sun edited comment on FLINK-13516 at 9/5/19 4:58 AM:
-----------------------------------------------------------

The failure of the case is due to the failure of authentication when the yarn 
client requests access authorization of resource manager, and subsequent 
retries lead to test timeout. New encryption types of 
aes128-cts-hmac-sha256-128 and aes256-cts-hmac-sha384-192 (for Kerberos 5) 
enabled by default were added in Java 11, while the current version of MiniKdc 
used by Flink does not support these encryption types and does not work well 
when these encryption types are enabled, which results in the authentication 
failure.

 

Error Log:

{{DEBUG org.apache.hadoop.security.UserGroupInformation - 
PrivilegedActionException as:hadoop/[email protected] (auth:KERBEROS) 
cause:javax.security.sasl.SaslException: GSS initiate failed [Caused by 
GSSException: No valid credentials provided (Mechanism level: Message stream 
modified (41) - Message stream modified)]}}

 

There are two solutions to fix this issue, one is to add a configuration 
template named "minikdc-krb5.conf" in the test resource directory, and 
explicitly set default_tkt_enctypes and default_tgs_enctypes to use 
aes128-cts-hmac-sha1-96 in the template file, the other is to bump MiniKdc to 
the latest version 3.2.0 (I tested that this version has solved this problem). 
I've tested both solutions on my local machine, and all tests that depend on 
MiniKdc work well on Java 8 and Java 11. Given that the version of minikdc will 
be updated sooner or later, if it runs successfully on Travis,  I suggest to 
use the second solution. [~Zentol], what do you think?


was (Author: sunhaibotb):
The failure of the case is due to the failure of authentication when the yarn 
client requests access authorization of resource manager, and subsequent 
retries lead to test timeout. New encryption types of 
aes128-cts-hmac-sha256-128 and aes256-cts-hmac-sha384-192 (for Kerberos 5) 
enabled by default were added in Java 11, while the current version of MiniKdc 
used by Flink does not support these encryption types and does not work well 
when these encryption types are enabled, which results in the authentication 
failure.

 

{{DEBUG org.apache.hadoop.security.UserGroupInformation - 
PrivilegedActionException as:hadoop/[email protected] (auth:KERBEROS) 
cause:javax.security.sasl.SaslException: GSS initiate failed [Caused by 
GSSException: No valid credentials provided (Mechanism level: Message stream 
modified (41) - Message stream modified)]}}

 

There are two solutions to fix this issue, one is to add a configuration 
template named "minikdc-krb5.conf" in the test resource directory, and 
explicitly set default_tkt_enctypes and default_tgs_enctypes to use 
aes128-cts-hmac-sha1-96 in the template file, the other is to bump MiniKdc to 
the latest version 3.2.0 (I tested that this version has solved this problem). 
I've tested both solutions on my local machine, and all tests that depend on 
MiniKdc work well on Java 8 and Java 11. Given that the version of minikdc will 
be updated sooner or later, if it runs successfully on Travis,  I suggest to 
use the second solution. [~Zentol], what do you think?

> YARNSessionFIFOSecuredITCase fails on Java 11
> ---------------------------------------------
>
>                 Key: FLINK-13516
>                 URL: https://issues.apache.org/jira/browse/FLINK-13516
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Deployment / YARN, Tests
>            Reporter: Chesnay Schepler
>            Assignee: Haibo Sun
>            Priority: Major
>             Fix For: 1.10.0
>
>
> {{YARNSessionFIFOSecuredITCase#testDetachedMode}} times out when run on Java 
> 11. This may be related to security changes in Java 11.



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

Reply via email to