小标
2019-01-07
来源 :
阅读 1119
评论 0
摘要:本文主要向大家介绍了【云计算】大数据Hadoop系列之Hadoop分布式集群部署教程,通过具体的内容向大家展现,希望对大家学习云计算有所帮助。
本文主要向大家介绍了【云计算】大数据Hadoop系列之Hadoop分布式集群部署教程,通过具体的内容向大家展现,希望对大家学习云计算有所帮助。
一、部署规划
1、部署环境
各部署单元的软件部署情况如下:
主机名 | IP地址 | 应用名称 | 版本 | 备注 |
master60 | 192.168.9.60 | Namenode | hadoop2.7.3 | 主节点 |
ResourceManager | ||||
SecondaryNameNode | ||||
slave61 | 192.168.9.61 | DataNode | hadoop2.7.3 | 数据节点 |
NodeManager | ||||
slave62 | 192.168.9.62 | JobHistoryServer | hadoop2.7.3 | 数据节点 历史服务器 |
NodeManager | ||||
DataNode | ||||
slave63 | 192.168.9.63 | NodeManager | hadoop2.7.3 | 数据节点 |
DataNode |
二、环境准备
1、修改主机名
[root@VM1 ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master60
[root@VM2 ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=slave61
[root@VM3 ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=slave62
[root@VM4 ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=slave63
2、配置网络映射
所有主机执行
# vim /etc/hosts
192.168.9.60 master60
192.168.9.61 slave61
192.168.9.62 slave62
192.168.9.63 slave63
3、关闭防火墙
所有主机执行
# service iptables stop && chkconfig iptables off && chkconfig --list | grep iptables
4、禁用selinux
所有主机执行
# vi /etc/selinux/config
SELINUX=disabled
5、禁用IPv6
所有主机执行
# echo " " >> /etc/modprobe.d/dist.conf
# echo "alias net-pf-10 off" >> /etc/modprobe.d/dist.conf
# echo "alias ipv6 off" >> /etc/modprobe.d/dist.conf
6、重启
所有主机执行
# reboot
7、配置ssh无秘钥登录
主机master60上执行
7.1、生产公钥和私钥
# ssh-keygen
7.2、拷贝公钥给目标服务器
# ssh-copy-id -i master60
# ssh-copy-id -i slave61
# ssh-copy-id -i slave62
# ssh-copy-id -i slave63
8、集群时间同步
8.1、启动ntpd服务
所有主机执行
# service ntpd start && chkconfig ntpd on && chkconfig --list | grep ntpd
8.2、更新时间
主机master60上执行
# ntpdate -u ntp.sjtu.edu.cn
8.3、将系统时间同步给本机硬件时间
主机master60上执行
# hwclock --localtime
# hwclock --localtime -w
8.4、硬件时间自动同步给系统时间
主机master60上执行
# vi /etc/sysconfig/ntpd
SYNC_HWCLOCK=yes
8.5、系统时间自动更新硬件时间
主机master60上执行
# vi /etc/sysconfig/ntpdate
SYNC_HWCLOCK=yes
8.6、时间进行更新并同步至集群其它主机
主机master60上执行
# ntpdate -u slave61
# ntpdate -u slave62
# ntpdate -u slave63
8.7、重启ntpd服务
所有主机执行
# service ntpd restart && service crond restart
9、设置用户的可打开最大文件数及进程数
所有主机执行
# vi /etc/security/limits.conf
# soft 软指标 ,给警告
# hard 硬指标 ,直接停止
* soft nofile 32728
* hard nofile 1024567
* soft nproc 65535
* hard nproc unlimited
* soft memlock unlimited
* hard memlock unlimited
10、创建一个Hadoop专用的普通用户
所有主机执行
10.1、创建hadoop用户并修改密码
# useradd hadoop
# passwd hadoop
10.2、创建hadoop组,并将hadoop用户加入hadoop组
# groupadd hadoop
# usermod -a -G hadoop hadoop
10.3、创建工作目录
# mkdir /apps && cd /apps && mkdir lib logs run sh sharedstorage svr
# chown -R hadoop:hadoop /apps/*
###################### 后续操作转hadoop用户 ######################
三、Hadoop集群部署
1、JDK安装
Java官网://www.oracle.com/technetwork/java/javase/overview/index.html上下载JDK1.8的Linux安装程序,并上传到服务器; 本平台采用JDK8U172的版本,jdk-8u172-linux-x64.tar.gz; 下载链接://download.oracle.com/otn-pub/java/jdk/8u172-b11/a58eab1ec242421181065cdc37240b08/jdk-8u172-linux-x64.tar.gzAuthParam=1526031622_e7d7b8c755b98e2dd9545d5a1b5bf17a。
1.1、创建JDK工作目录
所有主机执行
$ mkdir -p /apps/svr/java/
1.2、上传解压JDK软件并拷贝至集群其它主机
主机master60上执行
$ tar -zxvf ~/jdk-8u172-linux-x64.tar.gz -C /apps/svr/java/
$ scp -r /apps/svr/java/jdk1.8.0_172/ slave61:/apps/svr/java/
$ scp -r /apps/svr/java/jdk1.8.0_172/ slave62:/apps/svr/java/
$ scp -r /apps/svr/java/jdk1.8.0_172/ slave63:/apps/svr/java/
1.3、配置JDK环境变量
所有主机执行
$ vim ~/.bash_profile
# JAVA_HOME
export JAVA_HOME=/apps/svr/java/jdk1.8.0_172
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$PATH:$JAVA_HOME/bin
1.4、立即生效
所有主机执行
$ source ~/.bash_profile
2、部署Hadoop
Hadoop官网://archive.apache.org/dist/hadoop上下载hadoop2.x的Linux安装程序,并上传到服务器; 本平台采用hadoop-2.7.3的版本,hadoop-2.7.3.tar.gz; 下载链接://archive.apache.org/dist/hadoop/core/hadoop-2.7.3/hadoop-2.7.3.tar.gz。
2.1、部署准备
主机master60上执行
a、创建hadoop工作目录,上传解压hadoop软件
$ mkdir -p /apps/svr/hadoop/
$ cd /apps/svr/hadoop/ && mkdir conf data1 data2 lib logs run
$ mkdir -p /apps/svr/hadoop/data1/dfs/dn /apps/svr/hadoop/data2/dfs/dn /apps/svr/hadoop/data1/dfs/nn /apps/svr/hadoop/data2/dfs/nn
$ tar -zxvf ~/hadoop-2.7.3.tar.gz -C /apps/svr/hadoop/
b、配置hadoop-env.sh
$ vim /apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/apps/svr/java/jdk1.8.0_172/
2.2、部署HDFS
主机master60上执行
a. 配置core-site.xml
$ vim /apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/core-site.xml
fs.defaultFS
hdfs://master60:9000
hadoop.tmp.dir
/apps/svr/hadoop/run/
hadoop.proxyuser.hadoop.hosts
*
hadoop.proxyuser.hadoop.groups
*
b. 配置hdfs-site.xml
$ vim /apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/hdfs-site.xml
dfs.datanode.data.dir
/apps/svr/hadoop/data1/dfs/dn,/apps/svr/hadoop/data2/dfs/dn
dfs.namenode.name.dir
/apps/svr/hadoop/data1/dfs/nn,/apps/svr/hadoop/data2/dfs/nn
dfs.replication
3
dfs.permissions
true
c. 配置slaves,设置DataNode运行的主机
$ vim /apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/slaves
slave61
slave62
slave63
2.3、部署YARN
主机master60上执行
a. 配置yarn-site.xml
$ vim /apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/yarn-site.xml
yarn.resourcemanager.address
master60:8032
yarn.resourcemanager.scheduler.address
master60:8030
yarn.resourcemanager.resource-tracker.address
master60:8031
yarn.resourcemanager.admin.address
master60:8033
yarn.resourcemanager.webapp.address
master60:8038
yarn.nodemanager.aux-services
mapreduce_shuffle
b. 配置mapred-site.xml
$ vim /apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/mapred-site.xml
mapreduce.framework.name
yarn
2.4、拷贝hadoop
主机master60上执行
$ scp -r /apps/svr/hadoop/ slave61:/apps/svr/
$ scp -r /apps/svr/hadoop/ slave62:/apps/svr/
$ scp -r /apps/svr/hadoop/ slave63:/apps/svr/
2.5、配置hadoop环境变量
所有主机执行
$ vim ~/.bash_profile
# HADOOP_HOME
export HADOOP_HOME=/apps/svr/hadoop/hadoop-2.7.3
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$HADOOP_HOME/share/hadoop/tools/lib/*
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
立即生效
$ source ~/.bash_profile
2.6、启动测试hadoop
主机master60上执行
a. 格式化
$ hadoop namenode -format
b. 启动
$ start-dfs.sh
$ start-yarn.sh
c. 检查启动结果
$ yarn node -list
d. WEB UI验证
HDFS ://192.168.9.60:50070
YARN ://192.168.9.60:8038
2.7、历史服务器(88主机)
主机master62上执行
a. 配置mapred-site.xml
$ cd /apps/svr/hadoop/hadoop-2.7.3/etc/hadoop/
$ vim mapred-site.xml
mapreduce.framework.name
yarn
mapreduce.jobhistory.address
192.168.9.62:10020
mapreduce.jobhistory.webapp.address
192.168.9.62:19888
mapreduce.jobhistory.done-dir
${yarn.app.mapreduce.am.staging-dir}/history/done
mapreduce.jobhistory.intermediate-done-dir
${yarn.app.mapreduce.am.staging-dir}/history/done_intermediate
yarn.app.mapreduce.am.staging-dir
/tmp/hadoop-yarn/staging
b. 启动历史服务器
$ mr-jobhistory-daemon.sh start historyserver
C. WEB UI验证
JobHistory ://192.168.9.62:19888
本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标大数据云计算大数据安全频道!
喜欢 | 0
不喜欢 | 0
您输入的评论内容中包含违禁敏感词
我知道了

请输入正确的手机号码
请输入正确的验证码
您今天的短信下发次数太多了,明天再试试吧!
我们会在第一时间安排职业规划师联系您!
您也可以联系我们的职业规划师咨询:
版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
沪公网安备 31011502005948号