Spark入门到精通--(第八节)环境搭建(Hadoop搭建)
上一节把Centos的集群免密码ssh登陆搭建完成,这一节主要讲一下Hadoop的环境搭建。
Hadoop下载安装
下载官网的Hadoop 2.4.1的软件包。http://hadoop.apache.org/,或在百度网盘进行下载。链接: http://pan.baidu.com/s/1gePE9O3 密码: unmt
下载完以后将通过Xftp上传到服务器器上。我是放在/home/software目录下
[root@spark1 ~]# cd /home/software/ [root@spark1 software]# ls hadoop-2.4.1-x64.tar.gz scala-2.11.8.tgz [root@spark1 software]#
然后解压放到/usr/lib目录下,并且重命名为hadoop,这里hadoop的配置和之前Scala、Java差不多。
[root@spark1 software]# tar -zxf hadoop-2.4.1-x64.tar.gz //解压 [root@spark1 software]# mv hadoop-2.4.1-x64 /usr/lib/hadoop //重命名 [root@spark1 software]# cd /usr/lib //编辑环境变量 [root@spark1 lib]# vi ~/.bashrc//添加到最后两行 export HADOOP_HOME=/usr/lib/hadoop export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin //保存退出,是环境变量生效 [root@spark1 lib]# source /etc/profile
Hadoop配置文件修改
然后我们进入hadoop目录,对hadoop的配置文件进行修改。
[root@spark1 etc]# cd hadoop/ [root@spark1 hadoop]# cd etc/ [root@spark1 etc]# cd hadoop/
- 修改core-site.xml
[root@spark1 hadoop]# vi core-site.xml
设置hdfs对外的端口,在<configuration>里添加
<configuration> <property> <name>fs.default.name</name> <value>hdfs://spark1:9000</value> </property> </configuration>
保存退出。
- 修改hdfs-site.xml
[root@spark1 hadoop]# vi hdfs-site.xml
设置集群的节点数3,hdfs的目录。
<configuration> <property> <name>dfs.name.dir</name> <value>/usr/lib/data/namenode</value> </property> <property> <name>dfs.data.dir</name> <value>/usr/lib/data/datanode</value> </property> <property> <name>dfs.temp.dir</name> <value>/usr/lib/data/temp</value> </property> <property> <name>dfs.replication</name> <value>3</value> </property> </configuration>
保存退出,根据上面的配置路径新建data目录。
[root@spark1 lib]# cd /usr/lib
[root@spark1 lib]# mkdir data
- 修改mapred-site.xml.template
[root@spark1 hadoop]# vi mapred-site.xml.template
设置MapReduce运行在yarn上,在<configuration>里添加
<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>
保存退出。
- 修改yarn-site.xml
[root@spark1 hadoop]# vi yarn-site.xml
在<configuration>里添加
<property> <name>yarn.resourcemanager.webapp.address</name> <value>spark1:8088</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property>
保存退出。
- 修改slaves
[root@spark1 hadoop]# vi slaves
spark1
spark2
spark3
保存退出,全部配置文件完成,是文件生效。
[root@spark1 hadoop]# source ~/.bashrc
为集群三台服务器全部配置Hadoop配置
将spark1上的配置文件拷贝到spark2和spark3上。
[root@spark1 hadoop]# cd /usr/lib
[root@spark1 lib]# scp -r hadoop root@spark2:/usr/lib/
拷贝完成后别忘了在spark2和spark3上创建/usr/lib目录上的data文件夹,/etc/profile文件也要都修改,改完别忘了另外两台服务器生效。
[root@spark2 lib]# source ~/.bashrc
都完成之后我们回到spark1服务器上。
- 格式化namenode
[root@spark1 lib]# hdfs namenode -format
- 启动hdfs集群,在spark1上启动namenode、secondaryNameNode、datanode,在spark2、spark3上启动datanode
[root@spark1 lib]# start-dfs.sh
按提示一路操作下来,完成后输入命令查看spark1是否OK
[root@spark1 lib]# jps
你可以在spark2、spark3下分别输入命令jps查看datanode是否启动。
完成后你可以在本地打开chrome输入:http://[spark1的外网ip]:50070。出现如下界面
启动Yarn集群
在spark1上执行命令
[root@spark1 lib]# start-yarn.sh
[root@spark1 lib]# jps
发现启动了ResourceManager和NodeManager,同时spark2和spark3上也会出现NodeManager。
完成后你可以在本地打开chrome输入:http://[spark1的外网ip]:8088。出现如下界面(如果未出现该界面,说明之前yarn-site.xml文件里的地址没有配外网ip,可直接修改webapp.address[外网ip:8088])
至此hadoop集群搭建完毕!
如有配置问题也可参考:http://blog.csdn.net/greensurfer/article/details/39450369