系统环境:CentOS 7

JDK版本:jdk-8u191-linux-x64

MYSQL版本:5.7.26

Hadoop版本:2.9.0

Hive版本:2.3.4

Host Name Ip User/Pass
Namenode 192.168.2.3 root/root.
Datanode1 192.168.2.5 root/root.
Datanode2 192.168.2.6 root/root.

安装JDK:

https://www.cnblogs.com/java-h/p/11127259.html

安装MYSQL

https://www.cnblogs.com/java-h/p/11127636.html

 

1、配置服务器环境

1、进入root : su root 
2、关闭防火墙:systemctl stop firewalld 3、关闭防火墙开机自启:systemctl disable firewalld.service 4、查看防火墙状:firewall-cmd –state 5、修改每台机的hosts:vim /etc/hosts 192.168.2.3 namenode 192.168.2.5 datanode1 192.168.2.6 datanode2

2、配置SSH免密登录

1、在Namenode 上生成密钥对:ssh-keygen -t rsa

2、在从机上创建.ssh文件夹:mkdir .ssh

3、将公钥复制到从机(Datanode1、Datanode2)上:

  scp ~/.ssh/id_rsa.pub root@192.168.2.6:~/.ssh/

  scp ~/.ssh/id_rsa.pub root@192.168.2.5:~/.ssh/

4、登录从机,进入目录:cd /home/hadoop/

5、将公钥放到.ssh中的authorized_keys:

  cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

6、测试:

在主机namenode上登陆从机datanode1 
ssh datanode1
ssh datanode2
ssh namenode
如果能切换到对应的机器则表示成功。
注意:
1、在切换到datanode1 后,如果需要测试登陆datanode2的话,需要先返回到master,用命令exit。
2、配置SSH时除了子节点主节点自己也要给自己配置SSH免密。

3、配置Hadoop集群

1、创建存放Hadoop的文件夹:mkdir /home/bigdata
2、进入新建的文件夹:cd /home/bigdata
3、解压hadoop和建立文件:tar -zxvf hadoop-2.9.0.tar.gz
4、重命名:mv hadoop-2.9.0 hadoop
5、创建hdfs相关文件(三台机子都需要操作)
mkdir /home/data
mkdir /home/data/tmp
mkdir /home/data/dfs
7、创建dfs系统使用的dfs系统名称hdfs-site.xml使用:
mkdir /home/data/dfs/name
8、创建dfs系统使用的数据文件hdfs-site.xml文件使用:
mkdir /home/data/dfs/data
7、配置环境变量(三台机子都需要操作)
root用户下:vim /etc/profile
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/rt.jar:$JRE_HOME/lib
export HADOOP_HOME=/home/bigdata/hadoop
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME:$PATH
保存退出后:source /etc/profile

4、配置Hadoop集群配置文件

进入Hadoop的配置文件存放的地方:cd /home/bigdata/hadoop/etc/hadoop

(1)修改 core-site.xml 文件,在configuration添加配置

<configuration>

  <property>

  <name>fs.defaultFS</name>

  <value>hdfs://namenode:9000</value>

  </property>

  <property>

   <name>io.file.buffer.size</name>

  <value>131072</value>

  </property>

  <property>

  <name>hadoop.tmp.dir</name>

  <value>file:/home/bigdata/hadoopdir/tmp/</value>

  <description>A base for other temporary directories.</description>

  </property>

</configuration>

(2)修改hdfs-site.xml文件

<configuration>

<property>

<name>dfs.namenode.name.dir</name>

<value>/home/data/dfs/name</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>/home/data/dfs/data</value>

</property>

</configuration>

(3)修改mapred-site.xml.template 文件

<configuration>

  <property>
    <name>mapreduce.framework.name</name>

    <value>yarn</value>

  </property>

  <property>

    <name>mapreduce.jobhistory.address</name>

    <value>master:10020</value>

  </property>

  <property>

    <name>mapreduce.jobhistory.webapp.address</name>

    <value>master:19888</value>

  </property>

  <property>

    <name>mapreduce.jobtracker.http.address</name>

    <value>master:50030</value>

 </property>
  <property>

    <name>mapred.job.tracker</name>
    <value>master:9001</value>

  </property>

</configuration>

(4)修改 yarn-site.xml文件

<configuration>

<!-- Site specific YARN configuration properties -->
<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>
     <property>
<name>yarn.resourcemanager.hostname</name>
<value>namenode</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>namenode:8032</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>namenode:8030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>namenode:8031</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>namenode:8033</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>namenode:8088</value>
</property>
</configuration>

(5)修改slave文件

在文件中注释掉localhost

并添加节点名称: 
        namenode    
        datanode1
    datanode2

5、搭建集群


1、格式hadoop文件:hadoop  namenode -format

