首页 > 大数据 > Hadoop > 4.2配置hadoop
1)配置hadoop-env.sh
该"hadoop-env.sh"文件位于"/usr/hadoop/conf"目录下。

在文件的末尾添加下面内容。
# set java environment
export JAVA_HOME=/usr/java/jdk1.6.0_31

Hadoop配置文件在conf目录下,之前的版本的配置文件主要是Hadoop-default.xml和Hadoop-site.xml。由于Hadoop发展迅速,代码量急剧增加,代码开发分为了core,hdfs和map/reduce三部分,配置文件也被分成了三个core-site.xml、hdfs-site.xml、mapred-site.xml。core-site.xml和hdfs-site.xml是站在HDFS角度上配置文件;core-site.xml和mapred-site.xml是站在MapReduce角度上配置文件。
2)配置core-site.xml文件
修改Hadoop核心配置文件core-site.xml,这里配置的是HDFS的地址和端口号。
hadoop.tmp.dir
/usr/hadoop/tmp
(备注:请先在 /usr/hadoop 目录下建立 tmp 文件夹)
A base for other temporary directories.
fs.default.name
hdfs://192.168.1.2:9000
备注:如没有配置hadoop.tmp.dir参数,此时系统默认的临时目录为:/tmp/hadoo-hadoop。而这个目录在每次重启后都会被干掉,必须重新执行format才行,否则会出错。


3)配置hdfs-site.xml文件
修改Hadoop中HDFS的配置,配置的备份方式默认为3。
dfs.replication
1
(备注:replication 是数据副本数量,默认为3,salve少于3台就会报错)
用下面命令进行编辑:

编辑结果显示如下:

4)配置mapred-site.xml文件
修改Hadoop中MapReduce的配置文件,配置的是JobTracker的地址和端口。
mapred.job.tracker
http://192.168.1.2:9001
用下面命令进行编辑:

编辑结果显示如下:

5)配置masters文件
有两种方案:
为保险起见,启用第二种,因为万一忘记配置"/etc/hosts"局域网的DNS失效,这样就会出现意想不到的错误,但是一旦IP配对,网络畅通,就能通过IP找到相应主机。
用下面命令进行修改:

编辑结果显示如下:

去掉"localhost",每行只添加一个主机名,把剩余的Slave主机名都填上。
Slave1.Hadoop
Slave2.Hadoop
Slave3.Hadoop
192.168.1.3
192.168.1.4
192.168.1.5
原因和添加"masters"文件一样,选择第二种方式。
用下面命令进行修改:

编辑结果如下:

现在在Master机器上的Hadoop配置就结束了,剩下的就是配置Slave机器上的Hadoop。
一种方式是按照上面的步骤,把Hadoop的安装包在用普通用户hadoop通过"scp"复制到其他机器的"/home/hadoop"目录下,然后根据实际情况进行安装配置,除了第6步,那是Master特有的。用下面命令格式进行。(备注:此时切换到普通用户hadoop)
scp ~/hadoop-1.0.0.tar.gz hadoop@服务器IP:~/

scp
-r /usr/hadoop root@服务器IP:/usr/


从上图中知道,hadoop文件夹确实已经复制了,但是我们发现hadoop权限是root,所以我们现在要给"Slave1.Hadoop"服务器上的用户hadoop添加对"/usr/hadoop"读权限。
以root用户登录"Slave1.Hadoop",执行下面命令。
chown
-R hadoop:hadoop(用户名:用户组) hadoop(文件夹)

接着在"Slave1 .Hadoop"上修改"/etc/profile"文件(配置 java 环境变量的文件),将以下语句添加到末尾,并使其有效(source /etc/profile):
# set hadoop environment
export HADOOP_HOME=/usr/hadoop
export PATH=$PATH :$HADOOP_HOME/bin
如果不知道怎么设置,可以查看前面"Master.Hadoop"机器的"/etc/profile"文件的配置,到此为此在一台Slave机器上的Hadoop配置就结束了。剩下的事儿就是照葫芦画瓢把剩余的几台Slave机器按照《从"Master.Hadoop"到"Slave1.Hadoop"复制Hadoop的安装包。》这个例子进行部署Hadoop。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/11150851/viewspace-1120285/ ,如需转载,请注明出处,否则将追究法律责任。