hadoop环境搭建遇到问题集锦

时间:2023-03-09 07:08:02
hadoop环境搭建遇到问题集锦

1  在hadoop的bin目录下, 运行hadoop version命令,提示“hadoop:没有此命令”

解决办法: ./hadoop version或者$HADOOP_HOME/bin放在PATH中。

2 为什么cat $PATH会出现空目录, 而source /etc/profile后设置的目录会出现,客户端启动的时候/etc/profile不执行一遍吗?

3  格式化namenode的时候会出现“Format aborted in /home/feixiang/hadoop-0.20.2/hdfs/name”, 如果不格式化,start-all.sh时候会没有namenode节点,查看logs下日志,会提示namenode没有格式化

解决办法,把自己手动创建的目录删除掉,hadoop namenode -format运行的时候会创建相应的目录,如果你已经建立好啦,就会报失败,估计HDFS的文件格式和我们系统的文件格式是两种格式,并且和我们常用的文件系统不同的是,hdfs当遇到需要创建的文件名已经存在的时候,不是去覆盖,而是直接返回失败。

4 Hadoop在core-site.xml中指定namenode的位置,在mapred-site.xml中指定jobtracker的位置,为什么只格式化namenode,不格式化其他的文件?

各个参数的设置:

<!--core-site.xml-->

fs.default.dir    指定文件系统(默认色是HDFS)的位置和类型

io.file.buffer.size   辅助I/O操作的缓冲区大小

dfs.block.size   设置块的大小

dfs.datanode.du.reserved  指定保留空间的大小

fs.trash.interval   回收站的设置

<!--hdfs-site.xml-->

dfs.name.dir  存储永久性的元数据的目录列表,包括远程目录,namenode在列表上的各个目录中会存放相同的元数据文件,和辅助namenode不同的是,辅助namenode定期保持namenode的检查点

dfs.data.dir   hdfs存储数据的目录,可以支持多个目录,可以循环的在各个目录中写数据

fs.checkpoint.dir   保存检查点的目录

<!--mapred-site.xml-->

mapred.job.tracker   用于指定jobtracker的主机名和端口

mapred.local.dir   用于存放map-reduce的中间数据,  默认${hadoop.tmp.dir}/mapred/local

mapred.system.dir 用于存放map-reduce的共享文件的目录, 默认${hadoop.tmp.dir}/mapred/system

mapred.tasktracker.map.tasks.maximum,默认2

mapred.tasktracker.reduce.tasks.maximum,默认2