Hadoop安装与集群配置

环境准备

  • 主机服务器 CentOS 7.x X3
  • Hadoop 7.2
  • JDK 1.8
环境准备
  • 主机
    teacher1 192.168.52.133
    teacher2 192.168.52.135
    teacher3 192.168.52.136

  • 集群部署规划

节点teacher1teacher2teacher3
HDFSNameNode,DataNodeDataNodeDataNode,secondarynamenode
YARNNodeManagerResourceManager,NodeManagerNodeManager
  • host 配置
    分别对三台主机进行host配置 vim /etc/hosts
    • teacher1
    192.168.52.133 teacher1
    192.168.52.135 teacher2
    192.168.52.136 teacher3
    
    • teacher2
     192.168.52.133 teacher1
     192.168.52.135 teacher2
     192.168.52.136 teacher3
    
    • teacher3
     192.168.52.133 teacher1
     192.168.52.135 teacher2
     192.168.52.136 teacher3
    
  • SSH互通设置
    ssh-keygen -t  rsa
    ssh-copy-id -i ~/.ssh/id_rsa.pub root@teacher1 
    ssh-copy-id -i ~/.ssh/id_rsa.pub root@teacher2 
    ssh-copy-id -i ~/.ssh/id_rsa.pub root@teacher3
    
JDK 卸载安装
  • centos安装后,默认会自带openjdk 这里我们使用卸载自带的,安装自己的 1.8版本。
  • 查看系统自带jdk
    命令 rpm -qa | grep Java
  • 删除 rpm -e --nodeps
    rpm -e --nodeps java-1.7.0-openjdk-1.7.0.221-2.6.18.1.el7.x86_64
    rpm -e --nodeps java-1.8.0-openjdk-1.8.0.222.b03-1.el7.x86_64
    rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.222.b03-1.el7.x86_64
    rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.221-2.6.18.1.el7.x86_64
    
  • 安装自己的jdk 这里不介绍。
hadoop安装
  • 下载
    下载地址: https://archive.apache.org/dist/hadoop/common/hadoop-2.7.2/
  • 解压
    在teacher1解压,解压路径/opt/hadoop
  • 环境配置
    分别配置三台主机的hadoop环境
    export HADOOP_HOME=/opt/hadoop/hadoop-2.7.2
    export PATH=$PATH:$HADOOP_HOME/bin
    
    source /etc/profile
    验证 hadoop version
集群环境配置

在这里插入图片描述

hadoop配置文件在解压路径的 etc下 /opt/hadoop/hadoop-2.7.2/etc/hadoop

  • 配置hadoop运行环境
    vim hadoop-env.sh 找到JAVA_HOME 配置 更新为自己的JDK安装路径
    这里可以还可以通过 echo $JAVE_HOME$ javahome环境配置路径
    export JAVA_HOME=/opt/jdk/jdk1.8.0_191

  • 核心配置文件:core-site.xml(hdfs的核心配置文件)

<!-- 指定HDFS中NameNode的地址 -->
<property>
  <name>fs.defaultFS</name>
  <value>hdfs://teacher1:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
 <name>hadoop.tmp.dir</name>
 <value>/opt/hadoop/hadoop-2.7.2/data/tmp</value>
</property>
  • hdfs配置文件 hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!--secondarynamenode的地址--> 辅助namenode工作
<property>
  <name>dfs.namenode.secondary.http-address</name>
<value>teacher3:50090</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/opt/data/hadoop/name/</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/opt/data/hadoop/data/</value>
</property>
  • yarn配置文件 yarn-site.xml
 <property>
  <name>yarn.nodemanager.aux-services</name>
  <value>mapreduce_shuffle</value>
 </property>
<!-- 指定YARN的ResourceManager的地址 -->
<property>
  <name>yarn.resourcemanager.hostname</name>
  <value>teacher2</value>
</property>
<property>
  <name>yarn.nodemanager.resource.memory-mb</name>
  <value>3072</value>
</property>
  • mapreduce配置文件
    首先复制 [root@teacher1 hadoop]# cp mapred-site.xml.template mapred-site.xml
<!-- 指定mr运行在yarn上 -->
<property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
</property>
  • 配置集群中从节点信息
teacher1
teacher2
teacher3
  • 分发文件
    将teacher1中hadoop目录下的软件拷贝到其他机器,前提是前面的免密认证已经配置完成
scp -r hadoop-2.7.2 teacher1:/opt/hadoop/
scp -r hadoop-2.7.2 teacher2:/opt/hadoop/
集群启动
  • 如果果集群是第一次启动,需要格式化NameNode(格式化只进行一次)
    命令 hadoop namenode -format

    • 1.各个服务组件逐一启动/停止(集群某个进程挂掉使用这种方式重启 )
      (1)分别启动/停止hdfs组件
    hadoop-daemon.sh  start|stop  namenode|datanode|secondarynamenode     
    
    • 2)启动/停止yarn.
    yarn-daemon.sh start|stop resourcemanager|nodemanager
    
  • 2、分模块启动,集群启动方式
    各个模块分开启动/停止(配置ssh是前提)常用

     (1)整体启动/停止hdfs(在namenode节点启动) start-dfs.sh
     stop-dfs.sh
    (2)整体启动/停止yarn (在resourcemanager节点启动)
      start-yarn.sh
      stop-yarn.sh
    
集群测试

Yarn的web页面查看地址:http://192.168.52.135:8088/
在这里插入图片描述

web端查看SecondaryNameNode http://192.168.52.136:50090/status.html
在这里插入图片描述
这里我配置的host是在虚拟机配置的,宿主机直接ip访问了,当然也可以配置和虚拟机一样的hosts,通过host访问。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值