您的位置:首页 > 运维架构

Hadoop2.7与Spark1.6的集群搭建

2016-08-11 09:43 232 查看
机器说明:四台ubuntu系统的电脑,选取其中一台作为master,其余三台作为slaves。
  

  写在开头的两个坑: 

    1.虽然Linux支持一些特殊字符,但java里面并不支持。所以,Hadoop集群中的机器名不仅不能包含下划线,点也不可以。否则,在配置好集群之后运行jar程序的时候会报错。

    2.在ubuntu系统下,配置ssh无密码登录的时候,需要修改ssd_config配置文件,具体内容见下文。

  第一步,修改四台电脑的机器名,分别为Master、slaver1、slaver3、slaver4。以及通过ifconfig命令查看每台机器的固定ip,并将ip与主机名的映射添加到每一台机器的hosts文件中:

 


  第二步,在Master机器上进入root帐号(接下来的所有配置均在root帐号下进行),在/usr目录下新建java文件夹,然后将jdk压缩包解压在java文件夹下,并在/etc/profile中配置JDK环境。

  配置JDK(在etc/profile文件的最后面加上如下代码):

  保存退出之后,运行下面代码让profile立即生效:

  第三步,将Hadoop压缩包解压在/usr目录下,并在/usr目录下新建spark文件夹,并将scala压缩包、spark压缩包解压在spark文件夹下。



  在/etc/profile中配置Hadoop、scala、spark环境变量如下:



  还是在终端运行(source /etc/profile)命令,让环境变量立即生效,然后可在终端运行(hadoop --version)查看Hadoop版本。

  第四步,安装ssh(无密码登录),并实现Master与其它机器之间的通信。在终端依次输入如下命令:

  然后修改/etc/ssh/sshd_config文件(将如下代码覆盖掉文件之前的所有内容):

  重启ssh,让配置文件生效:

  查看/root/.ssh目录下是否存在文件,如果有则删除,没有则开始下一步。

  在终端运行如下命令:

  通过ssh登录master(第一次需要输入密码)成功之后,exit退出然后再次登录,如果不需要再输入密码,即ssh无密码登录成功,否则删除/root/.ssh文件夹下所有文件,并重新安装。

  接下来,即可通过以下命令来建立与其它机器之间的通信:

  第五步,配置Hadoop。在/usr/hadoop-2.7.2路径下,依次输入如下命令:

  修改hadoop-2.7.2/etc/hadoop下的配置文件core-site.xml,在<configuration></configuration>中间加上如下代码:

  修改hadoop-2.7.2/etc/hadoop下的配置文件hdfs-site.xml,在<configuration></configuration>中间加上如下代码:

  修改hadoop-2.7.2/etc/hadoop下的配置文件mapred-site.xml,在<configuration></configuration>中间加上如下代码:

  修改hadoop-2.7.2/etc/hadoop下的配置文件yarn-site.xml,在<configuration></configuration>中间加上如下代码:

  然后配置/hadoop-2.7.2/etc/hadoop目录下的hadoop-env.sh、yarn-env.sh,在其中添加如下代码:

  接着配置/hadoop-2.7.2/etc/hadoop目录下slaves,在里面加上你的从服务器主机名(也就是其它机器的主机名)。

  以上全部配置成功后,将所有配置文件发送到各个从服务器:

  最后在Master机器上执行如下命令进行namenode的格式化:

  最后就可以用以下命令来启动Hadoop集群:

  启动集群之后,就可以利用集群来实现最简单的单词计数:

  然后在浏览器打开master:8088查看信息。

  第六步,进行Spark集群配置。

  到此,spark已经配置完成,然后将Master上配置好的spark、scala以及环境变量发送到每一个slave上去:

  启动spark集群(可在master:8080查看):

  关闭spark集群:

  开启spark集群之后,可以利用spark集群实现最简单的单词计数:

    如果会用python,也可以运行bin下的pyspark进入python编辑窗口,输入以下命令来实现单词计数:
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hadoop spark