CDH5 部署三部曲之三:问题总结
欢迎访问我的 GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
本文是《CDH5 部署三部曲》的终篇,前面两章完成了 CDH5 集群的部署和启动,本章将实战中遇到的问题做个总结,如果碰巧您也遇到过这些问题,希望本文能给您一些参考;
系列文章链接
启动集群服务报错
首次启动集群服务报错,如下图:
上述错误一般是对应节点的 /usr/java/default 目录下没有 JDK 所致,假设已将 JDK 部署在 /usr/lib/jvm/jdk1.8.0_191 ,那么只需执行以下命令建立软链接即可:
点击页面上的重试按钮;
NFS Gateway 启动失败
发现 NFS Gateway 服务有问题,检查日志:
日志如下,在 worker1 节点上,portmap 和 rpcbind 这两个服务不存在导致的:
于是安装所需服务:
启动服务:
再次启动:
等待 HDFS 服务重启完成后,如下图,可见 NFS Gateway 问题已经消失:
HDFS 副本不足的块
问题如下图绿框所示:
目前只有一个 datanode,可以增加一个,如下图,进入 HDFS 的实例页面,点击"添加角色实例":
点击下图红框位置,增加一个 DataNode:
如下图,确保 worker1 和 worker2 都选上:
勾选后,点击红框 2 中的按钮,在下拉菜单中点击“启动”:
现在有了两个 DataNode,所以副本数可以设置为 2,如下图红框所示,按照顺序找出参数进行设置,记得点击右下角的"保存更改"按钮:
上述设置完成后,新写入 hdfs 的文件副本数为 2,如果要将之前已经写入的文件的副本数也调整为 2,请 SSH 登录 worker1 节点,执行以下命令切换到 hdfs 账号:
以 hdfs 账号的身份执行以下命令,即可完成副本数设置:
返回管理页面,可见 HDFS 的状态变成了健康:
Hive 报错
如下图红框所示,Hive 启动失败,日志中提示 Version information not found in metastore
从上图可见 Hive 服务在 worker2 上,于是 SSH 登录 worker2,将 /usr/share/java 目录下的 mysql-connector-java.jar 文件复制到这个目录下: /opt/cloudera/parcels/CDH-5.7.6-1.cdh5.7.6.p0.6/lib/hive/lib/
在 Hive 的配置页面,搜索"hive.metastore.schema.verification",如下图,确保红框 3 中的复选框取消勾选:
修改配置 datanucleus.autoCreateSchema ,如下图,确保红框 3 中的复选框被选中:
重启完成后,Hive 状态为健康:
spark-shell 执行失败
在 worker1 或者 worker2 上执行 spark-shell 命令进入 spark 控制台时,会产生内存相关的错误,需要调整 YARM 相关的内存参数:
在 YARN 的配置页面,调整 yarn.scheduler.maximum-allocation-mb 和 yarn.nodemanager.resource.memory-mb 这两个参数的值,原有的值都是 1G ,现在都改成 2G ,如下图:
重启 YARN;
重启 Spark;
执行 spark-shell 命令之前,先执行命令 su - hdfs 切换到 hdfs 账号;
这次终于成功进入 spark-shell 交互模式:
Hue 启动失败
Hue 启动失败如下图:
上述失败是由于文件夹、文件、httpd 服务没有准备好导致的,执行以下命令修复此问题:
在网页上重启 Hue 服务,稍后可见服务已经正常:
以上就是本次实战过程中遇到的所有问题和解决方法,至此《CDH5 部署三部曲》全部完成,如果您正在部署 CDH,希望此系列文章能给您一些参考。
欢迎关注 InfoQ:程序员欣宸
版权声明: 本文为 InfoQ 作者【程序员欣宸】的原创文章。
原文链接:【http://xie.infoq.cn/article/74938327b85ceee50cae0e3e5】。文章转载请联系作者。
评论