hadoop的一些环境变量配置及namenode无法启动问题解决
scp hadoop-env.sh core-site.xml hdfs-site.xml mapred-env.sh slaves mapred-site.xml.template yarn-site.xml hadoop2:/export/servers/hadoop/etc/hadoop
[[email protected] ~]# hadoop fs -put andy.txt /
[[email protected] ~]# hadoop fs -ls /
#set hadoop env
export HADOOP_HOME=/export/servers/hadoopexport PATH=${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH
#set java env
export JAVA_HOME=/export/servers/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
先启动hadoop01 的namenode 和datanode后再开始连接,然后在开始进行hadoop的操作
namenode无法启动的问题 下面红体字是关键,看自己有没有配置,如果不配可能会启动不了namenode
namenode最开始的位置是要配置在core-site.xml,hdfs-site.xml
core-site.xml内容如下:
- <configuration>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>file:/export/data/hadoop/temp/dfs/</value>
- <description>Abase for other temporary directories.</description>
- </property>
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://localhost:9000</value>
- </property>
- </configuration>
hdfs-site.xml内容如下:
- <configuration>
- <property>
- <name>dfs.namenode.name.dir</name>
- <value>file:/export/data/hadoop/temp/dfs/name</value>
- </property>
- <property>
- <name>dfs.datanode.data.dir</name>
- <value>file:/export/data/hadoop/temp/dfs/data</value>
- </property>
- </configuration>
导致系统启动后会默认读取linux根目录下的tmp/hadoop-hadoop/下的文件。
修改红体字然后按下面步骤即可
1、先运行stop-all.sh
2、格式化namdenode,不过在这之前要先删除原目录,即core-site.xml下配置的<name>hadoop.tmp.dir</name>所指向的目录,删除后切记要重新建立配置的空目录,然后运行hadoop namenode -format
3、运行start-all.sh
2、格式化namdenode,不过在这之前要先删除原目录,即core-site.xml下配置的<name>hadoop.tmp.dir</name>所指向的目录,删除后切记要重新建立配置的空目录,然后运行hadoop namenode -format
3、运行start-all.sh