栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

第四届大数据竞赛-线上选拔赛 -----Hadoop集群配置

第四届大数据竞赛-线上选拔赛 -----Hadoop集群配置

这个比赛我负责集群配置方向

集群配置如下:

masterslave1slave2
ip地址192.168.1.10192.168.1.11192.168.1.12
系统centos7.2centos7.2centos7.2

一、基础环境

1.修改主机名

master(192.168.1.10)上执行:

 hostnamectl  set-hostname master

slave1(192.168.1.11)上执行:

hostnamectl set-hostname slave1

slave2(192.168.1.12)上执行:

hostnamectl set-hostname slave2

2.关闭防火墙:

在三台机子上都执行(暂时关闭):

systemctl  stop firewalld.service

systemctl disable firewalld.service(永久关闭)————>看情况使用这个命令

3.配置主机名:

在三台机子上执行:

vi /etc/hosts

然后按o换行进入编辑模式输入:
 

        192.168.1.10 master

        192.168.1.11 slave1

        192.168.1.12 slave2

输入完之后摁esc键推出编辑模式,然后摁shift+;键输入wq推出即可。

如下图所示:

 4.将时区更改为东八区(中国北京):

在三台机子上执行:

vi /etc/profile

在文件末尾输入:

TZ='Asia/Shanghai'; export TZ

退出/etc/profile文件后:
 

source /etc/profile

出现如下信息即可:

 5.安装并配置ntp服务:

在三台机子上执行:

yum -y install ntp

在master上执行:
 

vi /etc/ntp.conf

在文件中注释所有server开头的文件:

在文件末端加上如下代码:

server 127.127.1.0
fudge 127.127.1.0 stratum 10

 然后退出配置文件重启ntp服务:

systemctl restart ntpd

在slave1、slave2上执行:

ntpdate master

出现如下则成功

 6.创建一个定时任务(从节点在早十-晚五时间段内每隔半个小时同步一次主节点时间)

在slave1、slave2上执行:

写定时任务:

crontab -e

在文件中输入:

*/30 10-17 * * * /usr/sbin/ntpdate master

7.远程免密登入

在master上执行:

ssh slave1

输入yes,然后输入slave1密码。 这一步是要生成.ssh/目录

cd /~/.ssh/
ssh-keygen -t rsa

 然后摁三次回车

然后在依次输入命令:

ssh-copy-id master
ssh-copy-id slave1
ssh-copy-id slave2

 8.安装jdk软件包

在master上执行:

1.创建文件夹:

mkdir -p /usr/java

2.解压压缩包(注意压缩包所处的路径)

 tar -zxvf /opt/software/jdk-8u141-linux-x64.tar.gz -C /usr/java/

3.修改/etc/profile文件:

vi /etc/profile

在文件末尾追加上

export JAVA_HOME=/usr/java/jdk1.8.0_141
export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

退出文件后:

source /etc/profile

然后分发文件到slave1,slave2机子上:

scp -r /usr/java/  slave1:/usr/
scp -r /usr/java/  slave2:/usr/
scp -r /etc/profile slave1:/etc/
scp -r /etc/profile slave2:/etc/

在slave1、slave2上执行:

source /etc/profile

 二、Hadoop集群安装

在master上操作:

1.安装Hadoop安装包

mkdir -p /usr/hadoop

 tar -zxvf /opt/software/hadoop-2.7.2.tar.gz -C /usr/hadoop/

2.配置hadoop运行环境

vi /etc/profile


在文件末端输入如下内容:
export HADOOP_HOME=/usr/hadoop/hadoop-2.7.2/
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

退出文件后:
source /etc/profile

3.配置全局参数:

 cd /usr/hadoop/hadoop-2.7.2/etc/hadoop/
进入到目录后:
vi hadoop-env.sh

找到如下图:

 修改为:

export JAVA_HOME=/usr/java/jdk1.8.0_141

然后修改全局文件:

vi core-site.xml


然后在中间加入以下配置文件:

  fs.default.name
   hdfs://master:9000


  hadoop.tmp.dir
   /root/Hadoop_Data/tmp


  io.file.buffer.size
   131072


  fs.checkpoint.period
   60


  fs.checkpoint.size
   67108864

 

