1. 登录Scriptis时报根目录不存在,存在工作空间和HDFS两个跟目录:

      第一先确认linkis-publicservice的conf目录下linkis.properties参数:wds.linkis.workspace.filesystem.localuserrootpath=file:///tmp/linkis/ 是不是file://开头。

      确认:wds.linkis.workspace.filesystem.hdfsuserrootpath.prefix=hdfs:///tmp/linkis/ 是不是hdfs://开头

      再确认/tmp/linkis目录下是不是有用户目录比如:/tmp/linkis/hadoop

    2. 怎么调整任务使用的yarn队列:

      在前端—​管理台—​设置—​队列

    3. 服务报没有读取到HADOOP_CONF_DIR是因为java应用没有读取到该环境变量

      可以通过配置对应服务的conf目录下的linkis.properties和linkis-engine.properties(EM才有) hadoop.config.dir参数

      另外正常如果环境变量有配置,应该是可以在Java应用里面读取到环境变量的,可以在~/.bashrc进行配置其他的环境变量对应的参数:

      1. val HADOOP_HOME = CommonVars[String]("hadoop.home", CommonVars[String]("HADOOP_HOME", "/appcom/Install/hadoop").getValue)
      2. val HADOOP_CONF_DIR = CommonVars[String]("hadoop.config.dir", CommonVars[String]("HADOOP_CONF_DIR", "/appcom/config/hadoop-config").getValue)
      3. val HBASE_HOME = CommonVars[String]("hbase.home", CommonVars[String]("HBASE_HOME", "/appcom/Install/hbase").getValue)
      4. val HBASE_CONF_DIR = CommonVars[String]("hbase.config.dir", CommonVars[String]("HBASE_CONF_DIR", "/appcom/config/hbase-config").getValue)
      5. val SPARK_CONF_DIR = CommonVars[String]("spark.config.dir", CommonVars[String]("SPARK_CONF_DIR", "/appcom/config/spark-config").getValue)
      6. val HIVE_CONF_DIR = CommonVars[String]("hive.config.dir", CommonVars[String]("HIVE_CONF_DIR", "/appcom/config/hive-config").getValue)
    4. 查询时报资源不足,异常中有ResourceManager的信息,需要查看linkis-ResourceManager的日志:

      一般是因为ResourceManager的YarnUtils报出来的,该类实例化时需要依赖yarn-site.xml配置文件,需要配置hadoop.config.dir

    5. Scriptis的右侧刷不出来数据库,报异常

      linkis-metatdata报没有读取到HIVE_CONF_DIR的错误:配置linkis-metadata的参数:对应为元数据库的JDBC连接串

      1. hive.meta.url=
      2. hive.meta.user=
      3. hive.meta.password=
    6. Scriptis的右侧刷不出来数据库,一直在刷新中:

      这是因为右侧的数据库我们是限制了权限的,而这个依赖hive开启授权访问:hive.security.authorization.enabled=true;

      如果不想开启可以修改:com/webank/wedatasphere/linkis/metadata/hive/dao/impl/HiveMetaDao.xml的sql去掉权限控制部分

    7. 在页面上查询hive后,查询出来的数据有问题,只有一个default库

      这是因为linkis-ujes-hive-enginemanager没有读取到hive的环境变量:HIVE_CONF_DIR可以配置linkis-engine.properties 的hive.config.dir指向hive的配置文件目录

    8. Hive查询的时候报:找不到zk相关的类比如:org.apache.curator.*

      这是因为开启了hive事务,可以在linkis的机器上面修改hive-site.xml关掉事务配置参考hive事务:https://www.jianshu.com/p/aa0f0fdd234c

    9. 修改Hadoop版本编译时报错,没有明显的错误日志

      可以看编译错误的上面的warn级别的提示,这是因为我们为了防止包冲突在每个服务的assembly的配置文件里面distribution.xml 加了excludes排除标签,注释掉即可以编译通过。

    10. 启动时卡住,执行./start-all.sh

      可以通过按回车执行下去,这个问题会在0.9.1进行修复

    11. 执行查询的时候启动engine报错:java.io.IOException: Cannot run program "/tmp/rootScript.sh": error=2, No such file or directory

      文件其实存在且有权限执行,这是因为没有安装expect导致的,可以通过sudo yum -y install expect

    12. CDH编译出来的包提交任务后报404,not found,服务都正常启动,这是因为cdh打出来的包中存在jasper-相关的包,导致请求出错到服务的lib下面删掉这些包即可:rm jasper-

    13. 因为Linkis启动enine使用的是expect语法,在脚本中需要命令提示符界面展示为如此[root@localhost ~]#如果不是,需要修改,在.bashrc里面配置:export PS1='[\u@\h \W]\$ '

    14. 当出现启动engine的失败日志时:

      ERROR DWCException{errCode=20010, desc='EngineManagerErrorException: errCode: 20019 ,desc: init engine failed! Unknown error, please ask admin for help. ,ip: 127.0.0.1 ,port: 12007 ,serviceKind: hiveEngineManager', ip='127.0.0.1', port=12008, serviceKind='hiveEntrance'}

    一般出现engine初始化失败时,需要先去看对于的ujes-engineManager的日志,看是什么原因导致,如果没有对应日志再接着去看对应的ujes-entrance的日志,看是不是entrance有问题。一般堆栈会告诉你为什么启动失败,大部分是配置的问题导致或者Jar包冲突导致