配置hadoop的环境变量
vi /etc/profile export HADOOP_HOME=/usr/Hadoop export PATH=$PATH:$HADOOP_HOME/bin
source /etc/profile 使配置生效
配置hadoop
1.配置hadoop-env.sh
文件位于“/usr/Hadoop/conf”
vi /usr/Hadoop/conf/Hadoop-env.sh export JAVA_HOME=/usr/java/jdk1.6.0_31
2.配置core-site.xml文件
mkdir /usr/Hadoop/tmp 创建文件夹tmp,用来保存hadoop临时数据 vi /usr/Hadoop/conf/core-site.xml <configuration> <property> <name>hadoop.tmp.dir</name> <value>/usr/hadoop/tmp</value> (备注:请先在 /usr/hadoop 目录下建立 tmp 文件夹,默认采用系统的临时目录:/tmp/Hadoop-hadoop。而这个目录每次重启都会被干掉,必须重新执行format才行,否则会出错。) <description>A base for other temporary directories.</description> </property> <!-- file systemproperties ,配置NameNode的访问地址--> <property> <name>fs.default.name</name> <value>hdfs://192.168.1.2:9000</value> </property> </configuration>
3.配置hdfs-site.xml文件
修改hadoop中的hdfs的配置,配置的备份方式默认是3
<configuration> <property> <name>dfs.replication</name> <value>1</value> (备注:replication 是数据副本数量,默认为3,salve少于3台就会报错) </property> <configuration>
4.配置mapred-site.xml文件
修改hadoop中mapreduce的配置文件,配置的jobTracker的地址和端口
<configuration> <property> <name>mapred.job.tracker</name> <value>http://192.168.1.2:9001</value> </property> </configuration>
5.配置masters文件
修改/usr/Hadoop/conf/masters文件,指定master机器的主机名
vi /usr/Hadoop/conf/masters 192.168.1.2(或者是master)
6.配置slaves文件
vi /usr/Hadoop/conf/slaves slave1 slave2
注意:单机启动的时候,conf/slaves中一定不能为空。没有其他机器,就指定自己。
集群环境下,slave机器上可以不配置slaves
7.在集群中的其他机器上重复此配置
建议在普通用户hadoop下通过scp复制到其他机器的对应目录下。
其中第6步是master机器上特有的
使用shell脚本:
for i in $(seq1 100); do echo slave$i; scp /usr/hadoop Hadoop@slave$i: /usr; scp /etc/profile Hadoop@slave$i:/etc; done
复制文件后可能会发现hadoop目录是root权限
chown -R hadoop:Hadoop Hadoop 授权给hadoop用户