分析:
1.配置好IP
2.修改主机名
3.做好IP主机映射
4.关闭防火墙
5.配置SSH免密登入
6.安装Java
7.安装Hadoop(完全分布式)
8.安装scala
9.集群配置
软件提取链接:https://pan.baidu.com/s/1oxBcv6xRavVtxmBPzEWHuQ 提取码:1000
[root@localhost ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33
#修改
ONBOOT=yes
BOOTPROTO=static
#添加,网关以当前实际网关为主
IPADDR=192.168.15.100
NETMASK=255.255.255.0
GATEWAY=192.168.15.2
DNS1=114.114.114.114
DNS2=192.168.15.2
[root@localhost ~]#ifconfig
slave1从节点配置IP
[root@localhost ~] # vim /etc/sysconfig/network-scripts/ifcfg-ens33
#修改
ONBOOT=yes
BOOTPROTO=static
#添加,网关以实际网关为主
IPADDR=192.168.15.102
NETMASK=255.255.255.0
GATEWAY=192.168.15.2
DNS1=114.114.114.114
DNS2=192.168.15.2
[root@localhost ~]#ifconfig
slave2从节点配置IP
[root@localhost ~] # vim /etc/sysconfig/network-scripts/ifcfg-ens33
#修改
ONBOOT=yes
BOOTPROTO=static
#添加,网关以实际网关为主
IPADDR=192.168.15.103
NETMASK=255.255.255.0
GATEWAY=192.168.15.2
DNS1=114.114.114.114
DNS2=192.168.15.2
[root@localhost ~]#ifconfig
Master节点:如果使用ifconfig命令能看到inet显示为192.168.17.100即IP配置成功。此处我使用的IP为104请以实际配置为主。
master主节点修改主机名
[root@localhost ~] # vim /etc/sysconfig/network
#删除原有内容,添加如下字段
HOSTNAME=master
[root@master ~] #hostname master
[root@master ~] #exit
slave1从节点修改主机名
[root@localhost ~] # vim /etc/sysconfig/network
#删除原有内容,添加如下字段
HOSTNAME=slave1
[root@master ~] #hostname slave1
[root@master ~] #exit
slave2从节点修改主机名
[root@localhost ~] # vim /etc/sysconfig/network
#删除原有内容,添加如下字段
HOSTNAME=slave2
[root@master ~] #hostname slave2
[root@master ~] #exit
[root@master ~] #vim /etc/hosts
#添加
192.168.15.100 master
192.168.15.102 slave1
192.168.15.103 slave2
[root@slave1 ~] #vim /etc/hosts
#添加
192.168.15.100 master
192.168.15.102 slave1
192.168.15.103 slave2
[root@slave2 ~] #vim /etc/hosts
#添加
192.168.15.100 master
192.168.15.102 slave1
192.168.15.103 slave2
[root@master ~] #systemctl stop firewalld.service
[root@master ~] #systemctl disable firewalld.service
[root@slave1 ~] #systemctl stop firewalld.service
[root@slave1 ~] #systemctl disable firewalld.service
[root@slave2 ~] #systemctl stop firewalld.service
[root@slave2 ~] #systemctl disable firewalld.service
[root@master ~]#cd .ssh
如果显示没有就执行 mkdir .ssh再执行cd .ssh
[root@master .ssh] #ssh-keygen -t rsa
三下回车
[root@master .ssh] #ssh-copy-id master
输入yes,然后输入密码就完成了免密登入
[root@master .ssh] #ssh-copy-id slave1
输入yes,然后输入密码就完成了免密登入
[root@master .ssh] #ssh-copy-id slave2
输入yes,然后输入密码就完成了免密登入
[root@slave1~]#cd .ssh
如果显示没有就执行 mkdir .ssh再执行cd .ssh
[root@slave1 .ssh] #ssh-keygen -t rsa
三下回车
[root@slave1 .ssh] #ssh-copy-id master
输入yes,然后输入密码就完成了免密登入
[root@slave1 .ssh] #ssh-copy-id slave1
输入yes,然后输入密码就完成了免密登入
[root@slave1 .ssh] #ssh-copy-id slave2
输入yes,然后输入密码就完成了免密登入
[root@slave2~]#cd .ssh
如果显示没有就执行 mkdir .ssh再执行cd .ssh
[root@slave2 .ssh] #ssh-keygen -t rsa
三下回车
[root@slave2 .ssh] #ssh-copy-id master
输入yes,然后输入密码就完成了免密登入
[root@slave2 .ssh] #ssh-copy-id slave1
输入yes,然后输入密码就完成了免密登入
[root@slave2 .ssh] #ssh-copy-id slave2
输入yes,然后输入密码就完成了免密登入
https://blog.csdn.net/qq_50835159/article/details/117632199?spm=1001.2014.3001.5501
master节点(Hadoop软件安装包统一发/opt/software)
[root@master software]#tar -zxvf hadoop-2.7.2.tar.gz -C /usr/local/
[root@master software]#cd /usr/local/hadoop-2.7.2
[root@master hadoop-2.7.2]#cd etc/hadoop
配置全局变量
[root@master hadoop]#vim /etc/profile
#将hadoop载入全局变量
export HADOOP_HOME=/usr/local/hadoop-2.7.2
export PATH=$HADOOP_HOME/bin:$PATH
export PATH=$HADOOP_HOME/sbin:$PATH
[root@master hadoop]#source /etc/profile
配置hadoop-env.sh
[root@master hadoop]#vim hadoop-env.sh
# 修改JAVA_HOME,引入JAVA变量
export JAVA_HOME=/usr/local/jdk1.8.0_144
配置core-site.xml
[root@master hadoop]#vim core-site.xml
fs.defaultFS
hdfs://master:9000
hadoop.tmp.dir
/usr/local/hadoop-2.7.2/data/tmp
配置hdfs-site.xml
[root@master hadoop]#vim hdfs-site.xml
dfs.replication
3
dfs.namenode.secondary.http-address
slave2:50090
dfs.namenode.name.dir
/usr/local/hadoop-2.7.2/data/tmp/dfs/name
dfs.datanode.data.dir
/usr/local/hadoop-2.7.2/data/tmp/dfs/data
配置yarn-env.sh
[root@master hadoop]#vim yarn-env.sh
#修改JAVA_HOME,引入JAVA变量
export JAVA_HOME=/usr/local/jdk1.8.0_144
配置yarn-site.xml
[root@master hadoop]#vim yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.resourcemanager.hostname
slave1
配置mapred-env.sh
[root@master hadoop]#vim mapred-env.sh
#修改JAVA_HOME,引入JAVA变量
export JAVA_HOME=/usr/local/jdk1.8.0_144
配置mapred-site.xml
[root@master hadoop]#cp mapred-site.xml.template mapred-site.xml
[root@master hadoop]#vim mapred-site.xml
mapreduce.framework.name
yarn
配置slaves,不能出现多余空行或者空格否则将会出错。
[root@master hadoop]#vim slaves
master
slave1
slave2
分发Hadoop
[root@master hadoop]#cd /usr/local
[root@master local]#scp -r /usr/local/hadoop-2.7.2 root@slave1:/usr/local/
[root@master local]#scp -r /usr/local/hadoop-2.7.2 root@slave2:/usr/local/
配置slave1节点hadoop全局环境变量
[root@slave1 ~]#vim /etc/profile
#将hadoop载入全局变量
export HADOOP_HOME=/usr/local/hadoop-2.7.2
export PATH=$HADOOP_HOME/bin:$PATH
export PATH=$HADOOP_HOME/sbin:$PATH
[root@slave1 ~]#source /etc/profile
配置slave2节点hadoop全局环境变量
[root@slave2 ~]#vim /etc/profile
#将hadoop载入全局变量
export HADOOP_HOME=/usr/local/hadoop-2.7.2
export PATH=$HADOOP_HOME/bin:$PATH
export PATH=$HADOOP_HOME/sbin:$PATH
[root@slave2 ~]#source /etc/profile
master节点:格式化Hadoop
[root@master local]#cd hadoop-2.7.2
[root@master hadoop-2.7.2]#hadoop namenode -format
启动Hadoop-dfs、Hadoop-yarn
[root@master hadoop-2.7.2]#start-all.sh
启动resourcemanager
[root@slave1 ~]#cd /usr/local/hadoop-2.7.2
[root@slave1 hadoop-2.7.2]#yarn-daemon.sh start resourcemanager
查看集群
[root@master ~]#jps
4166 NameNode
4482 Jps
4263 DataNode
4524 NodeManager
[root@slave1 ~]#jps
4389 ResourceManager
3218 DataNode
3288 Jps
3564 NodeManager
[root@slave2 ~]#jps
3221 DataNode
3283 SecondaryNameNode
3514 NodeManager
3364 Jps
关闭hadoop
[root@master ~]#stop-all.sh
[root@master ~]#jps
3288 Jps
[root@slave1 ~]#jps
3364 Jps
[root@slave2 ~]#jps
3543 Jps
https://blog.csdn.net/qq_50835159/article/details/117660529?spm=1001.2014.3001.5501
master节点:(软件安装包统一发/opt/software)
[root@master software]#tar -zxvf spark-3.0.1-bin-hadoop2.7.tgz -C /usr/local/
配置Spark全局变量引入Spark
[root@master software]#vim /etc/profile
export SPARK_HOME=/usr/local/spark-3.0.1-bin-hadoop2.7
export PATH=$SPARK_HOME/bin:$PATH
export PATH=$SPARK_HOME/sbin:$PATH
[root@master software]#source /etc/profile
拷贝spark-env.sh.template为spark-env.sh
[root@master software]#cd /usr/local/spark-3.0.1-bin-hadoop2.7/conf
[root@ master conf]#cp spark-env.sh.template spark-env.sh
配置spark-env.sh
[root@ master conf]#vim spark-env.sh
#添加如下内容
#指定spark主节点,通过主机映射
export SPARK_MASTER_HOST=master
#指定主节点端口
export SPARK_MASTER_PORT=7077
#指定从节点worker并行数量
export SPARK_WORKER_CORES=1
#指定内存大小
export SPARK_WORKER_MEMORY=1G
#指定web访问端口
export SPARK_MASTER_WEBUI_PORT=8080
export SPARK_CONF_DIR=/usr/local/spark-3.0.1-bin-hadoop2.7/conf
export JAVA_HOME=/usr/local/jdk1.8.0_144
拷贝slaves.template为slaves
[root@ master conf]#cp slaves.template slaves
配置slave,不能出现空格空行。
[root@ master conf]#vim slaves
slave1
slave2
分发Spark
[root@ master conf]#cd /usr/local
[root@ master local]#scp -r /usr/local/spark-3.0.1-bin-hadoop2.7 root@slave1:/usr/local/
[root@ master local]#scp -r /usr/local/spark-3.0.1-bin-hadoop2.7 root@slave2:/usr/local/
配置slave1节点spark全局环境变量
[root@slave1 ~]#vim /etc/profile
export SPARK_HOME=/usr/local/spark-3.0.1-bin-hadoop2.7
export PATH=$SPARK_HOME/bin:$PATH
export PATH=$SPARK_HOME/sbin:$PATH
[root@slave1 ~]#source /etc/profile
配置slave2节点spark全局环境变量
[root@slave2 ~]#vim /etc/profile
export SPARK_HOME=/usr/local/spark-3.0.1-bin-hadoop2.7
export PATH=$SPARK_HOME/bin:$PATH
export PATH=$SPARK_HOME/sbin:$PATH
[root@slave2 ~]#source /etc/profile
启动spark在master节点启动
[root@master hadoop-2.7.2]#cd /usr/local/spark-3.0.1-bin-hadoop2.7/sbin/
[root@master sbin]#./start-all.sh
jps查看集群
[root@master sbin]#jps
9955 DataNode
10251 NodeManager
10941 Jps
9855 NameNode
10879 Master
[root@slave1 sbin]#jps
10563 Worker
9764 ResourceManager
9621 DataNode
10618 Jps
9870 NodeManager
[root@slave2 sbin]#jps
10223 Jps
10329 Worker
9739 SecondaryNameNode
9851 NodeManager
9662 DataNode