Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
A Hadoop cluster is enabled with MapR authentication. A Hadoop cluster connection for MapR is created from Studio. The Force MapR Ticket Authentication option was enabled and provided the details such as user, password, and cluster name. When the Check Services button was clicked, connectivity to the name node fails with the following error:
org.talend.designer.hdfsbrowse.exceptions.HadoopServerException: org.talend.designer.hdfsbrowse.exceptions.HadoopServerException: java.util.concurrent.ExecutionException: java.lang.reflect.InvocationTargetException at org.talend.designer.hdfsbrowse.hadoop.service.check.AbstractCheckedServiceProvider.checkService(AbstractCheckedServiceProvider.java:57) at org.talend.designer.hdfsbrowse.hadoop.service.HadoopServiceBean.check(HadoopServiceBean.java:102) at org.talend.designer.hdfsbrowse.hadoop.service.check.CheckHadoopServicesDialog$5.run(CheckHadoopServicesDialog.java:373) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.talend.designer.hdfsbrowse.exceptions.HadoopServerException: java.util.concurrent.ExecutionException: java.lang.reflect.InvocationTargetException at org.talend.designer.hdfsbrowse.hadoop.service.check.CheckedWorkUnit.execute(CheckedWorkUnit.java:47) at org.talend.designer.hdfsbrowse.hadoop.service.check.AbstractCheckedServiceProvider.checkService(AbstractCheckedServiceProvider.java:54) ... 5 more Caused by: java.util.concurrent.ExecutionException: java.lang.reflect.InvocationTargetException at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:206) at org.talend.designer.hdfsbrowse.hadoop.service.check.CheckedWorkUnit.execute(CheckedWorkUnit.java:44) ... 6 more Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.talend.core.utils.ReflectionUtils.invokeMethod(ReflectionUtils.java:166) at org.talend.designer.hdfsbrowse.hadoop.service.check.AbstractCheckedServiceProvider.setMaprTicketConfig(AbstractCheckedServiceProvider.java:157) at org.talend.designer.hdfsbrowse.hadoop.service.check.provider.CheckedNamenodeProvider.check(CheckedNamenodeProvider.java:67) at org.talend.designer.hdfsbrowse.hadoop.service.check.AbstractCheckedServiceProvider$1.run(AbstractCheckedServiceProvider.java:49) at org.talend.designer.hdfsbrowse.hadoop.service.check.CheckedWorkUnit$1.call(CheckedWorkUnit.java:65) at java.util.concurrent.FutureTask.run(FutureTask.java:266) ... 3 more Caused by: com.mapr.login.MapRLoginException: Unable to connect to any of the cluster's CLDBs. CLDBs tried: cluster-mapr52-00079213:7443. Please check your cluster configuration. at com.mapr.login.client.MapRLoginHttpsClient.authenticateWithMapRCluster(MapRLoginHttpsClient.java:743) at com.mapr.login.client.MapRLoginHttpsClient.getMapRCredentialsViaPassword(MapRLoginHttpsClient.java:307) ... 13 more
The successful tests above help you to know that there are no connectivity issues or configuration issues from the MapR client. The error states that there is a CLDB connectivity issue from Studio, and this is a generic error. When MapR authentication is enabled, you use SSL for the Hadoop cluster, but Talend Studio is not configured with the Hadoop cluster SSL. Hence, this issue is observed.
To fix the issue, add the Hadoop cluster certificate to the cacerts file (the default keystore file in C:\Program Files\Java\jdk1.8.0_141\jre\lib\security) used by Talend Studio. The steps are given below.
Use the following command to find the certificate of MapR from the MapR client installed location:
keytool -list -v -keystore truststore file
Export the MapR certificate using the following command from the truststore file.
keytool -exportcert -keystore truststore file -alias alias -file temporary certificate file
Import the MapR certificate using the following command to the cacerts file used by Studio:
keytool -importcert -keystore cacerts -alias alias -file temporary certificate file
Note: The Studio .log that is enabled with debug logging will not log any errors on SSL in this use case.