搭建hadoop-完全分布式模式:版本2.7.2

搭建简单的Hadoop完全分布式模式

笔记

markdown笔记

分析

  1. 最少准备多台客户机(Zookeeper至少需要三台)
  2. 安装jdk
  3. 安装Hadoop
  4. 配置环境变量
  5. 单点启动
  6. 配置ssh
  7. 群起并测试集群

首先设置集群规划

hadoop100hadoop101hadoop102
HDFSNameNode,DataNodeDataNodeSecondaryNameNode,DataNode
YARNNodeManagerResourcemanager,NodemanagerNodemanager

虚拟机准备

注 : 我用的centos7,系统通过关闭firewalld,但是主机还是不能访问虚拟机的端口,端口还是默认关闭的,需要注意下
注: centos7 系统,如果你的系统在某一天hostname,变成了初始化,然后发现配置文件,没有变化,使用命令形式 hostname set-hostname name 来重新设定

设置静态ip与主机名,设置用户为超级用户

注:如果使用Vmare,克隆,注意分配给虚拟机的网卡地址是一样的,自己需要重新生成

  1. /etc/sysconfig/network-scripts/ifcfg-ens32 设置静态ip

  2. vim /etc/sysconfig/network(改变主机名),NETWORKING=yes,HOSTNAME=hadoop10*

  3. vim /etc/hosts (设置对应IP地址的主机名)

  4. 达到要求:

    1. 各个主机,能够ping通
    2. 主机与各个虚拟机,能够ping通
  5. 如果图方便,可以在主机的hosts ,里面可以写入例:
    192.168.11.100 hadoop100

  6. 新建用户

    1. useradd lan
    2. vim /etc/sudoers 在root下面,添加一样格式的lan

配置java环境

  1. 解压java在一个文件夹下(我的是/opt/module)
  2. 配置环境
    vim /etc/profile
    ##JAVA_HOME
    export JAVA_HOME=/opt/module/jdk1.8.0_144
    export PATH=$PATH:$JAVA_HOME/bin
    
    source /etc/profile 更新文件配置
    

hadoop

安装

  1. 解压在一个文件夹下
  2. 配置环境
    ## HADOOP_HOME
    export HADOOP_HOME=/opt/module/hadoop-2.7.2
    export PATH=$PATH:$HADOOP_HOME/bin
    export PATH=$PATH:$HADOOP_HOME/sbin
    
    记得source 下
    
  3. 目录说明
    1. bin目录:存放对Hadoop相关服务(HDFS,YARN)进行操作的脚本
    2. etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件
    3. lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)
    4. sbin目录:存放启动或停止Hadoop相关服务的脚本
    5. share目录:存放Hadoop的依赖jar包、文档、和官方案例

配置集群

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

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


HDFS 配置文件
  1. hadoop-env.sh 配置
    hadoop100 配置
    vi hadoop-env.sh
    export JAVA_HOME=/opt/module/jdk1.8.0_144
    
    
  2. hdfs-site.xml
    <property>
    	<name>dfs.replication</name>
    	<value>3</value>
    </property>
    
    <!-- 指定Hadoop辅助名称节点主机配置 -->
    <property>
    	  <name>dfs.namenode.secondary.http-address</name>
    	  <value>hadoop102:50090</value>
    </property>
    
    
YARN 配置文件
  1. yarn-env.sh
    vi yarn-env.sh
     export JAVA_HOME=/opt/module/jdk1.8.0_144
    
  2. 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>hadoop101</value>
    </property>
    
MapReduce 配置文件
  1. mapre-env.sh
     vi mapred-env.sh
    export JAVA_HOME=/opt/module/jdk1.8.0_144
    
  2. mapre-site.xml
     cp mapred-site.xml.template mapred-site.xml
     vi mapred-site.xml
     
     添加配置
     <!-- 指定MR运行在Yarn上 -->
     <property>
     		<name>mapreduce.framework.name</name>
     		<value>yarn</value>
     </property>
     
    
这是一台主机的配置,其他另外两台要一摸一样

配置群起集群

1. 配置slaves
/opt/module/hadoop-2.7.2/etc/hadoop/slaves

 vi slaves
hadoop102
hadoop103
hadoop104
注意:该文件中添加的内容结尾不允许有空格,文件中不允许有空行。

然后同步所有结点配置文件

2. 启动集群
  1. 如果集群第一次启动,需要格式化namenode
    bin/hdfs namenode -format

  2. 启动HDFS ;
    sbin/start-dfs.sh

  3. 启动yarn
    sbin/start-yarn.sh
    注意::namenode和resourcemanger如果不是同一台机器,不能在namenode上启动yarn,应该在Resourcemanager所在的机器上启动yarn

测试是否启动成功
  1. web查看 ,例子URL
  2. http://hadoop100:50070/
  3. hadoop102:50090

集群启动/停止方式

组件分别启动停止
  1. 分别启动-停止HDFS组件

    hadoop-daemon.sh start/stop namenode/datanode/secondarynamnode
    
    
  2. 启动停止YARN

    yarn-daemon.sh start/stop resourcemanager/nodemnaager			
    
整体启动

各个模块分开启动停止(ssh配置是前提

  1. 整体启动停止HDFS

    start-dfs。sh/ stop-dfs.sh

  2. 整体启动停止yarn

    start-yarn.sh / stop-yarn.sh

需要注意

== 集群需要时间同步服务器==
因为Zookeeper 如果时间 相差太大的话,会启动失败
如果出现一些问题,参考博客
参考:http://www.cnblogs.com/zlslch/p/6604189.html

后面的内容配置,会逐渐写出来!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值