4.配置hdfs参数:

在master上执行:

vi hdfs-site.xml


然后在中间加入以下配置文件:

 dfs.replication
   2
 
 
   dfs.namenode.name.dir
   /root/Hadoop_Data/name
   true
 
  
    dfs.datanode.data.dir
    /root/Hadoop_Data/data
    true
 
 
  dfs.namenode.secondary.http-address
   master:9001
 
 
   dfs.webhdfs.enabled
    true
 
 
   dfs.permissions
   false


dfs.datanode.use.datanode.hostname
true 

5.配置mapreduce参数:

cp mapred-site.xml.template mapred-site.xml

vi mapred-site.xml


然后在中间加入以下配置文件:

   mapreduce.framework.name
   yarn

6.配置yarn框架运行环境:

vi yarn-env.sh


然后在文件末尾输入:
export JAVA_HOME=/usr/java/jdk1.8.0_141
配置集群资源管理参数:
vi yarn-site.xml


然后在中间加入以下配置文件:

 yarn.resourcemanager.address
   master:18040


  yarn.resourcemanager.scheduler.address  master:18030


  yarn.resourcemanager.webapp.address
  master:18088


  yarn.resourcemanager.resource-tracker.address
  master:18025


 yarn.resourcemanager.admin.address
 master:18141


 yarn.resourcemanager.aux-services
 mapreduce_shuffle


 yarn.nodemanager.auxservices.mapreduce.shuffle.class
 org.apache.hadoop.mapred.shuffleHandler


 yarn.nodemanager.aux-services
 mapreduce_shuffle

6.指定主节点和从节点,写入对应文件

在master上执行:

vi master

在文件写入:
master

退出master文件后:

vi slave

将文件写成为:
Slave1 
Slave2 
7.格式化集群,开启集群,查看 节点进程及集群状态 在master执行:
首先要分发文件:
scp -r /usr/hadoop slave1:/usr/ 
scp -r /usr/hadoop slave2:/usr/ 

scp -r /etc/profile slave1:/etc
scp -r /etc/profile slave2:/etc

在slave1、slave2上执行:

source /etc/profile

在master上执行:

hadoop namenode -format

出现0则表述初始化成功,如下图:

在master上启动集群:

start-all.sh 

出现如下进程则显示正确:

三、Zookeeper 搭建

 在master上执行:

1.安装 Zookeeper 软件包

mkdir -p /usr/zookeeper

tar -zxvf zookeeper-3.4.9.tar.gz -C /usr/zookeeper/

cd /usr/zookeeper/zookeeper-3.4.9/conf

2.修改配置文件

 在master上执行:

vi /etc/profile

在文件末端追加:
export ZOOKEEPER_HOME=/usr/zookeeper/zookeeper-3.4.9/
export PATH=$PATH:$ZOOKEEPER_HOME/bin


退出文件后:
source /etc/profile

修改zookeeper配置文件:

cp zoo_sample.cfg  zoo.cfg

mkdir /usr/zookeeper/zookeeper-3.4.9/zkdata

mkdir /usr/zookeeper/zookeeper-3.4.9/zkdatalog

vi zoo.cfg

然后找到如图所示的位置:

 修改成为如下图:

 代码如下:

dataDir=/usr/zookeeper/zookeeper-3.4.9/zkdata
dataLogDir=/usr/zookeeper/zookeeper-3.4.9/zkdatalog
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

保存退出文件后;

cd /usr/zookeeper/zookeeper-3.4.9/zkdata

分发文件:
scp -r /usr/zookeeper slave1:/usr/ 
scp -r /usr/zookeeper slave2:/usr/
scp -r /etc/profile slave1:/etc/
scp -r /etc/profile slave2:/etc/

echo 1 >> myid

在slave1上执行:

source /etc/profile

echo 2 >> /usr/zookeeper/zookeeper-3.4.9/zkdata/myid

在slave2上执行:

source /etc/profile

echo 3 >> /usr/zookeeper/zookeeper-3.4.9/zkdata/myid

在三台机子上执行

zkServer.sh start

zookeeper关系如下图所示:

masterslave1slave2
follower

leader

follower

具体情况如下图:

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/581430.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号