Hadoop完全分布式集群配置全流程

写在前面

本文采用的方法是先配置好单台机器,然后克隆,只需要修改克隆机器的mac、ip、hostname就可以完成完全分布式集群的搭建。
slave文件控制datanode节点的位置。本文将resourcemanager节点放在Aslave102,secondnamenode放在Aslave103节点。原因是resourcemanager消耗大量内存,secondnamenode可以做到namenode的备份。

1.虚拟机准备

为虚拟机准备了,20GB内存。400G硬盘。Centos6.10操作系统

在这里插入图片描述

2.修改mac地址、ip地址、主机名称

(1)查看ip
		[root@Aslave101 /]# ifconfig
(2)修改mac
		[root@Aslave101 /]#vim /etc/udev/rules.d/70-persistent-net.rules

在这里插入图片描述

(3)修改ip地址为静态ip
		[root@Aslave101 /]#vim /etc/sysconfig/network-scripts/ifcfg-eth0

修改前:
在这里插入图片描述
修改后:
在这里插入图片描述

(4)重启网络
		[root@Aslave101 /]#service network restart

在这里插入图片描述
注意ifconfig查看是否修改成功

(5)配置主机名称
		[root@Aslave101 /]# vi /etc/sysconfig/network
		修改HOSTNAME= Aslave101
(6)打开/etc/hosts
		[root@Aslave101 /]# vim /etc/hosts
		添加如下内容
		192.168.11.102 hadoop102        (指定ip对应的名称,建议多添加一些,方便扩充节点)

并重启设备,重启后,查看主机名,已经修改成功

(7)关闭防火墙
		[root@Aslave101 /]chkconfig iptables off
	查看状态
		[root@Aslave101 /]service iptables status

3.配置jdk和hadoop 环境变量(注意,jdk和hadoop的文件所有者是Hadoop

(1)使用hadoop用户,在根目录的/opt目录下创建module(安装位置)、和software(压缩包位置)目录。目录的所有者是hadoop。
(2)查询是否安装java软件:
		rpm –qa|grep java

(3)如果安装的版本低于1.7,卸载该jdk:
		rpm –e 软件包
(4)上传jdk和hadoop编译后的安装包到software文件夹下。并解压到module文件夹。
(5)安装jdk
		获取jdk的安装路径
			[root@Aslave101jdk1.7.0_67]# pwd
			/opt/module/jdk1.7.0_79     
		配置环境变量:
			[root@Aslave101jdk1.7.0_79]# vi /etc/profile
		在profie文件末尾添加jdk路径:
			##JAVA_HOME
			export JAVA_HOME=/opt/module/jdk1.7.0_79
			export PATH=$PATH:$JAVA_HOME/bin
		使文件生效
			[root@Aslave101 jdk1.7.0_79]# source  /etc/profile
		测试jdk是否安装成功
			[root@hadoop101 jdk1.7.0_79]# java -version
				 java version "1.7.0_79"
(6)安装hadoop
	修改hadoop-env.sh文件中JAVA_HOME 路径:
		export JAVA_HOME=/opt/module/jdk1.7.0_79
	获取hadoop安装路径:
		[root@ Aslave101 hadoop-2.7.2]# pwd /opt/module/hadoop-2.7.2
	打开/etc/profile文件:
		添加:
			##HADOOP_HOME
			export HADOOP_HOME=/opt/module/hadoop-2.7.2
			export PATH=$PATH:$HADOOP_HOME/bin
			export PATH=$PATH:$HADOOP_HOME/sbin  
		让文件生效:
			[root@ hadoop101 hadoop-2.7.2]# source /etc/profile

4.配置完全分布式集群

(1)集群部署规划

项目Aslave101Aslave102Aslave103
HDFSNameNodeSecondaryNameNode
datanodedatanode
ResourceManager&NodeManagerNodeManager

(2)配置文件
在这里插入图片描述
core-site.xml

<!-- 指定HDFS中NameNode的地址 -->
<property>
  <name>fs.defaultFS</name>
       	<value>hdfs://Aslave101:8020</value>
 </property>
 <!-- 指定hadoop运行时产生文件的存储目录 -->
 <property>
 	 <name>hadoop.tmp.dir</name>
	 <value>/opt/module/hadoop-2.7.2/data/tmp</value>
 </property>
 

hadoop-env.sh

export JAVA_HOME=/opt/module/jdk1.7.0_79

hdfs-site.xml定义副本数和secondaryNamenode的位置

<configuration> 
 <property>
  <name>dfs.replication</name>
  <value>3</value>
 </property>
 <property> <name>dfs.namenode.secondary.http-address</name>    
 <value>Aslave103:50090</value>
    </property>
</configuration>

slaves

Aslave102
Aslave103
Aslave104

yarn-env.sh

export JAVA_HOME=/opt/module/jdk1.7.0_79

yarn-site.xml

<configuration>
<!-- Site specific YARN configuration properties -->
<!-- reducer获取数据的方式 -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
 
<!-- 指定YARN的ResourceManager的地址 --> 
    <property>
	  <name>yarn.resourcemanager.hostname</name>
	  <value>Aslave102</value>
    </property>
</configuration>

mapred-env.sh

export JAVA_HOME=/opt/module/jdk1.7.0_79

mapred-site.xml

<configuration>
<!-- 指定mr运行在yarn上 -->
	 <property>
		  <name>mapreduce.framework.name</name>
		  <value>yarn</value>
	 </property>
 </configuration>

(3)克隆虚拟机
修改mac 地址,ip,hostname。即可。(见第2节)

5.配置ssh免密登录

(1)进入到我的home目录

cd  ~/.ssh

(2)生成公钥和私钥:

ssh-keygen -t rsa 
然后敲(三个回车),就会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)

(3)将公钥拷贝到要免密登录的目标机器上

ssh-copy-id 192.168.1.102

注意:主机和自己也要拷贝。Aslave101和Aslave102都需要向其他集群拷贝。

6.启动Hadoop集群

在Aslave101 节点

$HADOOP_HOME/sbin/start-dfs.sh

在Aslave102

$HADOOP_HOME/sbin/start-yarn.sh

jps查看启动状况

hdfs状态
 http://Aslave101:50090
 资源管理
 http://Aslave102:8088
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值