hadoop集群搭建
硬件环境:redhat 三个节点node1,node2,node3(虚拟机)
一:为三个节点新建用户grid
二:配置ssh免登录
(在node1节点)使用grid用户登录,<br><div>
运行ssh -keygen -t rsa<br>
切换到 .ssh目录下,复制当前目录下的id_rsa.pub并重命名为authorized_keys
(在node2节点)使用grid用户登录,
运行ssh -keygen -t rsa
切换到 .ssh目录下,复制当前目录下的id_rsa.pub并重命名为authorized_keys
(在node3节点)使用grid用户登录,
运行ssh -keygen -t rsa
切换到 .ssh目录下,复制当前目录下的id_rsa.pub并重命名为authorized_keys
分别将node1,node2,node3三个节点中的内容复制到一个authorized_keys中,并将其他节点的 authorized_keys文件覆盖。然后重启network服务
三:修改机器名和hosts文件
修改主机名:修改/etc/sysconfig/network文件中的HOSTNAME
在/etc/hosts文件中添加(每一个节点中的hosts都需要修改
namenode和datenode节点的ip和机器名
192.168.77.130 node1
192.168.78.128 node2
192.168.78.129 node3
四:安装jdk
配置jdk环境变量
修改/etc/profile文件
在文件中添加
export JAVA_HOME=/home/jdk1.6.0_45 //jdk home目录
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
然后 source /etc/profile即可
五:安装,配置hadoop
需要修改的文件:hadoop/conf目录下的hadoop-env.sh ,hdfs-site.xml ,
core-site.xml,mapred-site.xm,masters,slaves文件
1、hadoop-env.sh文件
在hadoop-env.sh文件中配置javahome :export JAVA_HOME=/home/jdk1.6.0_45
2、hdfs-site.xml文件
在hdfs-site.xml文件中添加属性dfs.replication,其value值为hdfs复制份数
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
3、core-site.xml文件
在core-site.xml文件中添加属性fs.default.name和hadoop.tmp.dir
<property>
<name>fs.default.name</name>
<value>hdfs://node1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/grid/hadoop-1.2.1/tmp</value>
</property>
4、mapred-site.xml文件
在mapred-site.xml文件中添加属性mapred.job.tracker
<property>
<name>mapred.job.tracker</name>
<value>node1:9001</value>
</property>
5、masters文件
在masters文件中添加namenode的机器名
node1
6、slaves
在slaves文件中添加datanode的机器名
node2
node3
六:启动
切换到bin目录下
执行命令:hadoop namenode -format
启动:./start-all.sh
查看进程:jps
登录到web控制页面:
ip:50030和50070端口