更新时间:2024-10-11 GMT+08:00
DataArts Studio调度spark作业失败
用户问题
DataArts Studio作业调度失败,显示读取/thriftserver/active_thriftserver路径下的数据失败。
问题现象
DataArts Studio作业调度失败,显示读取/thriftserver/active_thriftserver路径下的数据失败,
报错信息为:Can not get JDBC Connection, due to KeeperErrorCode = NoNode for /thriftserver/active_thriftserver。
原因分析
DataArts Studio提交spark作业时调用spark的JDBC方式,而Spark会启动一个名为thriftserver的进程以供客户端提供JDBC连接,JDBCServer在启动时会在zk的/thriftserver目录下创建子目录active_thriftserver,并且注册相关连接信息。如果读不到该连接信息就会JDBC连接异常。
处理步骤
检查zookeeper下面是否有目标目录和注册的信息
- 以root用户登录任意一个Master节点并初始化环境变量。
source /opt/client/bigdata_env
- 执行zkCli.sh -server 'ZookeeperIp:2181'命令登录zk。
- 执行ls /thriftserver查看是否有active_thriftserver目录。
- 登录Manager界面,查看Spark的JDBCServer实例的主备状态是否未知。
- 是,执行5。
- 否,联系运维人员处理。
- 重启两个JDBCServer实例,查看主备实例状态恢复正常且zk下面有了目标目录和数据,作业即可恢复正常。若实例状态没有恢复请联系支持人员处理。
父主题: 使用Spark