VMware中建立的linux系统中安装hadoop

1、hadoop的安装

hadoop安装的三种形式:java

  1. 单机模式
  2. 伪分布式
  3. 基于yarn的彻底分布式模式

安装前的准备:
一个纯净版的centos7 虚拟机,配置好静态ip,主机名,主机映射node

配置静态ip:vi /etc/sysconfig/network-scripts/ifcfg-ens33
配置完成后从新启动network:systemctl restart network
修改主机名:vi /etc/hostname
使主机名当即生效(若是不行能够重启虚拟机):hostnamectl
配置主机映射: vi /etc/hosts
在家目录下建立software文件夹,用于放软件压缩包。
中止防火墙,而且设置防火墙开机禁止启动web

systemctl stop firewalld   ---关闭防火墙
systemctl disable firewalld   ---禁止防火墙开机启动

生成秘钥:ssh-keygen -t rsa -P ""
将秘钥变成公钥:cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keysapache

安装前软件要求:
安装好jdk,我这里选择的是jdk1.8版本。安装好jdk,配置好JDK环境变量。centos

2、开始安装hadoop

解压配置hadoop安装包bash

  1. 将hadoop安装包以及hadoop-native安装包放入原先建立的software文件夹中。(直接拖入便可)
    安装包下载连接:
    连接:hadoop、hbase、hive安装包
    提取码:ay31
  2. 解压hadoop安装包到opt目录下tar -zxvf hadoop-2.6.0-cdh5.14.2.tar.gz -C /opt
  3. 进入/opt目录中将hadoop更名:mv hadoop-2.6.0-cdh5.14.2/ hadoop
    (注:更名为了与后面环境变量相匹配,也能够选择不改,那后面的配置文件,就要相应变化,与本文不符,本身去改)
  4. 分别解压hadoop-native到更名后的hadoop文件夹中lib文件夹中和lib文件夹中的native文件。
tar -xvf hadoop-native-64-2.6.0.tar -C /opt/hadoop/lib   ---解压到hadoop中的lib文件夹中
tar -xvf hadoop-native-64-2.6.0.tar -C /opt/hadoop/lib/native  ---解压到hadoop中的lib中的native文件夹中

配置hadoop的配置文件app

  1. 进入hadoop配置文件目录cd /opt/hadoop/etc/hadoop
  2. 打开hadoop-env.sh文件vi hadoop-env.sh
# The java implementation to use.
<--在查看状态下输入25gg找到相应位置-->
export JAVA_HOME=/opt/jdk_1.8.0_221
  1. 打开core-site.xml文件vi core-site.xml
<configuration>
<!-- 默认节点(本身主机的ip)端口,端口默认为9000 -->
<property>
  <name>fs.defaultFS</name>
  <value>hdfs://192.168.222.101:9000</value>
</property>
<!-- hdfs的临时文件的目录,临时目录这里取得是hdfsTmp,名字能够本身去,记住就好  -->
<property>
   <name>hadoop.tmp.dir</name>
   <value>/opt/hadoop/hdfsTmp</value>
</property>
<!-- 其余机器的root用户可访问 -->
<property>
   <name>hadoop.proxyuser.root.hosts</name>
   <value>*</value>
</property>
<!-- 其余root组下的用户均可以访问 -->
<property>
 	<name>hadoop.proxyuser.root.groups</name>
   	<value>*</value>
</property>
</configuration>
  1. 打开hdfs-site.xml文件vi hdfs-site.xml
<configuration>
<!-- 设置数据块应该被复制的份数(和集群机器数量相等,因为只建立了一台虚拟机,因此这里是1) -->
<property>
  <name>dfs.replication</name>
  <value>1</value>
</property>
<!-- 用来帮助NameNode将内存中的元数据信息checkpoint到硬盘上  -->
<property>
  <name>dfs.namenode.secondary.http-address</name>
  <value>hadoop101:50090</value>
</property>
</configuration>
  1. 配置mapred-site.xml文件,因为没有此文件,能够选择新建或者复制mapred-site.xml.template文件到mapred-site.xml中,而后进行操做cp mapred-site.xml.template mapred-site.xml
    复制的时候自动会建立mapred-site.xml文件。
<configuration>
<!-- mapreduce的工做模式:yarn -->
<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
</property>
<!-- mapreduce的工做地址,若是配集群能够改为别的ip地址,在别的机器上工做 -->
<property>
        <name>mapreduce.jobhistory.address</name>
        <value>192.168.56.101:10020</value>
</property>
<!-- web页面访问历史服务端口的配置 -->
<property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>192.168.56.101:19888</value>
</property>
</configuration>
  1. 打开yarn-site.xml文件,配置yarnvi yarn-site.xml
<configuration>
<!-- reducer获取数据方式 -->
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>
<property>
    <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<!-- 指定YARN的ResourceManager的地址 -->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop101</value>
</property>
<!-- 日志汇集功能使用 -->
<property>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
</property>
<!-- 日志保留时间设置7天 -->
<property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>604800</value>
</property>
</configuration>
  1. 打开slaves文件,配置slaves文件:vi slaves
    把本身的主机名写进去hadoop101,保存退出
    slaves介绍:slaves文件是只对namenode节点有做用,是帮助namenode节点识别datanode节点位置的一个文件。

配置环境变量vi /etc/profile
按shift+g跳到最后一行,按o在下一行写入ssh

export HADOOP_HOME=/opt/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

保存退出以后,别忘记source /etc/profile
验证是否成功hadoop versionwebapp

格式化HDFS:hadoop namenode -format分布式

启动hadoop:start-all.sh

启动历史服务:mr-jobhistory-daemon.sh start historyserver

启动成功后输入:jps
在这里插入图片描述
出现上图所示,表示hadoop正确安装并启动


3、访问相应的网页

访问Hadoop: http://192.168.222.101:50070
在这里插入图片描述
访问YARN的管理界面:http://192.168.222.101:8088
在这里插入图片描述
访问历史服务:http://192.168.222.101:19888/
在这里插入图片描述