登录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
怎么调整任务使用的yarn队列:
在前端—管理台—设置—队列
服务报没有读取到HADOOP_CONF_DIR是因为java应用没有读取到该环境变量
可以通过配置对应服务的conf目录下的linkis.properties和linkis-engine.properties(EM才有) hadoop.config.dir参数
另外正常如果环境变量有配置,应该是可以在Java应用里面读取到环境变量的,可以在~/.bashrc进行配置其他的环境变量对应的参数:
val HADOOP_HOME = CommonVars[String]("hadoop.home", CommonVars[String]("HADOOP_HOME", "/appcom/Install/hadoop").getValue)
val HADOOP_CONF_DIR = CommonVars[String]("hadoop.config.dir", CommonVars[String]("HADOOP_CONF_DIR", "/appcom/config/hadoop-config").getValue)
val HBASE_HOME = CommonVars[String]("hbase.home", CommonVars[String]("HBASE_HOME", "/appcom/Install/hbase").getValue)
val HBASE_CONF_DIR = CommonVars[String]("hbase.config.dir", CommonVars[String]("HBASE_CONF_DIR", "/appcom/config/hbase-config").getValue)
val SPARK_CONF_DIR = CommonVars[String]("spark.config.dir", CommonVars[String]("SPARK_CONF_DIR", "/appcom/config/spark-config").getValue)
val HIVE_CONF_DIR = CommonVars[String]("hive.config.dir", CommonVars[String]("HIVE_CONF_DIR", "/appcom/config/hive-config").getValue)
查询时报资源不足,异常中有ResourceManager的信息,需要查看linkis-ResourceManager的日志:
一般是因为ResourceManager的YarnUtils报出来的,该类实例化时需要依赖yarn-site.xml配置文件,需要配置hadoop.config.dir
Scriptis的右侧刷不出来数据库,报异常
linkis-metatdata报没有读取到HIVE_CONF_DIR的错误:配置linkis-metadata的参数:对应为元数据库的JDBC连接串
hive.meta.url=
hive.meta.user=
hive.meta.password=
Scriptis的右侧刷不出来数据库,一直在刷新中:
这是因为右侧的数据库我们是限制了权限的,而这个依赖hive开启授权访问:hive.security.authorization.enabled=true;
如果不想开启可以修改:com/webank/wedatasphere/linkis/metadata/hive/dao/impl/HiveMetaDao.xml的sql去掉权限控制部分
在页面上查询hive后,查询出来的数据有问题,只有一个default库
这是因为linkis-ujes-hive-enginemanager没有读取到hive的环境变量:HIVE_CONF_DIR可以配置linkis-engine.properties 的hive.config.dir指向hive的配置文件目录
Hive查询的时候报:找不到zk相关的类比如:org.apache.curator.*
这是因为开启了hive事务,可以在linkis的机器上面修改hive-site.xml关掉事务配置参考hive事务:https://www.jianshu.com/p/aa0f0fdd234c
修改Hadoop版本编译时报错,没有明显的错误日志
可以看编译错误的上面的warn级别的提示,这是因为我们为了防止包冲突在每个服务的assembly的配置文件里面distribution.xml 加了excludes排除标签,注释掉即可以编译通过。
启动时卡住,执行./start-all.sh
可以通过按回车执行下去,这个问题会在0.9.1进行修复
执行查询的时候启动engine报错:java.io.IOException: Cannot run program "/tmp/rootScript.sh": error=2, No such file or directory
文件其实存在且有权限执行,这是因为没有安装expect导致的,可以通过
sudo yum -y install expect
CDH编译出来的包提交任务后报404,not found,服务都正常启动,这是因为cdh打出来的包中存在jasper-相关的包,导致请求出错到服务的lib下面删掉这些包即可:
rm jasper-
因为Linkis启动enine使用的是expect语法,在脚本中需要命令提示符界面展示为如此[root@localhost ~]#如果不是,需要修改,在.bashrc里面配置:export PS1='[\u@\h \W]\$ '
当出现启动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包冲突导致