1,pid 文件丢失问题
如果hadoop不指定pid的文件路径,默认的路径在/tmp下面,linux会定期清理/tmp目录,导致里面的pid文件消息
./stop-all.sh执行的时候直接从/tmp下面查找pid文件,因为已经被系统删除,便会提示找不到文件。会导致停止集群失败。
这时可以根据系统里面正在运行的hadoop进程相关信息重构一下这些PID文件。即可执行成功。
彻底的解决办法是:
在./etc/hadoop/hadoop-env.sh中能过环境变量指定pid的路径
hbase也有同样的问题,修改的办法是在./conf/hbase-env.sh
2,关于多磁盘的问题
由于以前精心,没有配置datanode的存储路径,所以的数据都写入到了core-site.xml中配置的hadoop.tmp.dir,还好这个目已经修改过来,不在/tmp下面
才没有造成数据的损失。
发现这个问题以后,当然是要把datanode的存储路径放到正确的位置,修改办法,修改hdfs-site.xml中的
主要是利用了hadoop支持多磁盘的原理,多个磁盘用,分开