2、发送dfs内容给Slave1:scp  -r /home/data/dfs/*  datanode1:/home/bigadata/hadoopdir/dfs

3、发给dfs内容给Slave2:scp  -r /home/data/dfs/*  datanode2:/home/bigadata/hadoopdir/dfs

4、发送hadoop文件给数据节点:scp -r /home/bigadata/hadoop/*  datanode1:/home/bigadata/hadoop/ 
                       scp -r /home/bigadata/hadoop/*  datanode2:/home/bigadata/hadoop/ 

5、启动集群

进入sbin:cd /home/bigdata/hadoop/sbin
启动Hadoop:./start-all.sh 使用jps 命令查看启动情况(没有这个命令的需要安装 yum install jps*)

登录网页查看:http://Master:50070  (查看live node)    查看yarn环境(http://Master/8088)

遇到的问题:

、namenode: Error: JAVA_HOME is not set and could not be found.

解决方案:进入 vim /home/bigdata/hadoop/etc/hadoop/hadoop-env.sh

把JAVA_HOME修改为:

export JAVA_HOME=/home/bigdata/jdk

如有不懂,可添加QQ问我,一起交流,一起进步:1162492808

在CentOS7下搭建Hadoop2.9.0集群的更多相关文章

  1. centos7 下搭建hadoop2.9 分布式集群

    首先说明,本文记录的是博主搭建的3节点的完全分布式hadoop集群的过程,环境是centos 7,1个nameNode,2个dataNode,如下: 1.首先,创建好3个Centos7的虚拟机,具体的 ...

  2. CentOS6.4上搭建hadoop-2.4.0集群

    公司Commerce Cloud平台上提供申请主机的服务.昨天试了下,申请了3台机器,搭了个hadoop环境.以下是机器的一些配置: emi-centos-6.4-x86_64medium | 6GB ...

  3. ubuntu14.04搭建Hadoop2.9.0集群(分布式)环境

    本文进行操作的虚拟机是在伪分布式配置的基础上进行的,具体配置本文不再赘述,请参考本人博文:ubuntu14.04搭建Hadoop2.9.0伪分布式环境 本文主要参考 给力星的博文——Hadoop集群安 ...

  4. CentOS7搭建Hadoop2.8.0集群及基础操作与测试

    环境说明 示例环境 主机名 IP 角色 系统版本 数据目录 Hadoop版本 master 192.168.174.200 nameNode CentOS Linux release 7.4.1708 ...

  5. CentOS7.5搭建Solr7.4.0集群服务

    一.Solr集群概念 solr单机版搭建参考: https://www.cnblogs.com/frankdeng/p/9615253.html 1.概念 SolrCloud(solr 云)是Solr ...

  6. 第八章 搭建hadoop2.2.0集群,Zookeeper集群和hbase-0.98.0-hadoop2-bin.tar.gz集群

    安装配置jdk,SSH 一.首先,先搭建三台小集群,虚拟机的话,创建三个 下面为这三台机器分别分配IP地址及相应的角色:集群有个特点,三台机子用户名最好一致,要不你就创建一个组,把这些用户放到组里面去 ...

  7. 搭建hadoop2.6.0集群环境

    一.规划 (一)硬件资源 10.171.29.191 master 10.171.94.155  slave1 10.251.0.197 slave3 (二)基本资料 用户:  jediael 目录: ...

  8. 搭建hadoop2.6.0集群环境 分类: A1_HADOOP 2015-04-20 07:21 459人阅读 评论(0) 收藏

    一.规划 (一)硬件资源 10.171.29.191 master 10.171.94.155  slave1 10.251.0.197 slave3 (二)基本资料 用户:  jediael 目录: ...

  9. Linux基于Hadoop2.8.0集群安装配置Hive2.1.1及基础操作

    前言 安装Apache Hive前提是要先安装hadoop集群,并且hive只需要在hadoop的namenode节点集群里安装即可,安装前需保证Hadoop已启(动文中用到了hadoop的hdfs命 ...

随机推荐

  1. C 语言main 函数终极探秘(&& 的含义是:如果 && 前面的程序正常退出,则继续执行 && 后面的程序,否则不执行)

           所有的C程序必须定义一个称之为main的外部函数,这个函数是程序的入口,也就是当程序启动时所执行的第一个函数,当这个函数返回时,程序也将终止,并且这个函数的返回值被看成是程序成功或失败的 ...

  2. MVC基架生成的Detele视图

    @model MyMusicStore.Models.Album @{     ViewBag.Title = "Delete"; } <h2>Delete</h ...

  3. MVC EF 导航属性

    @model IQueryable<EFExam.Models.CategoryProductViewModel>@{    Layout = null;}<!DOCTYPE htm ...

  4. Android之运行时相机权限和联系人权限获取

    原文:Android之运行时相机权限和联系人权限获取 本文链接:http://blog.csdn.net/qq_16628781/article/details/61623502 Android之运行 ...

  5. 【Gerrit】自动设置reviewer

    gerrit 提供了一种代码review解决方案,但每次代码提交之后都要设置每个commit的code reviewer, 实在是痛苦. gerrit 在官方说明文档里面提供了解决方法,地址:http ...

  6. oracle 12c连接pdb

    12c中,如何连接pluggable database: 使用默认的service连接pdb,创建pdb之后,在监听中自动添加以pdb为名的service: 用户在cluster中创建service, ...

  7. 推荐一些C#相关的网站、资源和书籍 (转载自http://blog.csdn.net/chinacsharper/article/details/17514923)

    一.网站 1.http://msdn.microsoft.com/zh-CN/ 微软的官方网站,C#程序员必去的地方.那里有API开发文档,还有各种代码.资源下载. 2.http://social.m ...

  8. IT职场初体验一

    自己学习计算机专业也算有两个年头了吧,对于这个刚刚IT入门的菜鸟,对IT职场充满了好奇和憧憬,本人大学也像很多大学生一样,进入计算机专业也不是自己最初想进入的专业,进入这个原本离自己有点遥远的行业,一 ...

  9. SYN591-B型 转速表

       SYN591-B型 转速表 光电转速表数显转速表智能转速表使用说明视频链接: http://www.syn029.com/h-pd-249-0_310_44_-1.html 请将此链接复制到浏览 ...

  10. 使用spring容器干掉if-else

    spring容器干掉if-else 场景说明 最近新做一个项目,需要对不同店铺的商品做不同处理.例如storeA需要进行handleA操作,storeB需要进行handleB操作,如此类推 大家很容易 ...