Ubuntu16.0.4下搭建Spark2.1.0-bin-Hadoop2.7

搭建环境

三台机器系统均为ubuntu16.0.4,内存8g,16g,16g.一台做master,另外两台做slave,安装的是jdk1.8.0,hadoop2.7.3,scala2.11.8,spark2.1.0-bin-hadoop2.7

搭建顺序

  1. 安装hadoop2.7.3

  2. 安装scala2.11.8

  3. 安装spark-2.1.0-bin-hadoop2.7

搭建Hadoop2.7.3

参考 Hadoop2.7.3完全分布式集群搭建和测试 这篇博客,亲测可行。
1.修改电脑hostname和hosts文件,将电脑名称在改为hostname文件里修分别改为Master,Slave1,Slave2,并在hosts文件里加入另外两台电脑的信息(IP地址以及电脑名称),如下:

#修改hostname的命令@H_404_27@
sudo@H_404_27@ vim /etc/hostname
#修改hosts的命令@H_404_27@
sudo@H_404_27@ vim /etc/hosts

修改后的hostname需要重启电脑才能生效,修改后的hosts文件如下所示

2.在三台电脑上分别建立用户,三台电脑用户名设置成相同如hadoop。这里用户权限问题应该设置一下,否则后面配置hadoop时可能会因权限问题出错,简单起见的话可以赋予用户root权限

sudo@H_404_27@ add user hadoop

3.配置ssh

#安装ssh@H_404_27@
sudo apt-get install openssh-server

#产生key,生成的key保存在~/.ssh文件夹下@H_404_27@
ssh-genkey

#在Master@H_404_27@上,导入authorized_keys
cat ~/.ssh/id@H_404_27@_rsa.pub >> ~/.ssh/authorized@H_404_27@_keys

#远程无密码登录(把Master上的authorized_keys拷贝到其他主机的相应目录下)@H_404_27@
scp ~/.ssh/authorized@H_404_27@_keys hadoop@Slave1@H_404_27@:~/@H_404_27@.ssh/
scp ~/.ssh/authorized@H_404_27@_keys hadoop@Slave2@H_404_27@:~/@H_404_27@.ssh/

#测试一下三台主机彼此之间是否可以连通@H_404_27@
ssh Master@H_404_27@
ssh Slave1@H_404_27@
ssh Slave2@H_404_27@

#如果想在ssh连接时不使用主机名称而是想使用自己设置的名称可以编辑.ssh文件夹下的config文件@H_404_27@


配置好ssh之后,下面大部分操作只需在Master主机上配置,然后通过scp将配置好的文件传给Slave即可

4.安装jdk,这里不多说了。Master上安装之后scp给Slave,并且最好在三台主机上将jdk安装在相同的目录下方便后面的配置。

5.安装hadoop

(1).解压到相应位置

(2).在hadoop目录下新建如下目录
sudo mkdir ./dfs
sudo mkdir ./dfs/name
sudo mkdir ./dfs/data
sudo mkdir ./tmp

(3).配置文件,文件位置在HADOOP_HOME/etc/hadooop下面,这里待填具体配置内容
hadoop-env.sh,yarn-env.sh,slaves,core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml

(4).将Master主机上配置好的文件传给Slave
scp -r /opt/hadoop2.7.3 hadoop@Slave1:/opt/

(5). 配置环境变量,编辑/etc/profile
sudo gedit /etc/profile

export@H_404_27@ HADOOP_HOME=/opt/Hadoop/hadoop-2.7@H_404_27@.3@H_404_27@  
export@H_404_27@ PATH=$PATH@H_404_27@:$HADOOP_HOME@H_404_27@/sbin  
export@H_404_27@ PATH=$PATH@H_404_27@:$HADOOP_HOME@H_404_27@/bin
source@H_404_27@ /etc/profile

(6). 测试启动/停止hadoop
hdfs namenode -format
start-hdfs.sh
start-yarn.sh
终端输入jps查看是否启动成功
stop-hdfs.sh
stop-yarn.sh
如果出现datanode启动不成功的问题,有可能是多次format的原因导致/dfs/data和/dfs/name里面id不一样,具体可搜索解决方法

安装scala2.11.8

参考 Spark-2.0.1 安装 及 WordCount (详细图文)这篇博客
scala安装相对简单,解压到相应位置,scp到其他机器,再配置一下/etc/profile文件即可

安装spark

参考 Spark-2.0.1 安装 及 WordCount (详细图文)这篇博客 关于Hadoop配置里的slaves文件和Spark配置里的slaves文件暂时还没有搞清楚

相关文章

1.安装过程出现0x00000000指令引用的0x00000000内存该内存不能为written 如果你安装的是inux系统 需要在...
写在全面:如果根据以下教程涉及到只读文件需要更改文件权限才能需修改文件内容,参考我的另一篇博客:...
写在前面:以下步骤中需要在终端输入命令,电脑端查看博客的朋友可以直接复制粘贴到终端,手机端查看的...
ubuntu16.04和18.04更换国内源 写在前面:安装好ubuntu双系统后,默认的软件更新源是国外的,在国内使用...
ubuntu双系统启动时卡死解决办法(在ubuntu16.04和18.04测试无误) 问题描述: 在安装完ubuntu双系统后...
又来造轮子了。。。。。。。。。。。。。。。。 今天使用w3af向文件中写入的时候,发现没有write权限,...