Hadoop 完全分布式安装配置

Hadoop 完全分布式

jdk下载
链接:https://pan.baidu.com/s/18E0l-uTdZyrIvcqn7TCttw
提取码:bb63

hadoop下载
链接:https://pan.baidu.com/s/18ZG-_g7BmcFws1VgoxFJ8g
提取码:t4p9

集群规划
hadoop2hadoop3hadoop4
HDFSNameNode DataNodeDataNodeSecondaryNameNode DataNode
YARNNodeManagerResourceManager NodeManagerNodeManager
IP192.168.197.120192.168.197.130192.168.197.140

集群准备

准备3台客户机(关闭防火墙、静态ip,主机映射、主机名称),主机名称分别hadoop2,hadoop3,hadoop4

主机名称分别修改:

hostnamectl set-hostname hadoop2
hostnamectl set-hostname hadoop3
hostnamectl set-hostname hadoop4

配置静态ip分别配置,只需要改变ip地址,以hadoop2为例

vi /etc/sysconfig/network-scripts/ifcfg-ens33
-----------------------------------------------------
修改1   BOOTPROTO="static"
修改2   ONBOOT="yes"
追加如下内容(IP地址,子网掩码,网关,DNS):
IPADDR="192.168.197.120"  
NETMASK="255.255.255.0"
GATEWAY="192.168.197.2"
DNS1="114.114.114.114"
DNS2="8.8.8.8"

配置完ip,重启网络服务

systemctl restart network

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

主机映射(三个ip都要添加进去):

vi /etc/hosts
-----------------------------------------------------
192.168.197.120 hadoop2
192.168.197.130 hadoop3
192.168.197.140 hadoop4

将压缩包上传到Linux的/opt目录下,创建soft文件夹用于存储安装文件
安装jdk和hadoop,配置环境变量

#解压
mkdir soft
tar zxf jdk-8u171-linux-x64.tar.gz -C /opt/soft/jdk180
tar -zxf hadoop-2.6.0-cdh5.14.2.tar.gz -C /opt/soft/hadoop260
#配置环境变量
vi /etc/profile
#JAVA
export JAVA_HOME=/opt/soft/jdk180
export PATH=$JAVA_HOME/bin:$PATH
#HADOOP
export HADOOP_HOME=/opt/soft/hadoop260
export PATH=$HADOOP_HOME/bin:$PATH

#刷新环境变量  
source /etc/profile
#验证  
java -version
能显示JDK版本信息:
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
配置ssh,免密登陆

(三台客户端各自进行如下操作)

ssh-keygen
#3次回车,生成公私钥
#进入 .ssh文件夹,查看公私钥
cd .ssh
ls
-----------------------------------------------------------------------
authorized_keys  id_rsa  id_rsa.pub  known_hosts

#拷贝密钥
ssh-copy-id hadoop2
ssh-copy-id hadoop3
ssh-copy-id hadoop4
#免密访问(第一次需要输入密码)
ssh hadoop2
ssh hadoop3
ssh hadoop4
exit 退出登录
修改配置文件

在【hadoop2】上进行如下7个操作

进入hadoop配置文件目录 /opt/soft/hadoop260/etc/hadoop
修改1

vi hadoop-env.sh
--------------------------------------------
export JAVA_HOME=/opt/soft/jdk180   #此处为jdk安装目录

修改2 namenode 在 hadoop2上

vi core-site.xml
----------------------------------------------------
	<!-- 指定HDFS中NameNode的地址 -->
	<property>
		<name>fs.defaultFS</name>
        <value>hdfs://192.168.197.120:9000</value>
	</property>

	<!-- 指定hadoop运行时产生文件的存储目录 -->
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/opt/soft/hadoop260/data/tmp</value>
	</property>

修改3 secondarynamenode 在hadoop4上

vi hdfs-site.xml
--------------------------------------------------------------------
	<property>
		<name>dfs.replication</name>
		<value>3</value>
	</property>
	
	<property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>192.168.197.140:50090</value> 
    </property>

修改4 JAVA_HOME修改

yarn-env.sh
-----------------------------
export JAVA_HOME=/opt/soft/jdk180

修改5 resourcemanager在hadoop3上

yarn-site.xml
--------------------------------------------------------------
	<!-- reducer获取数据的方式 -->
	<property>
		 <name>yarn.nodemanager.aux-services</name>
		 <value>mapreduce_shuffle</value>
	</property>

	<!-- 指定YARN的ResourceManager的地址 -->
	<property>
		<name>yarn.resourcemanager.hostname</name>
		<value>192.168.197.130</value>
	</property>

修改6

cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
--------------------------------------------------
	<!-- 指定mr运行在yarn上 -->
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>

修改7 slaves中删除loaclhost

vi slaves
------------------------------
hadoop2
hadoop3
hadoop4

集群分发配置文件,hadoop3和hadoop4中hadoop的配置和hadoop2一样。
scp命令将hadoop2上hadoop260中所有文件远程拷贝到hadoop3和hadoop4对应的文件中。

scp -r /opt/soft/hadoop260 root@hadoop3:$PWD

scp -r /opt/soft/hadoop260 root@hadoop3:$PWD
启动集群

格式化HDFS

hdfs namenode -format

启动HDFS【hadoop2】,进入hadoop安装目录,输入如下命令

sbin/start-dfs.sh

在这里插入图片描述

启动Yarn【hadoop3】,进入hadoop安装目录,输入如下命令

sbin/start-yarn.sh

在这里插入图片描述
jps和web页面查看【50070 和 8088端口】

hadoop2:NN,NM,DN
hadoop3:NM,RM,DN
hadoop4:NM,DN
在这里插入图片描述访问192.168.197.120:50070,NameNode存储地址
在这里插入图片描述访问192.168.197.130:8088,Yarn的ResourceManager地址
在这里插入图片描述

时间同步

安装ntp【hadoop2】

rpm -qa|grep ntp
yum -y install ntp

vi /etc/ntp.conf
-----------------------
# 修改1(设置本地网络上的主机不受限制。)
#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap为
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
# 修改2(设置为不采用公共的服务器)
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst为
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
# 添加3(添加默认的一个内部时钟数据,使用它为局域网用户提供服务。)
server 127.127.1.0
fudge 127.127.1.0 stratum 10

修改/etc/sysconfig/ntpd

vim /etc/sysconfig/ntpd
-----------------------
# 增加内容如下(让硬件时间与系统时间一起同步)
SYNC_HWCLOCK=yes

重新启动ntpd

service ntpd status
service ntpd start
chkconfig ntpd on

hadoop3和hadoop4上同步时间到hadoop2

crontab -e
----------------
*/10 * * * * /usr/sbin/ntpdate hadoop2

crontab机制如下:

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值