注:其中也参考了网上的许多教程,但很多网上的教程在配置过程中,会出很多错误,在解决的过程中,做出了总结。

此文是针对小白。如有不对,请大神们指教。。。。

配置环境系统:Ubuntu16.04

配置版本分别为:hadooop 2.7.3、java "1.7.0_79"、Scala2.11.6、spark-2.0.1-bin-hadoop2.7

本实验主要配置三个节点的小集群:

配置节点分为一个master、两个worker

接下来开始一步一步进行配置

(一)基础配置

master节点

#首先更改主机名与并添加三个节点到/etc/hosts中

kuku@kuku-virtual-machine:~$ sudo su
[sudo] password for kuku: 
root@kuku-virtual-machine:/home/kuku# vim /etc/hostname

#删除/etc/hostname中的文件,并添加

master
root@kuku-virtual-machine:/home/kuku# vim /etc/hostname

#添加以下内容 ,下列ip分别对应三个节点的ip,看自己ip 进行更改。

#master
192.168.1.41 master
#worker
192.168.1.42 worker1

192.168.1.55 worker2

worker1节点

#首先更改主机名与并添加三个节点到/etc/hosts中

kuku@kuku-virtual-machine:~$ sudo su
[sudo] password for kuku: 
root@kuku-virtual-machine:/home/kuku# vim /etc/hostname

#删除/etc/hostname中的文件,并添加

worker1
root@kuku-virtual-machine:/home/kuku# vim /etc/hostname

#添加以下内容 ,下列ip分别对应三个节点的ip,看自己ip 进行更改

#master
192.168.1.41 master
#worker
192.168.1.42 worker1

192.168.1.55 worker2

worker2节点

#首先更改主机名与并添加三个节点到/etc/hosts中

kuku@kuku-virtual-machine:~$ sudo su
[sudo] password for kuku: 
root@kuku-virtual-machine:/home/kuku# vim /etc/hostname

#删除/etc/hostname中的文件,并添加

worker2
root@kuku-virtual-machine:/home/kuku# vim /etc/hostname

#添加以下内容 ,下列ip分别对应三个节点的ip,看自己ip 进行更改

#master
192.168.1.41 master
#worker
192.168.1.42 worker1

192.168.1.55 worker2


#分别重启机器,使刚才配置生效

kuku@master:~$ sudo su
[sudo] password for kuku: 
root@master:/home/kuku#

#分别在三个节点上面创建hadoop组与spark用户

root@master:/home/kuku# groupadd hadoop
root@master:/home/kuku# useradd -s /bin/bash -d /home/spark -m spark -g hadoop -G root 
#创建spark用户,属于hadoop组
root@worker2:/home/kuku# passwd spark 
#为用户spark 创建密码
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
root@master:/home/kuku# cd ..
root@master:/home# ll
total 16
drwxr-xr-x  4 root  root   4096 11月 15 15:14 ./
drwxr-xr-x 24 root  root   4096 11月 14 09:06 ../
drwxr-xr-x 19 kuku  kuku   4096 11月 14 15:01 kuku/
drwxr-xr-x  5 spark hadoop 4096 11月 16 13:14 spark/

#可以看到spark用户是属于hadoop组,在此一定要注意,本人在里面踩了不少坑,因为这将在后面涉及到权限所属问题