大数据平台搭建合集–全分布式平台部署
0.更改主机名
依据理论需要做更改即可!
# 新建的虚拟机,能够更改为与文档中雷同的主机名
$ hostnamectl set-hostname master
$ hostnamectl set-hostname slave1
$ hostnamectl set-hostname slave2
# 如果须要更改网卡的配置,只需须要做如下批改(在本文档中是应用的dhcp获取的ip,所以未做批改)
# 如果在虚拟机中,对应的ip、子网掩码、网关等信息能够虚构网络编辑器中查看(留神网关的配置要在"虚构网络编辑器"中的"更改设置"里的"Nat设置里查看")
$ vi /etc/sysconfig/network-scripts/ifcfg-ens33
# 批改如下配置项
BOOTPROTO="static"
# 增加如下配置项
IPADDR=192.168.73.100
NETMASK=255.255.255.0
GATEWAY=192.168.73.2
DNS1=8.8.8.8
1.ssh免密登录
(1),生成秘钥(群发)
ssh-keygen
在输出命令之后,会提醒你抉择公钥明码、存储地位等
如无非凡需要,比方公钥明码、存储地位等。这里能够间接回车下一步
秘钥即胜利生成在"~/.ssh/"文件夹内
(2),配置hosts
每一台机器都须要配置!
# 关上配置文件目录,
vi /etc/hosts
# 依据ip信息批改为以下内容
192.168.204.152 master
192.168.204.153 master2
192.168.204.154 slave
# 在每台服务器中都要配置hosts,所以在每台服务器中都执行
(3),采纳追加的形式增加公钥(群发)
每一台机器都须要操作
# 第一台主机:
ssh-copy-id master
yes
000000(输出设置的明码)
# 第二台主机:
ssh-copy-id slave1
yes
000000(输出设置的明码)
# 第三台主机(在此时留神一点的是,这里做输出的时候其余两台主机依然是第一次连贯所以须要先选中yes,在输出明码):
ssh-copy-id slave2
yes
000000(输出设置的明码)
2.敞开防火墙与SeLinux(群发)
# 敞开防火墙:
systemctl stop firewalld
# 设置开机禁用防火墙:
systemctl disable firewalld.service
# 查看防火墙状态:
systemctl status firewalld
# 敞开SeLinux
# 只是临时敞开
setenforce 0
# 通过改配置文件的形式敞开
vim /etc/selinux/config
# 批改配置项
SELINUX=disabled
3.jdk的装置与配置
(1).解压jdk组件
# 进入soft目录下解压jdk
cd ~
tar -zxvf jdk-8u77-linux-x64.tar.gz -C /usr/local/
# 批改文件名减少辨识度
cd /usr/local
mv jdk1.8.0_77 jdk
(2).配置环境变量
# 在相应配置文件中追加以下内容
vi /etc/profile
export JAVA_HOME=/usr/local/jdk
export PATH=$PATH:$JAVA_HOME/bin
# 设置以后环境变量立刻失效
source /etc/profile
(3).将jdk与环境变量同步到其余两台服务器
$ scp -r /usr/local/jdk/ root@slave1:/usr/local
$ scp /etc/profile root@slave1:/etc/
#
$ scp -r /usr/local/jdk root@slave2:/usr/local
$ scp /etc/profile root@slave2:/etc/
# 在同步文件之后,须要更新配置文件
$ source /etc/profile
4.Hadoop装置与配置
(1).解压Hadoop组件
# 将组件上传至soft目录
cd ~
tar -zxvf hadoop-2.7.1.tar.gz -C /usr/local/
# 更改名称减少辨识度
cd /usr/local
mv hadoop-2.7.1 hadoop
(2).批改相应配置文件
# 进入配置文件目录
cd /usr/local/hadoop/etc/hadoop/
1),配置core-site.xml
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<!-- 这里的目录会主动生成-->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-repo/tmp</value>
</property>
<!--kkb新增 -->
<!-- 缓冲区大小,理论工作中依据服务器性能动静调整 -->
<property>
<name>io.file.buffer.size</name>
<value>4096</value>
</property>
<!-- 开启hdfs的垃圾桶机制,删除掉的数据能够从垃圾桶中回收,单位分钟 -->
<property>
<name>fs.trash.interval</name>
<value>10080</value>
</property>
</configuration>
2),配置hdfs-site.xml
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<property>
<name>dfs.namenode.rpc-address</name>
<value>master:9000</value>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>master:50070</value>
</property>
<!--配置启动SecondaryNameNode的地位,在不明确指定时默认是在主节点启动,个别我认为须要在另一台主节点中启动 -->
<property>
<name>dfs.namenode.secondary.rpc-address</name>
<value>slave1:9000</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>slave1:50070</value>
</property>
<!-- 配置nameNode和DataNode存储元数据的门路-->
<property>
<name>dfs.namenode.name.dir</name>
<value>/opt/hadoop-repo/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/opt/hadoop-repo/data</value>
</property>
</configuration>
3),配置marped-site.xml
# 阐明:零碎中提供的是一个模版文件,须要先复制成marped-site.xml文件,再进行批改
[root@localhost hadoop]# cp mapred-site.xml.template mapred-site.xml
# 关上配置文件s
vi mapred-site.xml
<!-- 指定mr框架为yarn -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
4),配置yarn-site.xml
<!--配置你想在哪个节点起ResourceManager -->
<property>
<name>yarn.resourcemanager.address</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<!-- 开启日志聚合的性能-->
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
5),配置hadoop-env.sh
export JAVA_HOME=/usr/local/jdk
6),配置slaves
指定DataNode节点(hostname)
[root@master ~]# vim /usr/hadoop/hadoop-2.7.3/etc/hadoop/slaves
# 删除本来的localhost,增加以下内容
master
slave1
slave2
(3),配置环境变量
# 批改配置文件
vi /etc/profile
# 追加以下内容
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
# 更新配置文件
source /etc/profile
(4),同步Hadoop与配置文件复制到其余节点
# 在master节点配置之后,须要同步到其余两台服务器中
[root@master /]# cd /usr/hadoop/
[root@master hadoop]# scp -r /usr/local/hadoop root@slvae1:/usr/local/
[root@master hadoop]# scp /etc/profile root@slave1:/etc/
[root@master hadoop]# scp -r /usr/local/hadoop root@slave2:/usr/local/
[root@master hadoop]# scp /etc/profile root@slave2:/etc/
# 同步完配置文件之后须要更新配置文件
source /etc/profile
6.集群启动
(1).格式化HDFS
# 1.在master上格式化namenode:
hdfs namenode -format
(2).启动hdfs
# 在master1上执行:
start-dfs.sh
(3).启动Yarn
# 1.在master1上执行:
start-yarn.sh
(4).启动JobHistoryServer
# 在每台主机上都执行以下命令
mr-jobhistory-daemon.sh start historyserver
8.过程验证
[root@master opt]# jps
14310 NameNode
15046 NodeManager
15159 Jps
14587 DataNode
14416 ResourceManager
14556 JobHistoryServer
[root@slave1 ~]# jps
14501 SecondaryNameNode
14699 Jps
14588 NodeManager
14415 DataNode
14536 JobHistoryServer
[root@slave2 ~]# jps
13120 NodeManager
13218 Jps
13016 DataNode
14559 JobHistoryServer
发表回复