Hadoop2.7.3+Spark2.1.0完全分布式集群搭建过程 一、修改hosts文件
在主节点,就是第一台主机的命令行下;
vim /etc/hosts
我的是三台云主机:
在原文件的基础上加上;
ip1 master worker0 namenode ip2 worker1 datanode1 ip3 worker2 datanode2
其中的ipN代表一个可用的集群IP,ip1为master的主节点,ip2和iip3为从节点。
二、ssh互信(免密码登录)注意我这里配置的是root用户,所以以下的家目录是/root
如果你配置的是用户是xxxx,那么家目录应该是/home/xxxxx/
#在主节点执行下面的命令:
ssh-keygen -t rsa -P '' #一路回车直到生成公钥
scp /root/.ssh/id_rsa.pub root@worker1:/root/.ssh/id_rsa.pub.master #从master节点拷贝id_rsa.pub到worker主机上,并且改名为id_rsa.pub.master
scp /root/.ssh/id_rsa.pub root@worker1:/root/.ssh/id_rsa.pub.master #同上,以后使用workerN代表worker1和worker2.
scp /etc/hosts root@workerN:/etc/hosts #统一hosts文件,让几个主机能通过host名字来识别彼此
#在对应的主机下执行如下命令:
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys #master主机
cat /root/.ssh/id_rsa.pub.master >> /root/.ssh/authorized_keys #workerN主机
这样master主机就可以无密码登录到其他主机,这样子在运行master上的启动脚本时和使用scp命令时候,就可以不用输入密码了。
三、安装基础环境(Java和SCALA环境) 1.Java1.8环境搭建:配置master的java环境
#下载jdk1.8的rpm包
wget --no-check-certificate --no-cookies --header "Cookie: Oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u112-b15/jdk-8u112-linux-x64.rpm
rpm -ivh jdk-8u112-linux-x64.rpm
#增加JAVA_HOME
vim etc/profile
#增加如下行:
#Java home
export JAVA_HOME=/usr/java/jdk1.8.0_112/
#刷新配置:
source /etc/profile #当然reboot也是可以的
配置workerN主机的java环境
#使用scp命令进行拷贝
scp jdk-8u112-linux-x64.rpm root@workerN:/root
#其他的步骤如master节点配置一样
Master节点:
#下载scala安装包:
wget -O "scala-2.12.2.rpm" "https://downloads.lightbend.com/scala/2.12.1/scala-2.12.2.rpm"
#安装rpm包:
rpm -ivh scala-2.12.2.rpm
#增加SCALA_HOME
vim /etc/profile
#增加如下内容;
#Scala Home
export SCALA_HOME=/usr/share/scala
#刷新配置
source /etc/profile
WorkerN节点;
#使用scp命令进行拷贝 scp scala-2.12.2.rpm root@workerN:/root #其他的步骤如master节点配置一样
四、Hadoop2.7.3完全分布式搭建 MASTER节点: 1.下载二进制包:wget http://www-eu.apache.org/dist/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz
2.解压并移动至相应目录我的习惯是将软件放置/opt目录下:
tar -xvf hadoop-2.7.3.tar.gz mv hadoop-2.7.3 /opt
3.修改相应的配置文件: (1)/etc/profile:增加如下内容:
#hadoop enviroment export HADOOP_HOME=/opt/hadoop-2.7.3/ export PATH="$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH" export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
(2)$HADOOP_HOME/etc/hadoop/hadoop-env.sh修改JAVA_HOME 如下:
export JAVA_HOME=/usr/java/jdk1.8.0_112/
(3)$HADOOP_HOME/etc/hadoop/slavesworker1 worker2
(4)$HADOOP_HOME/etc/hadoop/core-site.xml<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/opt/hadoop-2.7.3/tmp</value> </property> </configuration>
(5)$HADOOP_HOME/etc/hadoop/hdfs-site.xml