Hi, everyone
I am trying to setup  kylin inside Docker.  working  with Centos 7 and CDH 6.3
Everything  is going well until I ran into some web ui issue.


kylin version:  
47faa1810f21fa8c4c109b82af9eb09d44c2f0d14d245a94655aaf783780a143  
apache-kylin-3.0.0-alpha2-bin-cdh60.tar.gz
appearance : kylin started but web ui returns 404 on every request


Issue 1 : keystored was required for https connector but no keystore was 
shipped  , and no document in kylin about how to deal with it :

          following config from default $KYLIN_HOME/tomcat/conf/server.xml    
        <Connector port="7443" 
protocol="org.apache.coyote.http11.Http11Protocol"
                   maxThreads="150" SSLEnabled="true" scheme="https" 
secure="true"
                   keystoreFile="conf/.keystore" keystorePass="changeit"
                   clientAuth="false" sslProtocol="TLS" />

           results in throwing the exception:
     [main] core.StandardService:164 : Failed to initialize connector 
[Connector[org.apache.coyote.http11.Http11Protocol-7443]]
org.apache.catalina.LifecycleException: Failed to initialize component 
[Connector[org.apache.coyote.http11.Http11Protocol-7443]]



I work around Issue 1 by adding a dummy keystore using keytool
# cd $KYLIN_HOME && sudo -u kylin keytool -genkey -alias tomcat -keyalg RSA 
-keystore .keystore -storepass changeit
but I consider it  is a bad  practice , hard to use and potential security 
risks.
kylin should comment out the SSL enabled port , and document the SSL & keystore 
settings  for kylin admin .




Issue 2:  dependency missing on commons-configuration
result in throwing following exception: 
[localhost-startStop-1] [localhost].[/kylin]:164 : Exception sending context 
initialized event to listener instance of class 
[org.springframework.web.context.ContextLoaderListener]
org.springframework.beans.factory.BeanCreationException: Error creating bean 
with name 
'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping':
 Invocation of init method failed; nested exception is 
java.lang.NoClassDefFoundError: 
org/apache/commons/configuration/ConfigurationException




I work around Issue 2 by downloading  commons-configuration-1.10.jar from 
mvnrepository.com, and put it in $KYLIN_HOME/tomcat/libs

maybe a symbolic link from any compatible version of commons-configuration jar 
file could do the same. 
commons-configuration-version.jar was shipped with hbase and hadoop and spark 
and hive, but not with kylin.
and somehow kylin in my environment failed to locate it.
solve missing  dependency may be  obvious and easy for java developers ,  but 
not true for everyone


Issue 3:  scanning for unnecessary derbyLocale files under $SPARK_HOME.
result in error logs in following pattern ,  looks like it is scanning on every 
possible  locale ,not only this sample line


[localhost-startStop-1] scan.StandardJarScanner:146 : Failed to scan 
[file:/usr/lib/spark/jars/derbyLocale_cs.jar] from classloader hierarchy


Issue  3 is unsolved, after patching Issue 2 kylin web UI is ready to use. 
I do not understand why web ui is doing this  scanning,  maybe rooted in CDH6 
spark , 
but since it is logged by kylin process, I think it is reasonable to report it .

Reply via email to